SSH

SSH

SAF International

SSH (англ. Secure SHell — «безопасная оболочка») – протокол передачи данных, позволяющий производить безопасное и защищенное управление операционной системой и данными. Это сетевой протокол прикладного уровня, который дает возможность шифрования передаваемых данных и паролей. К тому же позволяет передавать любой другой протокол.

Первая версия протокола SSH была разработана в 1995 году. С тех пор были обнаружены некоторые слабые места и программа претерпела ряд существенных изменений. Таким образом, в 1996 году, в свет вышла вторая версия SSH 2. Она не совместима с первой версией и, говоря о SSH сегодня, всегда подразумевается SSH 2. С тех пор SSH не изменила значительно стандарты своей работы и широко используется по сей день.

SSH является сугубо коммерческим продуктом и предоставляется на платной основе. Однако повсеместно доступна и ее бесплатная версия, которая носит название OpenSSH. Не смотря на то, что OpenSSH является лишь одной из версий SSH, она намного чаще используется программистами. Некоторые даже считают, то он более безопасен и удобен в использовании, благодаря своему открытому исходному коду.


Возможности SSH

  • Позволяет удаленно работать на компьютере через командную оболочку.
  • Позволяет осуществлять шифрование с помощью различных алгоритмов.
  • Так как SSH позволяет безопасно передавать практически любой сетевой протокол, это позволяет передавать по шифрованному каналу звуковые и видео файлы.
  • Производит сжатие файлов для их последующего шифрования и передачи.
  • Защищает передачу данных по каналу и предотвращает возможность включения в установленную сессию и перехватить данные.


Необходимое ПО для работы с SSH

Для работы с SSH необходим SSH-сервер и SSH-клиент.

SSH-сервер принимает соединение от клиентских машин и производит аутентификацию. Аутентификация на SSH производится тремя способами:

  1. По IP адресу клиента – при этом SSH использует несколько методов проверки. Способ не очень безопасный, так как существует возможность подмены IP адреса.
  2. По публичному ключу клиента – схема почти такая же, как при проверке IP адреса клиентской машины, только в данном случае проверяется ключ клиента и имя пользователя.
  3. По паролю клиента – часто используемый метод проверки. Пароль в данном случае передается также в зашифрованном виде.

Основными программными платформами, выступающими в роли SSH-сервера являются:

  • BSD: OpenSSH
  • Linux: dropbear, lsh-server, openssh-server, ssh
  • Windows: freeSSHd, copssh, WinSSHD, KpyM Telnet/SSH Server, MobaSSH, OpenSSH

SSH-клиент используется для непосредственного входа на удаленный сервер и выполнения различных команд:

  • Работа с файлами и директориями
  • Работа по просмотру или редактированию файлов
  • Отслеживание процессов работы
  • Работа с архивами
  • Работа с базами данных MySQL

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

Не смотря на то, что SSH-клиентов очень много, самыми популярными и часто используемыми являются PuTTY и SecureCRT. PuTTY является наиболее предпочтительным, потому что предоставляется на бесплатной основе.


Безопасное использование SSH

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

Необходимо соблюдать несколько правил пользования SSH, чтобы обезопасить свои данные:

  • Запретить возможность удалённого root-доступа.
  • Запретить подключение с пустым паролем или отключение входа по паролю.
  • Необходимо выбирать нестандартный порт для SSH-сервера.
  • Использовать длинные SSH2 RSA-ключи.
  • Необходимо строго ограничить количество IP-адресов, с которых разрешён доступ.
  • Запретить доступа с опасных адресов.
  • Регулярно отслеживать сообщения об ошибках аутентификации.
  • Установить системы обнаружения вторжений (IDS — Intrusion Detection System).
  • Использовать специальные ловушки, подделывающих SSH-сервис (honeypots).


Хостинг SSH

К сожалению, сегодня не все хостинг компаний осуществляют поддержку SSH. Если вы обладатель одного единственного сайта в интернете и еще плохо понимаете, что такое SSH и зачем он нужен, то возможно вы не сильно в нем нуждаетесь. А если вы уже опытный пользователь, который частенько просиживает штаны за компьютером, пока сервер осуществлял обмен файлами через FTP, то, скорее всего, вы мечтали о SSH всю свою ftp-обменную жизнь.

На самом деле – это очень удобная штука и вы вскоре сами в этом убедитесь. Наступит время, когда вам необходимо будет перенести свой проект или несколько проектов с локального сервера на сервер хостинг-провайдера, либо с сервера одного хостинг-провайдера на сервер другого хостинг-провайдера. Вот здесь вам и поможет SSH.

К тому же SSH позволяет редактировать файлы на сервере и удалять их одним щелчком.

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