Ошибка «не удалось загрузить ключ хоста» при попытке воссоздать ключи хоста SSH

Ошибка «не удалось загрузить ключ хоста» при попытке воссоздать ключи хоста SSH

Я пытаюсь воссоздать ключи хоста ssh-сервера.

У меня есть как минимум два способа сделать это:

  • С помощью dpkg-reconfigure

    dpkg-reconfigure openssh-server
    

    Это работает нормально, но тогда я не могу указать длину ключа. Я хочу, например, 4096 для ключа RSA.

  • Вручную с помощью ssh-keygen

    sudo ssh-keygen -f /etc/ssh/ssh_host_rsa_key -N 'myverylongpasswordhere' -b 4096 -t rsa
    

    Это пересоздает мне ключи, но после перезапуска сервера я получаю следующеесообщение об ошибке:

    could not load host key: /etc/ssh/ssh_host_rsa_key
    

    Итак, я проверил файл sshd_config, что там:

    HostKey /etc/ssh/ssh_host_rsa_key
    

    Идеально совпадает. Итак, я проверил владельца и права на все мои ключи

    -rw------- 1 root root 3326 Mär 24 08:57 ssh_host_rsa_key
    

    Когда я удаляю все ключи и создаю их заново с помощью dpkg-reconfigure openssh-server, ключи становятся меньше и имеют те же права доступа к файлам, что и выше.

Вопрос:Как использовать dpkg-reconfigureключ длиной 4096 для RSA?

решение1

Ни один из ответов выше не помог мне. Я исправил свою систему Ubuntu, выполнив следующие действия:

/usr/bin/ssh-keygen -A

решение2

sudo ssh-keygen -f /etc/ssh/ssh_host_rsa_key -N 'myverylongpasswordhere' -b 4096 -t rsa

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

could not load host key: /etc/ssh/ssh_host_rsa_key

Вы создаете hostkey с паролем. Есть ли какая-либо настройка для разблокировки этого hostkey? Если нет, то я думаю, что этого и следовало ожидать: скрипт, управляющий службой, запускается, пытается загрузить hostkey и терпит неудачу. Насколько мне известно, не следует создавать hostkey, защищенные паролями.

Если вы заинтересованы в усилении защиты вашего SSH-сервера, то я рекомендую прочитатьhttps://stribika.github.io/2015/01/04/secure-secure-shell.htmlКоманда, используемая для создания ключа хоста в этом документе, выглядит следующим образом:

ssh-keygen -t rsa -b 4096 -f ssh_host_rsa_key

Однако перед внесением каких-либо изменений вам следует прочитать весь документ.

решение3

Просто запустите:

ssh-keygen -t rsa -b 4096

ssh-keygenгенерирует SSH-ключ.

  • -tуказывает тип создаваемого ключа
  • -bопределяет количество бит в ключе.

Видетьэта страницаЧтобы получить больше информации.

Связанный контент