Cómo deshabilitar la verificación de claves de host en SSH

25 set 2021 2 min di lettura
Cómo deshabilitar la verificación de claves de host en SSH
Indice dei contenuti

Introducción

El servidor SSH tiene habilitada una comprobación estricta de la clave de host de forma predeterminada. Cuando la verificación de claves está habilitada, el cliente SSH conecta solo aquellos hosts, cuyas claves de host válidas se almacenan en el archivo del host conocido. Puede encontrar la clave en el archivo ~/.ssh/known_hosts.

Una vez que esté conectado a un archivo de host remoto a través de SSH, los clientes SSH verifican el archivo de clave de host en el archivo unknown_hosts. Si se encuentra la clave, se conectará a un servidor remoto después de la autenticación, pero si la clave no se encuentra en el archivo unknown_hosts, el comando mostrará un mensaje de advertencia y un mensaje para aceptar o rechazar la solicitud de conexión. Una vez aceptada escribiendo "yes", la clave se agrega al archivo unknown_hosts.

A continuación, se muestra un ejemplo de un comando:

ssh ubuntu@remote-host 
The authenticity of host 'remote-host (123.45.67.89)' can't be established.
RSA key fingerprint is 9f:48:89:f5:68:2f:cd:b3:19:95:40:43:98:09:0a:1a.
Are you sure you want to continue connecting (yes/no)?

Pero en algunas situaciones, como los scripts de shell, es necesario deshabilitar la comprobación del host. Lea este artículo para comprender cómo deshabilitar la verificación de host en clientes SSH en sistemas Linux.

Deshabilitar la verificación con el comando SSH

Puede definir el argumento StrictHostKeyChecking=node la línea de comandos para que el comando ssh omita la verificación de la clave del host.

ssh -o StrictHostKeyChecking=no user@remote-host 

Usa el archivo de configuración

También puede definir cadenas para deshabilitar la verificación de claves de host en el archivo de configuración. Debe crear un archivo ~/.ssh/configy deshabilitar la verificación de la clave de host agregando el siguiente contenido:

vi ~/.ssh/config 
Host *
    StrictHostKeyChecking no

Esto deshabilitará la verificación de host para todos los hosts a los que se conecte. En lugar de deshabilitar la comprobación de host para todos los hosts "*", sería más seguro especificar un host en particular:

Host 192.168.1.10
    StrictHostKeyChecking no

Además, establezca los permisos adecuados en el archivo para que sea de solo lectura para el usuario:

sudo chmod 400 ~/.ssh/config 

Eso es todo. Ha desactivado con éxito la comprobación estricta de claves de host en SSH.

Conclusión

En este tutorial, aprendió cómo deshabilitar la comprobación estricta de la clave de host al conectar la clave ssh a un host remoto.

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.