Pregunta ¿Cómo puedo evitar la verificación de host de SSH para hosts conocidos?


Recibo el siguiente mensaje cada vez que intento conectar un servidor usando SSH. Escribo "sí", pero ¿hay alguna forma de aowear esto?

The authenticity of host '111.222.333.444 (111.222.333.444)' can't be established.
RSA key fingerprint is f3:cf:58:ae:71:0b:c8:04:6f:34:a3:b2:e4:1e:0c:8b.
Are you sure you want to continue connecting (yes/no)? 

127


origen


/ dev / null existe para aquellos que piensan que son inmunes al hombre en los ataques medios :) - Tim Post♦
Peor parte: tipo y para ahorrar algo de tiempo, y se queja: Please type 'yes' or 'no':  (hmph) - ADTC


Respuestas:


Utilizar el -o opción,

ssh -o "StrictHostKeyChecking no" user@host

180



Es posible que desee utilizar un archivo de identidad alternativo con la bandera '-i' - MUY Belgium
¿De qué sirve usar un archivo de identidad alternativo? Es decir, si te estás conectando a un host comprometido, ¿qué diferencia tiene en la forma de autenticarte? No es como si el host comprometido pudiera robar tu clave también. - Dagelf


Agregue las siguientes líneas al comienzo de /etc/ssh/ssh_config...

Host 192.168.0.*
   StrictHostKeyChecking no
   UserKnownHostsFile=/dev/null

Opciones:

  • La subred de host puede ser * para permitir el acceso irrestricto a todas las direcciones IP.
  • Editar /etc/ssh/ssh_config para la configuración global o ~/.ssh/config para la configuración específica del usuario.

Ver http://linuxcommando.blogspot.com/2008/10/how-to-disable-ssh-host-key-checking.html


78



Lástima que solo puedo votarte una vez. Establecer KnownHosts en / dev / null es genio. - J0hnG4lt
Tu el más inteligente. - Darth Egregious
¡Decir ah! Dile a mi esposa. - JimFred


Solo debe obtener esto la primera vez que se conecta a un nuevo host. Después de responder yes el host se almacena en ~/.ssh/known_hosts y no se le pedirá la próxima vez que se conecte.

Tenga en cuenta que si ~/.ssh/known_hosts no se puede escribir por ningún motivo (por ejemplo, problema de permisos), entonces se le solicitará cada vez que se conecte.


26



La pregunta es ¿hay alguna forma de evitar el aviso? - shantanuo
Intenté agregar "CheckHostIP no" al archivo / etc / ssh / ssh_config. Pero no parece estar funcionando - shantanuo
sudo chown -R usuario: usuario .ssh; sudo chmod 700 .ssh; sudo chmod -R 600 .ssh /; ssh-keygen -R $ hostname y reconexión que debería eliminar TODOS los problemas y SÓLO volver a solicitar si una ssk_Hostkey está vacía | cambiado o eres víctima de un MITM. - linuxdev2013
dice "todo el tiempo", por lo que esta respuesta es muy apropiada - tarikakyol


La mejor manera (porque no sacrifica la seguridad) es conectarse una vez a todas las computadoras desde un cliente (se le preguntará cada vez, siempre responda que sí). Como se señaló en la otra respuesta, las claves se almacenarán en ~ / .ssh / known_hosts. Luego, copie este archivo en cada computadora cliente a la que más tarde desee conectarse (posiblemente para cada cuenta de usuario que use). Entonces, todas estas cuentas "conocerán" las computadoras, por lo tanto, no habrá una solicitud.

La ventaja de desactivar el mensaje es que SSH realmente puede verificar si hay un ataque MITM.


11



Aunque, si a menudo ssh a través de conexiones hacia adelante, querrá agregar esto a / etc / ssh / ssh_config: Host 127.0.0.1 NoHostAuthenticationForLocalhost sí - Dagelf


Si desea deshabilitar la confirmación, en lugar de la autenticación, puede usar la opción: "-o CheckHostIP = no"

ssh -i sergeys_rsa_key.pem -o CheckHostIP=no brin@8.8.8.8

1



El OP ya obtuvo la misma respuesta y la aceptó. - Ayan


Probablemente esto se deba a que su servidor de clave ssh ha cambiado, ya que la IP del servidor o el dominio es el mismo, pero la clave ssh no coincide.

Debe eliminar la clave almacenada en /home/$user/.ssh/known_hosts para evitar este mensaje

Lo arreglé eliminando todas las claves en ese archivo, por lo que se creó un nuevo token para este nombre de dominio.


0



Llave cambiado produce un mensaje mucho más feo con una caja de atsigns y WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!  y IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! en mayúsculas. El mensaje en la pregunta ocurre solo si hay no ya una entrada en known_hosts. - dave_thompson_085