Новини високих технологій
» » Команди SSH. Опис

Команди SSH. Опис

22-11-2017, 22:36
1 146
Практично кожна система Unix і Linux включає в себе команду ssh. Вона призначена для запуску клієнтської програми, яка забезпечує безпечне з'єднання з SSH-сервером на віддаленій машині. Команда ssh використовується при вході у віддалену машину, для передачі файлів між двома пристроями та виконання команд на віддаленому комп'ютері.

SSH

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

Історія протоколу SSH

Протокол Secure Shell був спочатку розроблений Тату Илоненом в 1995 році у відповідь на інцидент з хакерами у фінській університетської мережі. На сервері, підключеному безпосередньо до магістралі, був встановлений сніффер паролів, і коли він був виявлений, в його базі даних було тисячі імен користувачів і паролів, в тому числі кілька компаній Ylonen.


Цей інцидент спровокував вивчення криптографії та розробку рішення, яке Ілоні міг би використовувати для безпечного входу в Інтернет. Його друзі запропонували додаткові функції, а три місяці тому, у липні 1995 року, Ілоні опублікував першу версію у відкритому джерелі. Це був OpenSSH. Пізніше він прийняв протокол стандартизації в IETF і розробив протокол SSH File Transfer Protocol (SFTP). Сьогодні Тату Ілоні як і раніше працює над темами, пов'язаними з Secure Shell, особливо навколо керування ключами, а також більш широкими темами кібербезпеки.
Сьогодні протокол використовується для управління більш ніж половиною світових веб-серверів і практично для всіх комп'ютерів Unix або Linux, як в офлайн середовищі, так і в хмарі. Фахівці з інформаційної безпеки і системні адміністратори використовують його при налаштуванні, управлінні, обслуговуванні та використанні більшості брандмауерів, маршрутизаторів, комутаторів і серверів в мільйонах критично важливих мереж і середовищ нашого цифрового світу. Він також вбудований в багато рішення для передачі файлів і управління системами.

Новий протокол замінив кілька застарілих інструментів і протоколів, включаючи telnet, ftp, FTP /S, rlogin, rsh і rcp.

SSH-команда в LINUX

Команда забезпечує безпечне шифроване з'єднання між двома вузлами по небезпечною мережі. Це з'єднання також може використовуватися для доступу до терміналу, передачі файлів і для тунелювання інших додатків. Графічні додатки X11 також можна безпечно запускати через SSH з віддаленого пристрою.

Інші команди SSH

Є й інші варіанти команд, крім клієнта. У кожної є своя сторінка: keygen — створює пару ключів при аутентифікації з відкритим ключем; copy-id — робить відкритий ключ дозволеним на сервері; agent — агент зберігання закритого ключа для єдиного входу; add — інструмент додавання ключа до агента; scp — клієнт передачі файлів з RCP-подібним командним інтерфейсом; sftp — клієнт передачі файлів з FTP-інтерфейсом; sshd — сервер OpenSSH.

Використання LINUX CLIENT

Зазвичай Linux використовує клієнт OpenSSH. Команда ssh для входу на віддалену машину дуже проста. Щоб виконати вхід на віддалений комп'ютер, введіть наступну команду в командному рядку: sample.ssh.com.
Якщо ви вперше використовуєте ssh для підключення до віддаленого комп'ютера, ви побачите повідомлення типу: «Неможливо встановити автентичність хоста 'sample.ssh.com'. Ви дійсно хочете продовжити підключення (так/ні)?» Введіть yes для продовження. Це додасть сервер у списку відомих хостів (~/.ssh/known_hosts). Про це свідчить наступне повідомлення: «Попередження: Постійно доданий «sample.ssh.com» (DSA) у список відомих хостів». Як тільки з'єднання з сервером встановлено, користувач автентифікований. Як правило, запитується пароль. Для деяких серверів вам може знадобитися ввести одноразовий пароль, згенерований спеціальним токеном обладнання. Коли аутентифікація буде прийнята, ви ввійдете в командний рядок для віддаленої машини. Також можна використовувати інше ім'я користувача на віддаленій машині, ввівши команду: alternative-username@sample.ssh.com. Вищезазначене також може бути виражено синтаксисом: ssh -l альтернативне ім'я користувача sample.com.

Виконавчі команди дистанційного управління на сервері

Команда ssh також використовується для виконання команд на віддаленому комп'ютері без входу в оболонку. Синтаксис для цього: ssh hostname. Наприклад, щоб виконати команду SSH: ls/tmp/doc на host sample.ssh.com введіть наступну команду в командному рядку: sample.com ls/tmp/doc. Після аутентифікації на віддаленому сервері відобразиться вміст віддаленого каталогу, і ви повернетеся в запрошення локальної оболонки.

Налаштування громадської ключовий аутентифікації

Щоб настроїти ідентифікацію за відкритим ключем без пароля, ви можете створити ключ і налаштувати файл authorized_keys. Параметри командного рядка можуть використовуватися для налаштування переадресації портів. Локальне переміщення означає, що локальний порт (на клієнтському комп'ютері) туннелируется на IP-адресу і порт сервера. Віддалена переадресація означає, що віддалений порт (на сервері) перенаправляється на заданий IP-адресу і порт з клієнтського комп'ютера.
OpenSSH також підтримує переадресацію сокетів домену Unix і IP-пакетів з тунельного пристрої для створення VPN (віртуальної приватної мережі).

Посилання

Деякі з найбільш важливих параметрів командного рядка для віддаленої команди SSH: використовуйте тільки протокол версії 1 або 2; використовуйте тільки адреси IPv4 або IPv6; увімкніть пересилку з'єднання агента аутентифікації; використовуйте стиснення даних; вибирайте специфікацію для шифрування сеансу. Крім того, застосовуйте динамічне перенаправлення портів на рівні програми.