¿Qué significa la verificación de la clave del host fallida?

What Does Host Key Verification Failed Mean



Al usar el servidor ssh, uno de los errores comunes que encontrará es Error en la verificación de la clave del host . Para comprender por qué ocurre este error, primero comprendamos cómo ssh establece una conexión.

Cuando intenta conectarse a un servidor remoto, el servidor le pide que confirme si está intentando establecer una conexión con el servidor correcto.









Si escribe , el cliente agregará la clave de host pública al .ssh / hosts_conocidos expediente. Una vez que se agrega la clave del servidor remoto, la próxima vez que intente conectarse al mismo servidor, el cliente comparará las claves con las claves almacenadas en el hosts_conocidos expediente.



No se le indicará ninguna advertencia si la clave está presente en el hosts_conocidos expediente. El servidor se conectará de inmediato.





¿Por qué falló la verificación de la clave del host? Se produce un error

La razón principal que causa el error de verificación de la clave del host es que la clave del host remoto ha sido cambiada y ya no es la misma que estaba almacenada en el archivo. hosts_conocidos expediente. La clave generalmente cambia cuando se reconstruyen los servidores y obtiene un error como se muestra a continuación:



Cómo arreglar el Error en la verificación de la clave del host Error

Para solucionar este error, debemos eliminar la clave infractora de la hosts_conocidos archivo presente en nuestro sistema en .ssh directorio. El error le da la dirección IP del servidor remoto y el número de línea en el que se almacena la clave en el hosts_conocidos expediente.

En el error anterior, /home/user/.ssh/known_hosts:7 , los :7 es el número de línea infractor. A continuación, se enumeran varios enfoques para corregir este error:

Método 1:

El primer método para corregir este error es utilizar el sed mando. los sed El comando se usa para modificar los archivos de texto para buscar, agregar o eliminar algo de los archivos. Lo estamos usando para eliminar el host infractor:

$sed -I '7d'~ .ssh/hosts_conocidos

Dónde 7 es el número de línea que se muestra en el error anterior, su número de línea puede ser diferente; asegúrese de utilizar el número de línea correcto. El comando eliminará la línea ofensiva del hosts_conocidos archivar y resolver el problema.

Método 2:

El segundo enfoque es abrir el hosts_conocidos archivo en cualquier editor:

$nano.ssh/hosts_conocidos

Y elimine manualmente la línea ofensiva y guarde el archivo.

Método 3:

El tercer método es eliminar el servidor utilizando el ssh-keygen mando. Siga la sintaxis que se menciona a continuación:

$ssh-keygen -R [DIRECCIÓN IP]

Por ejemplo, para eliminar la clave de host de 192.168.10.116 , usar:

$ssh-keygen -R192.168.10.116

Conclusión

El error de verificación de la clave del host ocurre cuando la clave del servidor remoto cambia y el cliente no la verifica a partir de las claves almacenadas. Las claves del servidor se almacenan en el hosts_conocidos archivo en el lado del cliente, y al establecer la conexión, el cliente verifica la clave comparándola con las claves almacenadas en el host_conocido archivo y al fallar, obtienes un Error en la verificación de la clave del host error.

Para rectificar esto, elimine el host infractor del hosts_conocidos expediente. Esta guía menciona tres métodos diferentes para eliminar el host infractor y se puede utilizar cualquier método para resolver este error.