Что такое SSH?
Статья также доступна на украинском (перейти к просмотру).
SSH (от англ. “Secure Shell”) — это протокол удаленного администрирования, разработанный для осуществления удаленного управления операционными системами и туннелирования TCP-соединения. Использование этого протокола допускает использование разных алгоритмов шифрования, что позволяет безопасно работать практически в любой незащищенной среде: работать с ПК через командную оболочку, передавать по шифрованному каналу любой тип данных (например, видео- и аудиофайлы).
Первый релиз протокола состоялся в 1995 г, а уже в 1996 г была представлена усовершенствованная его версия, которая и стала основой для дальнейшего развития продукта. Сегодня для всех сетевых ОС доступны SSH сервер и SSH клиент, а сам протокол SSH является одним из самых популярных решений для удаленного управления системами и передачи важной информации.
Содержание
Принцип работы
SSH это протокол, использующий клиент-серверную модель для аутентификации удаленных систем и обеспечения шифрования данных, обмен которыми происходит в рамках удаленного доступа.
По умолчанию для работы протокола используется TCP-22 порт: на нем сервер (хост) ожидает входящее подключение и, после получения команды и проведения аутентификации, организует запуск клиента, открывая выбранную пользователем оболочку. При необходимости пользователь может менять используемый порт.
Для создания SSH подключения клиент должен инициировать соединение с сервером, обеспечив защищенное соединение и подтвердив свой идентификатор (проверяются соответствие идентификатора с предыдущими записями, хранящимися в RSA-файле, и личные данные пользователя, необходимые для аутентификации).
Преимущества протокола
Использование SSH подключения имеет ряд преимуществ:
- безопасная работа на удаленном ПК с использованием командной оболочки;
- использование разных алгоритмов шифрования (симметричного, асимметричного и хеширования);
- возможность безопасного использования любого сетевого протокола, что позволяет передавать по защищенному каналу файлы любого размера.
Как использовать SSH?
Чтобы обеспечить SSH доступ пользователю необходимы SSH-клиент и SSH-сервер. Каждая операционная система имеет свой набор программ, обеспечивающих соединение. Так, для Linux это lsh (server и client), openssh (server и client). Для Mac OS зачастую используется NiftyTelnet SSH. А в ОС Windows для реализации соединения через SSH протокол чаще всего используется приложение PuTTY https://www.putty.org.
Для использования PuTTY необходимо скачать и инсталлировать приложение, после чего в графическом интерфейсе можно осуществить настройку программы. Приложение имеет 4 вкладки:
- Session. В этой вкладке осуществляется настройка подключения к серверу.
- Terminal. Здесь можно корректировать настройки работы терминала, через который и осуществляется вся работа.
- Connection. В этой вкладке можно задать параметры подключения, выбрать алгоритм шифрования и задать другие настройки соединения.
- Window. В этом окне пользователь может выбрать внешний вид приложения, изменить шрифт и цвет текста.
В PuTTY , как и других приложениях для запуска SSH-протокола, используются два основных метода аутентификации: по паролю и по ключу.
При использовании аутентификации по паролю пользователь использует для установки соединения персональный логин и пароль.
В случае использования ключа предварительно генерируются открытый (на устройстве, к которому будут подключаться) и закрытый (на устройстве, с которого будет происходить подключение) ключи для каждого отдельного пользователя. Эти файлы не передаются во время аутентификации, система только проверяет, чтобы владелец открытого ключа владел и закрытым. Этот метод используется для автоматического входа в удаленный ПК.
В PuTTY для управления удаленным ПК используется терминал: и команды, и передача файлов осуществляются только через него.
SSH — один из самых безопасных протоколов для реализации удаленного доступа к ПК. Современные алгоритмы шифрования и широкий выбор инструментов для настройки протокола делают его самым популярным вариантом для удаленного администрирования компьютеров и безопасной передачи данных. Наш виртуальный хостинг сайтов поддерживает работу SSH во всех тарифных планах хостинга.