01-10-2018 15:39

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

Практически каждая система Unix и Linux включает в себя команду ssh. Она предназначена для запуска клиентской программы, которая обеспечивает безопасное соединение с SSH-сервером на удаленной машине. Команда ssh используется при входе в удаленную машину, для передачи файлов между двумя устройствами и выполнения команд на удаленном компьютере.

SSH

SSH — это программный пакет, который обеспечивает безопасное администрирование системы и передачу файлов по небезопасным сетям. Он используется почти в каждом центре обработки данных, на каждом крупном предприятии.

Быстрая проверка производительности компьютераВам будет интересно:Быстрая проверка производительности компьютера

В протоколе применяется шифрование при защите соединения между клиентом и сервером. Вся аутентификация пользователя, команды, вывод и передача файлов зашифровываются для защиты от атак в сети.

История протокола SSH

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

Как проверить флешку на вирусы или произвести проверку компьютера с USB-носителя?Вам будет интересно:Как проверить флешку на вирусы или произвести проверку компьютера с 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;

  • включите пересылку соединения агента аутентификации;

  • используйте сжатие данных;

  • выбирайте спецификацию для шифрования сеанса.

Кроме того, применяйте динамическое перенаправление портов на уровне приложения.



Источник