Estou tentando recriar as chaves de host do servidor ssh.
Eu tenho pelo menos duas maneiras de fazer isso:
Com o dpkg-reconfigure
dpkg-reconfigure openssh-server
Isso funciona bem, mas não posso fornecer o comprimento da chave então. Eu quero, por exemplo, 4096 para a chave RSA.
Manualmente com ssh-keygen
sudo ssh-keygen -f /etc/ssh/ssh_host_rsa_key -N 'myverylongpasswordhere' -b 4096 -t rsa
Isso me recria as chaves, mas depois de reiniciar o servidor, recebo a seguinte mensagem de erro :
could not load host key: /etc/ssh/ssh_host_rsa_key
então eu verifiquei o arquivo sshd_config que está lá:
HostKey /etc/ssh/ssh_host_rsa_key
combina perfeitamente. Então, verifiquei o proprietário e os direitos de todas as minhas chaves
-rw------- 1 root root 3326 Mär 24 08:57 ssh_host_rsa_key
Quando eu removo todas as chaves e as recria
dpkg-reconfigure openssh-server
, as chaves são menores e têm os mesmos direitos de arquivo como acima.
Pergunta: Como posso usar o dpkg-reconfigure
keylengh 4096 para RSA?
sshd
no modo de depuração na linha de comando (sudo sshd -d
) para obter mais informações sobre o problema e publique a saída.livewire@za20:/etc/ssh$ sudo sshd -d
saídasshd re-exec requires execution with an absolute path
Caso contrário, eu teria incluído um exemplo na minha resposta :(sudo /usr/sbin/sshd -d
. O erro que você recebeu foi feito literalmente (embora não seja muito claro).dpkg-reconfigure
comprimento de chave 4096? Existe um arquivo de configuração em algum lugar que contenha essas informações? Eu olhei em volta nos bancos de dados debconf (in/var/cache/debconf/
), mas não encontrei nada parecido com o comprimento da chave.Respostas:
Você cria uma chave de host com uma senha. Existe alguma personalização para desbloquear essa chave do host? Caso contrário, acho que é o que se espera: o script que gerencia o serviço é iniciado, tenta carregar a chave do host e falha. Tanto quanto sei, você não deve criar chaves de host protegidas por senhas.
Se você estiver interessado em proteger seu servidor SSH, recomendo ler https://stribika.github.io/2015/01/04/secure-secure-shell.html o comando usado para criar a chave do host nesse documento é:
Mas você deve ler o documento inteiro antes de fazer alterações.
fonte
Nenhuma das respostas acima funcionou para mim. Corrigi o meu sistema ubuntu fazendo o seguinte:
fonte
Basta executar:
ssh-keygen
gera uma chave SSH.-t
especifica o tipo de chave a ser criada-b
especifica o número de bits na chave.Veja esta página para mais informações.
fonte