Як використовувати SSH (команди ssh & rsync)?


44

Як я можу SSH з віддаленим сервером, щоб я міг переглядати файли та редагувати їх? У мене є ім’я користувача та пароль.

Відповіді:


49

SSH постачається за замовчуванням у всіх версіях Ubuntu, тому ви заощаджуєте при необхідності його встановлення (+1 за наявність його вже там;

За винятком випадків, коли ви хочете SSH-сервер для вашого сервера Ubuntu. У такому випадку ви б

sudo apt-get install openssh-server 

який повинен зробити ваш комп'ютер / сервер готовим стати ssh-сервером.

Користуватися ним досить просто:

ssh USER@SITEНаприклад, якщо моє ім’я користувача cyrex, а сайт ubuntu.com, ви зробите це:

ssh cyrex@ubuntu.com

Тепер давайте скажемо, що ви хочете скопіювати файл, викликаний bubblegum.txtзі свого комп’ютера, на ваш сайт ubuntu і хочете залишити цей файл у /var/wwwпапці на сайті ubuntu. ви можете це зробити (якщо припустити, що у користувача достатньо дозволів на сайті ubuntu), використовуючи SSH Brother, SCP (Що також за замовчуванням в Ubuntu):

scp bubblegum.txt cyrex@ubuntu.com:/var/www 

Зауважте, що :між користувачем @ SITE і папкою, в яку ви хочете скопіювати його. Саме той розділяє обидва елементи.

Тепер скажемо, що ви завантажуєте величезний файл з scp, і тоді найгірше трапляється, світ вибухає. Як можна продовжувати завантажувати цей файл на сервер. Тоді у вас є старший брат SCP, rsync (приходить за замовчуванням в Ubuntu). Багато в чому scp та rsync роблять те саме, але ось деякі великі відмінності між ними:

  • rsync може завантажувати часткові файли, що залишилися від rsync або scp після відключення чи світового домінування.
  • rsync може показати прогрес набагато краще, ніж scp
  • rsync може оптимізувати завантаження таким чином, що ви можете фактично економити секунди або хвилини на завантаженні. Він також показує в кінці завантаження, скільки ви зберегли.

У будь-якому випадку, у випадку, якщо scp не зміг завантажити весь файл, тут на допомогу приходить rsync. (Дякую Марко Цеппі за пораду. Проголосуйте за його коментар, якщо вам подобаються коти .. та / або собаки)

Скажімо, ви згадали вище про завантаження з scp, і він досяг 60%. Як можна продовжувати ці 60%, не втрачаючи часу на завантаження. Ви зробите це:

rsync --progress --partial bubblegum.txt cyrex@ubuntu.com:/var/www  

Це говорить rsync показувати прогрес у приємному для людини читанні способі з --progressпрапором. Він також повідомляє rsync перевірити та продовжити з того місця, де потрапив файл bubblegum.txt із --partialпрапором. Ви також можете спростити суму для запису з параметром -P, який такий же, як --progress та --partial, так що вище буде виглядати так:

rsync -P bubblegum.txt cyrex@ubuntu.com:/var/www  

Ви можете навіть CTRLпоставити + Cдодавання та відновити його, виконавши команду з rsync вгорі. Дуже круто, щоб мати можливість відновити щось у будь-який час у будь-яку кількість разів.

Для отримання додаткової інформації для rsync, яка за замовчуванням поставляється з Ubuntu, ви можете ввести наступні термінальні команди:

man rsync  
info rsync  
rsync --help

Тепер вказати порт для SSH. Щоб вказати його, ви можете зробити так:

ssh cyrex@ubuntu.com -p PORT. Наприклад: ssh cyrex@ubuntu.com -p 1234сказати йому використовувати порт 1234 для служби SSH. Це потрібно спочатку налаштувати на сервері, щоб він працював.

Для його налаштування просто відкрийте на сервері файл ssh_config таким чином: nano /etc/ssh/ssh_configі змініть рядок, який говорить # port 22на інший порт. Також не забудьте видалити коментар із цього рядка. Це повинно виглядати приблизно так: port 1234у випадку для прикладу вище.

Тепер просто перезапустіть службу ssh на сервері, і ви закінчите. Щоб перезапустити послугу, просто зробіть це:

sudo restart ssh

або

sudo /etc/init.d/ssh restart

ПРИМІТКА. Ви також можете використовувати SSH з інструментів GUI, наприклад, filezillaякі пропонують можливість використовувати ssh замість ftp. ssh також можна отримати з меню Ubuntu:

введіть тут опис зображення

який дає доступ до кількох опцій, включаючи спільний доступ до Windows, SSH та FTP :

введіть тут опис зображення

Для отримання додаткової інформації про SSH ви можете використовувати одну з наступних команд у консолі у своєму полі Ubuntu:

man ssh  
info ssh  
ssh --help

На що ви звертаєтесь із вибаченням?
Луїс Альварадо

23

Якщо ви хочете переглядати сервер через Nautilus, як це робиться з файлами на локальній машині:

  1. Відкрити Nautilus ("Домашня папка")
  2. Перейдіть до "Файл" -> "Підключення до сервера"

    Підключення до сервера

  3. Виберіть "SSH" у розділі "Тип послуги"

  4. Помістіть IP-адресу або домен у розділі "Сервер"

    Виберіть SSH

  5. Додайте своє ім’я користувача та встановіть прапорець "Додати закладку", якщо ви хочете, щоб місце збережено у ваших закладках.

Папка повинна відкритися прямо для вас.


На Kubuntu можна зробити те ж саме з Krusader .
Adobe

6

Ви можете використовувати sshfsдля монтажу віддаленого каталогу до локальної файлової системи.

Дивіться https://help.ubuntu.com/community/SSHFS :

Використання командного рядка

Тепер, припускаючи, що у вас SSH-сервер працює на віддаленій машині, просто запустіть команду SSHFS, щоб змонтувати віддалений каталог. У цьому прикладі віддалений каталог знаходиться / проекти на віддаленому хості далеко. Місцева точка монтажу - ~ / far_projects.

mkdir ~/far_projects
sshfs -o idmap=user $USER@far:/projects ~/far_projects

Щоб відключити,

fusermount -u ~/far_projects

Щоб додати його до / etc / fstab,

sshfs#$USER@far:/projects /home/$USER/far_projects fuse defaults,idmap=user 0 0

Зауважте, що вам потрібно змінити $ USER на своє ім’я для входу під час редагування fstab, але це не обов'язково під час введення команд (оболонка робить це вам у цьому випадку).


4

Припустимо, що ssh-сервер вже налаштований, відкрийте термінал і введіть:

ssh username@hostname

Вам буде запропоновано ввести пароль; просто введіть його. Якщо вам потрібен номер порту, додайте -p PORTNUM.


2

Якщо ви можете використовувати Vim, Pico або ін., Ви можете використовувати термінал:

ssh MYUSER@mysite.com

Введіть свій пароль, і ви входите. Звідси це як звичайний термінал, за винятком того, що у вас немає графічного інтерфейсу.

Зверніть увагу, ви можете додати опцію '-X', і якщо на вашому сервері налаштований X-сервер, ви можете запускати програми GUI. Просто введіть їх ім'я, якщо ви додали -X, і він запустить вікно графічного інтерфейсу.

Тепер ви, ймовірно, захочете встановити вхід без пароля. Якщо у вас вже немає ключа, введіть ssh-keygenі просто натисніть клавішу Enter, щоб встановити всі параметри за замовчуванням. Тоді робіть ssh-copy-id MYUSER@mysite.com. Після цього просто введіть ssh MYUSER@mysite.comі не потрібно вводити свій пароль!

Якщо ваше ім’я користувача те саме, що ім’я вашого ноутбука, вам не потрібно MYUSER@. Можна просто зробити ssh mysite.com. Ви також можете використовувати -l MYUSERопцію замістьMYUSER@

Якщо ви хочете GUI, Nautilus може це зробити. Файл ->Підключення до сервера ->[виберіть "SSH", а потім заповніть дані для входу] -> Підключення.

Якщо ви хочете просто скопіювати один файл, скористайтеся scp [захищеною копією].
scp MYUSER@mysite.com:path/to/file.dat ./

Це копіює файл "~ / path / to / file.dat" у ваш поточний каталог. Зауважте, якщо у вас немає косої риски або нахилу після :, вона буде діяти так, як ви є у вашому домашньому каталозі [ ~/]. Якщо ви хочете завантажити, scp ./local_file.dat MYUSER@mysite.com: це помістить його у вашому домашньому режисері.


0

ssh -X -C user@host nautilus --no-desktop перейти в режим gui :)


Місцевий Nautilus може просто підключитися до загальної частки SSH. Не варто запускати Наутілус віддалено. Я насправді не рекомендував би цього робити. Творча пропозиція, але все-таки -1
Жо-Ерленд Шінстад
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.