Як підключитися до сервера по SSH: Windows, Linux, macOS

SSH — основний спосіб керування Linux-сервером: ви отримуєте командний рядок віддаленої машини через зашифрований канал. Нижче — як підключитися з будь-якої операційної системи, налаштувати вхід за ключем і що робити, якщо з’єднання не встановлюється.
Що знадобиться
Після замовлення віртуального сервера ви отримуєте лист із даними доступу:
- IP-адреса сервера, наприклад
203.0.113.10; - логін — зазвичай
root; - пароль або заздалегідь доданий SSH-ключ;
- порт — типово
22.
Підключення з Linux і macOS
Клієнт OpenSSH уже встановлено. Відкрийте термінал і виконайте:
ssh root@203.0.113.10
Якщо сервер слухає нестандартний порт, вкажіть його ключем -p:
ssh -p 2222 root@203.0.113.10
Під час першого підключення клієнт покаже відбиток ключа сервера й запитає, чи довіряєте ви йому. Введіть yes — відбиток збережеться в ~/.ssh/known_hosts, і запитання більше не з’явиться. Потім введіть пароль: символи під час введення не відображаються, це нормально.
Підключення з Windows
Вбудований клієнт OpenSSH
У Windows 10 і 11 клієнт SSH входить до складу системи. Відкрийте PowerShell або «Термінал» і використайте ту саму команду:
ssh root@203.0.113.10
Якщо команду не знайдено, встановіть компонент: Параметри → Програми → Додаткові компоненти → Клієнт OpenSSH.
PuTTY
PuTTY зручний, якщо потрібні збережені сесії або ви працюєте на старій версії Windows.
- Завантажте PuTTY з офіційного сайту й запустіть.
- У полі Host Name (or IP address) введіть IP-адресу сервера, у полі Port — порт.
- У розділі Window → Translation оберіть кодування UTF-8, щоб кирилиця відображалася коректно.
- Поверніться в Session, введіть назву в Saved Sessions і натисніть Save.
- Натисніть Open, підтвердьте відбиток сервера та введіть логін і пароль.
Вхід за SSH-ключем
Ключ безпечніший за пароль: його неможливо підібрати перебором, а вводити нічого не потрібно.
Створіть пару ключів на своєму комп’ютері (команда однакова для Linux, macOS і Windows):
ssh-keygen -t ed25519 -C "my-laptop"
Скопіюйте публічний ключ на сервер. У Linux і macOS:
ssh-copy-id root@203.0.113.10
У Windows команди ssh-copy-id немає, використовуйте PowerShell:
type $env:USERPROFILE\.ssh\id_ed25519.pub | ssh root@203.0.113.10 "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
Перевірте, що вхід за ключем працює, і лише після цього вимкніть вхід за паролем. Для цього у файлі /etc/ssh/sshd_config на сервері вкажіть:
PasswordAuthentication no
і перезапустіть службу:
systemctl restart ssh
Короткі імена серверів
Щоб не вводити адресу, порт і логін щоразу, опишіть сервер у файлі ~/.ssh/config:
Host web
HostName 203.0.113.10
User root
Port 2222
IdentityFile ~/.ssh/id_ed25519
Тепер достатньо команди ssh web. Ці самі імена розуміють scp, rsync і sshfs.
Часті помилки
| Повідомлення | Причина й розв’язання |
|---|---|
Connection refused |
Службу SSH не запущено або вказано неправильний порт. Перевірте порт і стан сервера в панелі керування. |
Connection timed out |
Сервер вимкнено, неправильна IP-адреса або порт закрито файрволом. |
Permission denied |
Неправильний логін, пароль або ключ. Вхід для root за паролем може бути заборонено в sshd_config. |
REMOTE HOST IDENTIFICATION HAS CHANGED |
Сервер перевстановлено, і його ключ змінився. Видаліть старий запис: ssh-keygen -R 203.0.113.10. |
Подробиці про причину відмови покаже режим налагодження: ssh -v root@203.0.113.10.
Що налаштувати після першого входу
Сервер із відкритим портом 22 починають сканувати боти вже в перші хвилини. Мінімальний набір захисту:
- вхід лише за ключами (див. вище);
- зміна стандартного порту SSH;
- Fail2Ban для блокування перебору паролів;
- двофакторна автентифікація для критичних серверів.


