Як підключитися до нового хмарного сервера через SSH
Сервер працює, у панелі видно IP-адресу, логін і пароль, і тепер треба потрапити всередину. Ось те саме перше підключення, а також кілька речей, які варто зробити до того, як ви щось встановите.
Що дає панель
Відкрийте сервер у панелі керування й подивіться на блок Access. Там є три потрібні речі: IP-адреса, Login і Password. Поруч дві кнопки. Generate new password створює новий випадковий пароль, а Set new password приймає той, який оберете ви. Обидві діють на запущеному сервері, тож скористайтеся ними, якщо пароль десь лежить у переписці.
Перше підключення
На macOS і на будь-якому Linux SSH уже встановлений. У Windows він є в системі починаючи з Windows 10 та Windows Server 2019, тому та сама команда працює в PowerShell без встановлення PuTTY:
ssh root@203.0.113.10
Першого разу SSH покаже відбиток ключа й запитає, чи продовжувати. Це не формальність: так SSH повідомляє, що ніколи не бачив цього хоста й не може за нього поручитися. На щойно створеному сервері відповідайте yes. Ключ збережеться у ~/.ssh/known_hosts, і для цієї адреси питання більше не виникне.
Перейдіть на ключі, а потім зачиніть двері
Паролі повторно використовують, вводять не в те вікно та вставляють у тікети. З ключами такого не буває. Створіть ключ на своєму комп'ютері, а не на сервері:
ssh-keygen -t ed25519 -C "you@example.com"
ssh-copy-id root@203.0.113.10
Потім переконайтеся, що вхід за ключем працює, у другому вікні термінала, перш ніж щось міняти. Перше не закривайте. Якщо нове налаштування виявиться помилковим, саме та відкрита сесія й допоможе його скасувати.
Коли друге вікно заходить без пароля, відредагуйте /etc/ssh/sshd_config:
PasswordAuthentication no
PermitRootLogin prohibit-password
і перезавантажте службу: systemctl reload ssh у Debian та Ubuntu або systemctl reload sshd в AlmaLinux і Rocky.
Чотири помилки, які трапляються насправді
| Що ви бачите | Що це означає | Що робити |
|---|---|---|
Permission denied (publickey) |
Сервер більше не приймає паролі, а вашого ключа в нього немає | Відкрийте KVM-консоль і перевірте ~/.ssh/authorized_keys та sshd_config |
Connection refused |
Хтось відповів: хост працює, але на порту 22 нічого не слухає | Консоль, далі systemctl status ssh - служба зупинена або перенесена на інший порт |
Connection timed out |
Не відповів ніхто: пакети відкидає фаєрвол, адреса не та або сервер вимкнено | Перевірте стан живлення в панелі, потім правила фаєрвола |
REMOTE HOST IDENTIFICATION HAS CHANGED |
Ключ хоста відрізняється від збереженого | Нормально після перевстановлення ОС чи відновлення зі знімка. Приберіть старий запис: ssh-keygen -R 203.0.113.10 |
Найкорисніша різниця - у двох середніх рядках. Refused означає, що сервер доступний і проблема у службі. Timed out означає, що на ваші пакети ніхто не відповів, тобто проблема між вами й сервером.
Консоль - це шлях назад
Будь-яка помилка з цієї статті позбавляє вас доступу по SSH і жодна не позбавляє доступу до сервера. У панелі є KVM-консоль, тобто екран і клавіатура, під'єднані прямо до віртуальної машини, і текстова консоль для систем, які її підтримують. Жодна з них не йде через SSH, тому зламаний sshd_config, правило фаєрвола, що відрізало вашу ж адресу, або видалений ключ виправляються приблизно за хвилину.
Це варто знати заздалегідь, бо воно змінює уявлення про ризик. Втратити доступ тут - незручність, а не аварія.
Перші десять хвилин
- Оновіть систему -
apt update && apt upgradeабоdnf upgrade, перш ніж на диск потрапить щось інше - Створіть користувача й припиніть працювати під root -
adduser you, додайте його до sudo або wheel і далі заходьте вже ним - Задайте ім'я хоста й перевірте годинник -
hostnamectl set-hostname web-01, потімtimedatectl, бо неправильний час ламає сертифікати та журнали - Увімкніть автоматичні оновлення безпеки -
unattended-upgradesу Debian та Ubuntu,dnf-automaticв інших - Зробіть знімок - до першого встановлення, а не після того, як усе зламається
Підсумок
Перше підключення - це одна команда. Уповільнитися варто на переході до ключів, і правило, яке робить його безпечним, просте: не закривайте робочу сесію, доки нова не довела свою працездатність. Якщо все ж пішло не так, консоль у панелі нікуди не зникла.
Хмарні сервери в Чехії та Португалії, від EUR 15/міс, з консоллю та скиданням пароля на кожному: dcxv.com/data-center#cloud
