Erro `não foi possível carregar a chave do host` ao tentar recriar as chaves do host SSH

Erro `não foi possível carregar a chave do host` ao tentar recriar as chaves do host SSH

Estou tentando recriar as chaves do host do servidor ssh.

Tenho pelo menos duas maneiras de fazer isso:

  • Com dpkg-reconfigure

    dpkg-reconfigure openssh-server
    

    Isso funciona bem, mas não posso fornecer o comprimento da chave. 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 recria as chaves para mim, mas depois de reiniciar o servidor, recebo o seguintemensagem de erro:

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

    então 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 recrio com dpkg-reconfigure openssh-server, as chaves são menores e têm os mesmos direitos de arquivo acima.

Pergunta:Como posso usar dpkg-reconfigureo keylengh 4096 para RSA?

Responder1

Nenhuma das respostas acima funcionou para mim. Eu consertei meu sistema Ubuntu fazendo o seguinte:

/usr/bin/ssh-keygen -A

Responder2

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

recria-me as chaves. mas, depois de reiniciar o servidor, recebo

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

Você cria uma chave de host com uma senha. Existe alguma personalização para desbloquear essa chave de host? Caso contrário, acho que é isso que se espera: o script que gerencia o serviço é inicializado, tenta carregar a chave do host e falha. Pelo que eu sei, você não deve criar chaves de host protegidas por senhas.

Se você estiver interessado em proteger seu servidor SSH, recomendo a leiturahttps://stribika.github.io/2015/01/04/secure-secure-shell.htmlo comando usado para criar a chave de host nesse documento é:

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

Mas você deve ler todo o documento antes de fazer qualquer alteração.

Responder3

Basta executar:

ssh-keygen -t rsa -b 4096

ssh-keygengera uma chave SSH.

  • -tespecifica o tipo de chave a ser criada
  • -bespecifica o número de bits na chave.

Veresta páginaPara maiores informações.

informação relacionada