Практически каждая система Unix и Linux включает в себя команду ssh. Она предназначена для запуска клиентской программы, которая обеспечивает безопасное соединение с SSH-сервером на удаленной машине. Команда ssh используется при входе в удаленную машину, для передачи файлов между двумя устройствами и выполнения команд на удаленном компьютере.
SSH
SSH — это программный пакет, который обеспечивает безопасное администрирование системы и передачу файлов по небезопасным сетям. Он используется почти в каждом центре обработки данных, на каждом крупном предприятии.
Вам будет интересно:Быстрая проверка производительности компьютера
В протоколе применяется шифрование при защите соединения между клиентом и сервером. Вся аутентификация пользователя, команды, вывод и передача файлов зашифровываются для защиты от атак в сети.
История протокола SSH
Протокол Secure Shell был первоначально разработан Тату Илоненом в 1995 году в ответ на инцидент с хакерами в финской университетской сети. На сервере, подключенном непосредственно к магистрали, был установлен сниффер паролей, и когда он был обнаружен, в его базе данных было тысячи имен пользователей и паролей, в том числе несколько компаний Ylonen.
Вам будет интересно:Как проверить флешку на вирусы или произвести проверку компьютера с USB-носителя?
Этот инцидент спровоцировал изучение криптографии и разработку решения, которое Илонен мог бы использовать для безопасного входа в Интернет. Его друзья предложили дополнительные функции, а три месяца спустя, в июле 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;
-
включите пересылку соединения агента аутентификации;
-
используйте сжатие данных;
-
выбирайте спецификацию для шифрования сеанса.
Кроме того, применяйте динамическое перенаправление портов на уровне приложения.