Работа с SSH: базовые принципы настройки

Удалённое администрирование компьютеров на базе Linux чаще всего осуществляется через протокол SSH (Secure Shell) — именно с его помощью системные администраторы работают с машинами через командную строку. Для тех, кто одновременно обслуживает несколько серверов или профессионально занимается веб-разработкой, подключение по SSH превращается в рутинную, повседневную операцию. Схема взаимодействия строится следующим образом: на удалённой машине, к которой требуется доступ, запускается SSH-сервер, а на устройстве администратора работает SSH-клиент, устанавливающий с ним соединение.

Когда клиентская машина инициирует соединение, SSH-сервер запускает процедуру верификации. Реализовать проверку подлинности можно тремя различными способами:

  • Проверка по IP клиента — Secure Shell задействует ряд методов для верификации адреса. Этот вариант нельзя назвать надёжным: IP-адрес технически можно подделать.
  • Проверка по публичному ключу клиента — механизм похож на предыдущий, однако вместо IP-адреса система сверяет ключ клиента вместе с именем    пользователя.
  • Проверка по паролю — наиболее распространённый метод. Пароль при передаче также шифруется, что обеспечивает базовый уровень защиты.

Программы для подключения к SSH

Набор доступных программ различается в зависимости от используемой операционной системы:

  • GNU/Linux, BSD: kdessh, lsh-client, openssh-client, putty, ssh, Vinagre
  • MS Windows и Windows NT: PuTTY, SecureCRT, ShellGuard, Axessh, ZOC, SSHWindows, ProSSHD, XShell
  • MS Windows Mobile: PocketPuTTy, mToken, sshCE, PocketTTY, OpenSSH, PocketConsole
  • Mac OS: NiftyTelnet SSH
  • Java: MindTerm, AppGate Security Server
  • iPhone: i-SSH, ssh (поставляется вместе с приложением Terminal)
  • Android: connectBot

При таком широком выборе клиентов основная часть пользователей останавливается на двух вариантах — PuTTY и SecureCRT. Первый пользуется большей популярностью прежде всего абсолютно бесплатного распространения.

Одним из удобных решений считается приложение WinSCP — бесплатный графический клиент с поддержкой SFTP и SCP, дополнительно выполняющий функции PuTTY-агента. Такой инструмент заметно упрощает работу по SSH-протоколу. Стоит также учитывать: для тех, кто заботится о защите своих сайтов от вредоносного ПО, переход с классических FTP-клиентов (например, FileZilla) на WinSCP станет разумным шагом — это снижает риск компрометации паролей.