Безпечний доступ без пароля за допомогою SSH-ключів

Керування вашим Linux VPS або виділеним сервером вимагає надійного захисту, а автентифікація за допомогою ключів SSH є золотим стандартом безпечного доступу без пароля. На відміну від традиційних паролів, ключі SSH використовують стійке шифрування для швидкого і безпечного входу, що ідеально підходить як для ручного доступу, так і для автоматизованих робочих процесів. Наприклад, налаштування SSH-ключів для вашого VPS від ava.hosting гарантує безпечний доступ до веб-сервера, одночасно забезпечуючи безперешкодну інтеграцію з такими інструментами, як Git або Ansible. У цьому посібнику ви дізнаєтеся, як створювати, додавати та використовувати ключі SSH для нових або існуючих серверів, оптимізованих для високопродуктивної інфраструктури ava.hosting.

Що таке ключ SSH і навіщо він потрібен?

Пара ключів SSH складається з двох частин:

  • Відкритий ключ: зберігається на сервері
  • Закритий ключ: надійно зберігається на вашому локальному пристрої

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

Переваги використання SSH-ключів:

ФункціяПеревага
Надійне шифруванняПрактично неможливо зламати грубим перебором
Відсутність зберігання паролівУсуває ризик витоку або повторного використання паролів
Швидший вхід в системуМиттєва автентифікація
Зручний для автоматизаціїІдеально підходить для скриптів, Git, Ansible, CI/CD інструментів

Варіант 1: Додавання SSH-ключа під час створення нового VPS

Ви можете додати свій SSH-ключ під час створення VPS – це швидко та безпечно.

Крок за кроком:

  • Увійдіть в панель керування хостинг-провайдера і запустіть процес налаштування VPS
  • Знайдіть розділ “SSH-ключ” або “Авторизовані ключі
  • Вставте свій публічний ключ (див. нижче, як його згенерувати)
  • Завершіть розгортання – як тільки VPS запрацює, ви зможете зайти по SSH без пароля

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

Варіант 2: Додати SSH-ключ до існуючого VPS

У вас вже є працюючий сервер? Ось як додати публічний ключ вручну:

Крок 1: Згенеруйте SSH-ключ (якщо у вас його немає)

На вашій локальній машині (Linux/macOS/WSL/Windows Terminal):

ssh-keygen -t ed25519 -C "your@email.com"
  • Натисніть Enter, щоб підтвердити розташування файлу за замовчуванням
  • Введіть парольну фразу для додаткового захисту (необов’язково)

Крок 2: Копіювання відкритого ключа

Використовуйте цю команду для відображення вашого відкритого ключа:

cat ~/.ssh/id_ed25519.pub

Або скопіюйте його безпосередньо на ваш VPS:

ssh-copy-id ім'я користувача@ваш-сервер-ip

Замініть ім’я користувача (зазвичай root) і ваш-server-ip.

Крок 3: Ручний метод (необов’язковий)

Якщо ssh-copy-id недоступний, увійдіть за допомогою пароля і запустіть:

mkdir -p ~/.ssh
nano ~/.ssh/authorized_keys

Вставте ваш відкритий ключ і збережіть файл:

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

Готово – тепер ви можете входити в систему без введення пароля.

⚙ Як використовувати ключ SSH для підключення

Після того, як ваш публічний ключ буде на сервері, підключіться таким чином:

ssh root@ваш-сервер-ip

Якщо ви зберегли свій ключ під власним ім’ям:

ssh -i ~/.ssh/my_custom_key root@your-server-ip

Де зберігаються SSH-ключі?

МісцезнаходженняПризначення
~/.ssh/id_ed25519Ваш приватний ключ (зберігайте в безпеці!)
~/.ssh/id_ed25519.pubВідкритий ключ (безпечний для спільного використання)
/root/.ssh/authorized_keysРозташування VPS для доступу

Порада з безпеки: Вимкніть вхід за паролем

Для додаткового захисту повністю вимкніть автентифікацію за допомогою пароля:

  • Редагування конфігурації SSH:nano /etc/ssh/sshd_config
  • Change:PasswordAuthentication no
    PermitRootLogin prohibit-password
  • Перезапустіть SSH:systemctl restart sshd

⚠ Робіть це тільки після того, як буде підтверджено, що ваш ключовий логін працює.

Висновок

Автентифікація за допомогою ключа SSH – це наріжний камінь безпечного доступу без пароля до вашого VPS або виділеного сервера ava.hosting. Усуваючи вразливість паролів і забезпечуючи швидкий зашифрований вхід, ключі SSH ідеально підходять як для ручного керування, так і для автоматизованих робочих процесів. Наприклад, ви можете використовувати ключі SSH для безпечного розгортання оновлень програми Node.js на вашому сервері або автоматизувати резервне копіювання за допомогою rsync. За допомогою цього посібника ви зможете налаштувати ключі SSH за лічені хвилини, забезпечивши безпечне, масштабоване та ефективне керування сервером.