Використання SSH-ключів – один з найбезпечніших і найефективніших способів підключення до VPS. Замість того, щоб щоразу вводити пароль, ви можете автентифікуватися за допомогою пари приватний/публічний ключ. У цьому посібнику ми розповімо, як завантажити ваш публічний ключ SSH на існуючий VPS, щоб увімкнути безпечний вхід без пароля.

Необхідні умови

Перш ніж почати, переконайтеся в наступному:

  • Ви вже маєте доступ до свого VPS за допомогою імені користувача та пароля.

  • У вас є пара ключів SSH, згенерована на вашому локальному компютері.

  • на вашому комп’ютері встановлено ssh (Linux, macOS або Windows з WSL або PuTTY/Pageant).

Крок 1: Перевірка наявності ключа SSH

На вашій локальній машині виконайте

ls ~/.ssh

Перевірте, чи є у вас файл з назвою id_rsa.pub або id_ed25519.pub. Якщо ні, згенеруйте нову пару ключів:

ssh-keygen -t ed25519 -C "your_email@example.com"

Дотримуйтесь підказок і натисніть Enter, щоб прийняти розташування файлу за замовчуванням.

Крок 2: Завантажте публічний ключ на свій VPS

Ви можете легко завантажити ключ за допомогою команди ssh-copy-id:

ssh-copy-id user@your_vps_ip

Замініть user на ім’я користувача вашого VPS (наприклад, root або ubuntu), а your_vps_ip на фактичну IP-адресу вашого VPS. Вам буде запропоновано ввести пароль до VPS востаннє. Якщо у вас немає ssh-copy-id, ви можете завантажити ключ вручну:

cat ~/.ssh/id_ed25519.pub | ssh user@your_vps_ip "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

Крок 3: Перевірте з’єднання

Після завантаження ключа спробуйте увійти в систему:

ssh user@ваш_vps_ip

Підключення має відбутися без введення пароля.

За бажанням: Вимкнути автентифікацію за допомогою пароля

Для підвищення безпеки ви можете повністю вимкнути вхід за допомогою пароля (попередньо переконавшись, що ваш доступ на основі ключа працює):

  1. Підключіться до свого VPS.

  2. Відредагуйте конфігураційний файл SSH:

sudo nano /etc/ssh/sshd_config
  1. Знайдіть і змініть або додайте:

ПарольАутентифікація немає
  1. Перезапустіть службу SSH:

sudo systemctl restart ssh

Будьте обережні – якщо ваш ключ не працює належним чином, ви можете заблокувати себе.

Висновок

Завантаження публічного ключа SSH на VPS спрощує доступ і підвищує безпеку. Незалежно від того, чи керуєте ви одним сервером, чи десятками, автентифікація на основі ключів економить час і мінімізує ризики. Просто не забувайте зберігати закритий ключ у безпеці і відключайте вхід за паролем тільки після того, як переконаєтеся, що все працює без збоїв.