Искать в Базе знаний

Авторизация по SSH‑ключу

Для возможности подключения по SSH с использованием ключей необходимо, чтобы публичный ключ был сохранен на боксе в файле ~/.ssh/authorized_keys.
В зависимости от ситуации реализовать это можно различным образом.

Если бокс ещё не создан

Чтобы при создании нового бокса он сразу был сконфигурирован для авторизации по паре ключей, нужно:
  • Добавить открытый ключ в раздел «Боксы» → «SSH-ключи» Панели управления.
  • После этого на главной странице при создании бокса в появившемся выпадающем списке вместо «Аутентификация по паролю» выбрать имя добавленного ключа.
Примечание: в этом случае root-пароль не генерируется, соответственно, он будет отсутствовать в письме о создании бокса, а доступ по паролю будет запрещён.

Если бокс уже создан и есть доступ по root-паролю

Сначала генерируем персональную пару ключей — открытый (публичный) и закрытый (приватный). Приватный ключ остаётся на локальном устройстве, а публичный ключ нужно добавить следующим образом: 
  • Подключиться к боксу.
  • Добавить файл публичного ключа (id_rsa.pub) в ~/.ssh/authorized_keys.
  • Перезагрузить сервис командой:
service sshd restart
Если при этом необходимо запретить авторизацию по паролю, в /etc/ssh/sshd_config добавляем правило:
PasswordAuthentication no
После вновь перезапустить sshd.

Если бокс был создан с авторизацией по другой паре ключей

В данном случае, так как у нас нет возможности получить закрытый ключ, необходимо предварительно разрешить авторизацию по паролю.
Так как root-пароль при таком создании изначально отсутствует, но требуется для подключения по VNC, первым делом необходимо выполнить действие «Сброс пароля root». Далее:
  • Подключиться по VNC.
  • Закомментировать в файле /etc/ssh/sshd_config директиву:
    PasswordAuthentication no
    или изменить ее значение на yes.
  • Перезапустить сервис sshd:
    service sshd restart
Далее подключиться к серверу с помощью root-пароля и внести изменения по алгоритму из предыдущего пункта.