Протокол SSH

Тема дорожной карты · Компьютерные сети

SSH · безопасный доступ к серверу

Нажмите на схему, чтобы увеличить ↗

SSH защищает удалённый сеанс; он не работает поверх TLS.

Пошаговое объяснение
  1. Версии SSH и KEXINIT
    Стороны согласуют алгоритмы обмена ключами и шифрования.
  2. Обмен ключами и проверка сервера
    Клиент проверяет ключ сервера по известному отпечатку или сертификату.
  3. Аутентификация пользователя
    Клиент доказывает владение своим ключом через защищённый канал.
  4. Команда → результат
    Открывается канал сеанса: команда и её вывод передаются зашифрованно.
Источники схемы
SSH · безопасный доступ к серверу

SSH защищает удалённый сеанс; он не работает поверх TLS.

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

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

SSH устанавливает собственный защищённый транспорт поверх TCP, обычно на порту 22. Стороны согласуют алгоритмы и выполняют обмен ключами. Клиент проверяет ключ сервера по известному отпечатку или доверенному сертификату, затем сервер проверяет пользователя, например по подписи его ключом. После этого открываются логические каналы для командной оболочки, передачи файлов через SFTP или туннелирования. SSH не использует TLS.

Пример туннеля: ssh -L 8080:localhost:80 user@devroadmap.ru связывает локальный порт с адресом, доступным серверу. Ограничивайте такую возможность по потребности: защищённый канал не отменяет правила доступа к приложению.

Когда применять

Для удалённого доступа используйте SSH с проверкой ключа сервера и аутентификацией пользователя. HTTPS и WSS защищаются TLS; SSH и SFTP используют защищённый транспорт SSH. Выбирайте протокол по задаче: HTTP для ресурсов веб-приложения, WebSocket для двустороннего обмена, gRPC для вызовов между сервисами, SSH для администрирования.

Типичные ошибки

Не принимайте изменившийся ключ сервера автоматически: это может быть переустановка машины, изменение конфигурации или подмена. Сверьте отпечаток через доверенный канал. Проверка сервера и вход пользователя — разные этапы: наличие корректного пароля не доказывает, что клиент подключился к нужному узлу. Закрытый ключ остаётся у владельца; сервер получает открытый ключ и проверяет подпись. Не копируйте закрытый ключ на сервер ради входа.

Для диагностики полезен ssh -v user@devroadmap.ru: журнал показывает подключение, согласование алгоритмов и выбранный способ аутентификации. Сначала проверьте DNS и доступность TCP-порта, затем проверку сервера и права пользователя. Отказ при открытии канала после успешного входа требует проверки ограничений сервера, а не повторного обмена ключами.

Связанные понятия

Полезные ресурсы

🔤 Английские термины в этой теме

Слова из этой темы, которые русскоязычные часто произносят неверно. Кнопка 🔊 произносит голосом браузера.

Весь словарь терминов →