Для возможности подключения по 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-пароля и внести изменения по алгоритму из предыдущего пункта.