Я пытаюсь воссоздать ключи хоста ssh-сервера.
У меня есть как минимум два способа сделать это:
С dpkg-переконфигурировать
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
с keylengh 4096 для RSA?
sshd
в режиме отладки из командной строки (sudo sshd -d
) для получения дополнительной информации о проблеме и опубликовать вывод.livewire@za20:/etc/ssh$ sudo sshd -d
выходе.sshd re-exec requires execution with an absolute path
В противном случае я бы включил пример в свой ответ :(sudo /usr/sbin/sshd -d
. Полученная ошибка подразумевается буквально (хотя и не совсем ясно).dpkg-reconfigure
с длиной ключа 4096? Где-нибудь есть файл конфигурации, который содержит эту информацию? Я осмотрел базы данных debconf (in/var/cache/debconf/
), но не нашел ничего похожего на длину ключа.Ответы:
Вы создаете хост-ключ с паролем. Есть ли какие-либо настройки, чтобы разблокировать этот hostkey? Если нет, то я думаю, что именно этого и следует ожидать: скрипт, который управляет службой, запускается, пытается загрузить хост-ключ и завершается неудачей. Насколько я знаю, вы не должны создавать хост-ключи, защищенные паролями.
Если вы заинтересованы в усилении безопасности своего SSH-сервера, я рекомендую прочитать https://stribika.github.io/2015/01/04/secure-secure-shell.html команду, использованную для создания ключа хоста в этом документе:
Но вы должны прочитать весь документ, прежде чем вносить какие-либо изменения.
источник
Ни один из ответов выше не работал для меня. Я исправил свою систему Ubuntu, выполнив следующие действия:
источник
Просто запустите:
ssh-keygen
генерирует ключ SSH.-t
указывает тип ключа для создания-b
указывает количество бит в ключе.Смотрите эту страницу для получения дополнительной информации.
источник