Администрирование

SSH (протокол) — для чего нужен, преимущества, особенности

Сетевой протокол SSH — в чем технология работы? Преимущества SSH перед FTP, Техника

IT GIRL 12
Поделиться
Запинить
Отправить

SSH простыми словами

SSH (Secure Shell) — это протокол, с помощью которого обеспечивается безопасность удаленного доступа. Методом строгой аутентификации реализуется целостность связи, дополнительно доступ защищен с помощью надежного шифрования.

Что такое SSH, когда он нужен и можно ли его чем-нибудь заменить, рассказывают специалисты Boodet.Online.

Что такое Secure Shell?

Протокол Secure Shell работает в модели клиент-сервер. Клиент управляет процессом установки соединения и использует криптографию с открытым ключом для проверки подлинности сервера. После фазы установки протокол SSH использует строгие симметричные алгоритмы шифрования и хеширование — это необходимо для того, чтобы обеспечить конфиденциальность и целостность данных.

SSH не только обеспечивает зашифрованное соединение, но также гарантирует, что данные не могут быть обработаны на пути к получателю (исключает взлом). Secure Shell повлиял и на другие протоколы. Например, незащищенный FTP, который используется для загрузки и выгрузки файлов на сервер, получил дальнейшее развитие в протоколе передачи файлов SFTP .

Преимущества: что может SSH?

Основное преимущество SSH заключается в том, что этот протокол работает во всех основных операционных системах (Unix, Linux, MacOS, Windows).

Используется для следующих задач:

  • обеспечение безопасного доступа для пользователей;

  • интерактивная и автоматическая передача файлов;

  • безопасный ввод удаленных команд;

  • управление сетевой инфраструктурой и другими критически важными компонентами системы.

Как работает SSH

Secure Shell использует несколько методов шифрования и аутентификации. Это гарантирует, что потоки данных не могут быть прочитаны или изменены посторонними.

Первым этапом работы SSH является аутентификация. Как это происходит? Вначале сервер отправляет сертификат клиенту. Сертификат зашифрован — сымитировать его нельзя. Как только сторона клиента подтвердит, что узнает сертификат, запустится процесс соединения.

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

Закрытый ключ создается индивидуально для каждого компьютера, где впоследствии и хранится. Если надо установить соединение SSH, просто введите фразу-пароль и получите доступ к закрытому ключу.

Как на стороне сервера, так и на стороне клиента есть открытые ключи. Сервер создает криптографическую схему со своим открытым ключом, отправляет ее клиенту. Затем он же расшифровывает схему с помощью своего закрытого ключа, отправляет решение обратно и сообщает, что клиенту разрешено устанавливать законное соединение.

Утилиты SSH

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

  • PuTTY — бесплатный клиент для протоколов SSH и Telnet;

  • WinSCP — утилита для Windows с открытым исходным кодом не только передает файлы (с протоколами FTP, SFTP или SCP) но и предлагает базовые функции файлового менеджера, поддерживает сценарии;

  • FileZilla — для передачи файлов;

  • Расширение Chrome — браузер Google Chrome можно превратить в клиент SSH с помощью специального расширения;

  • VanDyke Software — поддерживает Telnet, Secure Shell и SFTP.

Техники шифрования

После взаимной аутентификации два участника связи устанавливают зашифрованное соединение. Для этого применяют ключи или хеширование.

Ключи


Генерируется ключ для сеанса, срок действия которого истекает по его окончании. И клиент, и сервер имеют одинаковый ключ, поэтому любые сообщения, которыми обмениваются, могут быть зашифрованы и расшифрованы. Обе стороны создают ключ одновременно, но независимо друг от друга.

Хеширование


Хеш — это форма подписи передаваемых данных. Алгоритм генерирует уникальный хеш из данных. Если они обрабатываются, значение хеш-функции изменяется автоматически.

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

Сервер SSH

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

Отличия SSH от FTP

Основное отличие SSH от FTP — это наличие шифрования у первого. Secure Shell разрешает удаленный доступ к оболочке, а также передачу файлов, тогда как FTP разрешает только передачу файлов. Любые данные, передаваемые по незашифрованному протоколу, можно похитить. Специалисты Boodet.Online не рекомендуют использовать FTP для аутентификации пользователя — это небезопасно.

SSH и SSL

SSL/TLS — это механизм защиты веб-сайтов, а не доступа. Secure Shell может использовать SSL/TLS как часть безопасного решения. Существует множество возможных совместных реализаций этих протоколов.

Что общего?


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

Мы рекомендуем использовать Secure Shell для безопасного выполнения команд на сервере, и SSL — для безопасной передачи личной информации в интернете.

SSH и VPN

Основное различие между SSH и VPN заключается в том, что VPN работает на транспортном уровне, а SSH — на уровне приложений. Это означает, что при установке VPN он автоматически направляет весь сетевой трафик через защищенный туннель, что делает возможным его использование как виртуального сетевого адаптера при установке ПО.

Преимущество использования VPN состоит в том, что трафик может быть замаскирован под HTTP-трафик — в этом случае злоумышленникам будет сложнее его распознать.

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

Отличия SSH от Telnet

Telnet и Secure Shell — это абсолютно противоположные протоколы. Telnet не шифрует данные, а это небезопасно. Он, как и SSH, запрашивает аутентификацию перед установкой соединения, но не поддерживает шифрование учетных данных для входа.

Поделиться
Запинить
Отправить

Возможно вам так же будет интересно: