O que significa falha na verificação da chave do host?

What Does Host Key Verification Failed Mean



Ao usar o servidor SSH, um dos erros comuns que você encontrará é A verificação da chave do host falhou . Para entender por que esse erro ocorre, vamos primeiro entender como o ssh estabelece uma conexão.

Quando você tenta se conectar a um servidor remoto, o servidor pede que você confirme se você está tentando estabelecer conexão com o servidor correto.









Se você digitar sim , o cliente adicionará a chave pública do host ao .ssh / known_hosts Arquivo. Assim que a chave do servidor remoto for adicionada, da próxima vez que você tentar se conectar ao mesmo servidor, o cliente irá comparar as chaves com as chaves armazenadas no conhecidos_hosts Arquivo.



Você não receberá nenhum aviso se a chave estiver presente no conhecidos_hosts Arquivo. O servidor será conectado imediatamente.





Por que a verificação da chave do host falhou? Ocorre um erro

O principal motivo que causa o erro de falha na verificação da chave do host é que a chave do host remoto foi alterada e não é mais a mesma armazenada no conhecidos_hosts Arquivo. A chave geralmente muda quando os servidores são reconstruídos, e você obtém um erro conforme mostrado abaixo:



Como consertar o A verificação da chave do host falhou Erro

Para corrigir esse erro, precisamos excluir a chave ofensiva do conhecidos_hosts arquivo presente em nosso sistema em .ssh diretório. O erro fornece o endereço IP do servidor remoto e o número da linha em que a chave está armazenada no conhecidos_hosts Arquivo.

No erro acima, /home/user/.ssh/known_hosts:7 , a : 7 é o número da linha incorreto. Várias abordagens para corrigir esse erro estão listadas abaixo:

Método 1:

O primeiro método para corrigir esse erro é usar o sed comando. o sed comando é usado para modificar os arquivos de texto para pesquisar, adicionar ou excluir algo dos arquivos. Estamos usando para excluir o host ofensivo:

$sed -eu '7d'~ .ssh/conhecidos_hosts

Onde 7 é o número da linha mostrado no erro acima, o número da linha pode ser diferente; certifique-se de usar o número de linha correto. O comando irá deletar a linha ofensiva do conhecidos_hosts arquivo e resolver o problema.

Método 2:

A segunda abordagem é abrir o conhecidos_hosts arquivo em qualquer editor:

$nano.ssh/conhecidos_hosts

E exclua manualmente a linha incorreta e salve o arquivo.

Método 3:

O terceiro método é remover o servidor usando o ssh-keygen comando. Siga a sintaxe mencionada abaixo:

$ssh-keygen -R [ENDEREÇO ​​DE IP]

Por exemplo, para remover a chave do host de 192.168.10.116 , usar:

$ssh-keygen -R192.168.10.116

Conclusão

O erro de verificação da chave do host ocorre quando a chave do servidor remoto muda e o cliente não a verifica a partir das chaves armazenadas. As chaves do servidor são armazenadas no conhecidos_hosts arquivo no lado do cliente e, ao estabelecer a conexão, o cliente verifica a chave comparando-a com as chaves armazenadas no host_conhecido arquivo e ao falhar, você obtém um A verificação da chave do host falhou erro.

Para retificar isso, remova o host ofensivo do conhecidos_hosts Arquivo. Este guia mencionou três métodos diferentes para remover o host ofensivo e qualquer método pode ser usado para resolver esse erro.