Как настроить вход по SSH-ключу

Updated 1 hour ago 1 просмотров

Кратко: SSH-ключ позволяет входить на сервер без пароля и безопаснее обычного пароля. Ключ создаётся на вашем компьютере или в Termius, публичная часть копируется на VPS.

1. Создайте ключ на компьютере

Windows (PowerShell), macOS, Linux

ssh-keygen -t ed25519 -C "veltronhost"

Нажмите Enter для пути по умолчанию. Задайте passphrase (рекомендуется).

Файлы:

  • приватный: ~/.ssh/id_ed25519 (никому не передавать)
  • публичный: ~/.ssh/id_ed25519.pub

Показать публичный ключ:

cat ~/.ssh/id_ed25519.pub

Termius (Windows / macOS / Android / iPhone)

  1. Keychain → Generate Key (Ed25519).
  2. Экспортируйте/скопируйте public key.
  3. Привяжите ключ к хосту с IP вашего VPS.

2. Добавьте ключ на сервер

Подключитесь по паролю (как в статье про SSH) и выполните:

mkdir -p ~/.ssh
chmod 700 ~/.ssh
echo 'ВАШ_ПУБЛИЧНЫЙ_КЛЮЧ' >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys

Либо с вашего компьютера (если есть ssh-copy-id):

ssh-copy-id root@ВАШ_IP

3. Проверьте вход по ключу

Не закрывая текущую сессию, откройте новое окно:

ssh root@ВАШ_IP

Если вошли без пароля (или только с passphrase ключа) — всё настроено.

4. Отключите вход по паролю (рекомендуется)

Только после успешной проверки ключа. См. раздел в статье Как защитить VPS.

Держите под рукой доступ в VMmanager (Войти в панель управления), чтобы не потерять сервер при ошибке в sshd_config.

Полезные советы

  • Для каждого рабочего места — свой ключ; так проще отзывать доступ.
  • Делайте резервную копию приватного ключа в менеджере паролей / шифрованном хранилище.
  • Не публикуйте id_ed25519 (приватный файл) в тикетах и облачных «заметках» без шифрования.

Частые вопросы

Можно ли добавить несколько ключей?
Да. Каждый публичный ключ — отдельная строка в ~/.ssh/authorized_keys.

Потерял приватный ключ и пароль отключён.
Войдите через консоль VMmanager, временно включите PasswordAuthentication yes, смените пароль в кабинете и восстановите доступ.

Still need help?

If this article did not answer your question, our support team can help.

Contact support
Наверх