Mastodon Mastodon Mastodon Mastodon

Протокол SSH [SSH]

Оновлено: · CyberSecureFox Editorial Team

SSH (Secure Shell) — криптографічний мережевий протокол для безпечного віддаленого входу, виконання команд і передавання файлів через недовірену мережу.

Як працює SSH

Фінський дослідник Тату Юлонен створив SSH у 1995 році після атаки з перехопленням паролів у мережі свого університету. Протокол замінив небезпечні Telnet і rlogin, що передавали паролі відкритим текстом. Поточну версію SSH-2 описано в RFC 4251–4254, а найпоширеніша реалізація — OpenSSH, яку проєкт OpenBSD розвиває з 1999 року. SSH-сервери зазвичай слухають TCP-порт 22.

  • Клієнт перевіряє ключ хоста сервера, і сторони узгоджують сеансові ключі через обмін ключами.
  • Користувач проходить автентифікацію паролем, парою ключів на основі криптографії з відкритим ключем (наприклад, Ed25519) або SSH-сертифікатами.
  • Зашифрований канал переносить сеанси командної оболонки, передавання файлів (SFTP, SCP) і тунелі з переадресацією портів.

Чому SSH важливий для безпеки

SSH — стандартний спосіб адміністрування Linux-серверів, мережевих пристроїв і хмарних інстансів, тому він пріоритетна ціль:

  • Підбір паролів — ботнети постійно підбирають поширені паролі до відкритих SSH-серверів (див. брутфорс).
  • Крадіжка ключів — незахищені закриті ключі та надмірно довірені файли authorized_keys уможливлюють горизонтальне переміщення між серверами.
  • Вразливості й бекдори — бекдор у xz Utils (CVE-2024-3094) у 2024 році був націлений на сервери OpenSSH у низці дистрибутивів Linux через скомпрометовану бібліотеку, а regreSSHion (CVE-2024-6387) дозволяв віддалено виконувати код в OpenSSH на Linux із glibc.

Рекомендації

  • Використовувати автентифікацію за ключами з парольною фразою й вимкнути вхід за паролем і від імені root.
  • Не відкривати SSH безпосередньо в інтернет: використовувати VPN або bastion-хост і списки дозволених адрес.
  • Обмежувати частоту спроб входу інструментами на кшталт fail2ban і додати MFA для критичних хостів.
  • Вчасно оновлювати OpenSSH і регулярно переглядати авторизовані ключі.
Синоніми:
secure shell, ssh-протокол