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

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

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 está tentando estabelecer conexão com o servidor certo.

Se você digitar "sim", o cliente adicionará a chave do host público ao ““.ssh/conhecido_hosts ” arquivo. Depois que a chave do servidor remoto for adicionada, na próxima vez que você tentar se conectar ao mesmo servidor, o cliente comparará as chaves com as teclas armazenadas no “Conhecido_hosts” arquivo.

Você não será rápido com nenhum aviso se a chave estiver presente no “Conhecido_hosts” arquivo. O servidor será conectado imediatamente.

Por que o erro “Falha na verificação da chave do host” ocorre

A principal razão pela qual causa o erro de "verificação da chave do host" é que a chave do host remoto foi alterada e não é mais a mesma que armazenado no “Conhecido_hosts” arquivo. A chave geralmente muda quando os servidores são reconstruídos e você recebe um erro como mostrado abaixo:

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

Para corrigir esse erro, precisamos excluir a chave ofensiva do “Conhecido_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 é armazenada no “Conhecido_hosts” arquivo.

No erro acima, “/Home/Usuário/.ssh/conhecido_hosts: 7 ”, o “: 7” é o número da linha ofensiva. Múltiplas abordagens para corrigir este erro estão listadas abaixo:

Método 1:

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

$ sed -i '7d' ~.ssh/conhecido_hosts

Onde "7" é o número da linha mostrado no erro acima, o número da sua linha pode ser diferente; Certifique -se de usar o número da linha correto. O comando excluirá a linha ofensiva do “Conhecido_hosts” Arquive e resolva o problema.

Método 2:

A segunda abordagem é abrir o “Conhecido_hosts” Arquivo em qualquer editor:

$ nano .ssh/conhecido_hosts

E exclua manualmente a linha ofensiva 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 [ip_address]

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

$ ssh -keygen -r 192.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 o verifica das teclas armazenadas. As chaves do servidor são armazenadas no “Conhecido_hosts” Arquivo no lado do cliente e, ao estabelecer a conexão, o cliente verifica a chave comparando-a com as teclas armazenadas no “Conhecido_host” Arquivo e, após falhar, você recebe um “A verificação da chave do host falhou” erro.

Para corrigir isso, remova o host ofensivo do “Conhecido_hosts” arquivo. Este guia mencionou três métodos diferentes para remover o host ofensivo e qualquer método pode ser usado para resolver este erro.