Необхідно знати SSH-команди для ефективного віддаленого керування

Secure Shell (SSH) є важливим інструментом для безпечного доступу до віддалених серверів і керування ними. Незалежно від того, чи ви системний адміністратор, розробник чи технічний ентузіаст, опанування команд SSH може значно покращити ваш робочий процес. У цій статті розповідається про команди SSH, які повинен знати кожен користувач.

Що таке SSH?

SSH або Secure Shell — це протокол, який дозволяє користувачам безпечно підключатися до віддаленого комп’ютера через незахищену мережу. Він забезпечує зашифрований зв’язок і різні методи автентифікації, що робить його основним інструментом для віддаленого керування.

Основні команди SSH

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

Основний синтаксис підключення до віддаленого сервера:

ssh ім'я користувача@ім'я хоста

Замініть ім’я користувача на ваш обліковий запис віддаленого користувача, а ім’я хоста на адресу сервера (IP або домен).

2. Вказівка ​​порту

Якщо ваш сервер SSH слухає порт, відмінний від стандартного 22, ви можете вказати його за допомогою опції -p:

ssh -p номер_порту ім'я користувача@ім'я хоста

3. Копіювання файлів за допомогою SCP

Протокол безпечного копіювання (SCP) використовується для безпечної передачі файлів між локальним і віддаленим хостами. Основний синтаксис для копіювання файлу з локальної машини на віддалений сервер:

scp локальний_файл ім'я користувача@ім'я хоста:/віддалений/каталог/

Щоб скопіювати файл із віддаленого сервера на локальну машину:

scp ім'я користувача@ім'я хоста:/віддалений/файл локальний_каталог/

4. Запуск віддалених команд

Ви можете виконувати команди на віддаленому сервері без інтерактивного входу:

ssh ім'я користувача@ім'я хоста 'command'

Наприклад, щоб перевірити використання диска на віддаленому сервері:

ssh ім'я користувача@ім'я хоста 'df -h'

5. Використання ключів SSH для автентифікації

Ключі SSH забезпечують більш безпечний спосіб входу на віддалений сервер, ніж використання паролів. Згенеруйте пару ключів за допомогою:

ssh-keygen

Потім скопіюйте відкритий ключ на віддалений сервер:

ssh-copy-id ім'я користувача@ім'я хоста

6. Тунелювання за допомогою SSH

Тунелювання SSH дозволяє створити безпечне з’єднання між вашим локальним комп’ютером і віддаленим сервером, яке можна використовувати для доступу до служб у віддаленій мережі. Наприклад, щоб перенаправити локальний порт на віддалений:

ssh -L локальний_порт:віддалений_хост:віддалений_порт ім'я_користувача@ім'я_хоста

Ця команда перенаправляє local_port на вашій машині на remote_port на remote_host через з’єднання SSH.

7. Файл конфігурації SSH

Конфігураційний файл SSH дозволяє зберігати часто використовувані параметри підключення SSH. Зазвичай він знаходиться за адресою ~/.ssh/config. Зразок запису конфігурації може виглядати так:

Host alias
    HostName hostname
    User username
    Port port_number
    IdentityFile ~/.ssh/id_rsa

Після налаштування ви можете підключитися за псевдонімом:

псевдонім ssh

8. Фонові сесії SSH

Ви можете запускати сесії SSH у фоновому режимі за допомогою параметра -f, який корисний для запуску фонових процесів:

ssh -f ім'я користувача@ім'я хоста 'command'

Щоб виконати команду у фоновому режимі:

ssh -f ім'я користувача@ім'я хоста 'command &'

9. Перевірка версії SSH

Щоб перевірити версію SSH, встановлену у вашій системі:

ssh -V

10. Закриття сеансу SSH

Щоб вийти із сеансу SSH, просто введіть:

вихід

Висновок

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