Establezca StrictHostKeyChecking no
en su /etc/ssh/ssh_config
archivo, donde será una opción global utilizada por cada usuario en el servidor. O configúrelo en su ~/.ssh/config
archivo, donde será el predeterminado solo para el usuario actual. O puede usarlo en la línea de comando:
ssh -o StrictHostKeyChecking=no -l "$user" "$host"
Aquí hay una explicación de cómo funciona esto man ssh_config
(o vea esta versión más actual ):
StrictHostKeyChecking
Si este indicador se establece en "sí", ssh nunca agregará automáticamente claves de host al $HOME/.ssh/known_hosts
archivo y se niega a conectarse a hosts cuya clave de host ha cambiado. Esto proporciona la máxima protección contra los ataques de caballos de Troya, sin embargo, puede ser molesto cuando el /etc/ssh/ssh_known_hosts
archivo se mantiene mal o se realizan conexiones a nuevos hosts con frecuencia. Esta opción obliga al usuario a agregar manualmente todos los hosts nuevos. Si este indicador se establece en "no", sshagregará automáticamente nuevas claves de host a los archivos de hosts conocidos del usuario. Si este indicador se establece en "preguntar", las nuevas claves de host se agregarán a los archivos de host conocidos del usuario solo después de que el usuario haya confirmado que es lo que realmente quiere hacer, y
ssh se negará a conectarse a hosts cuya clave de host ha cambiado . Las claves de host de los hosts conocidos se verificarán automáticamente en todos los casos. El argumento debe ser "sí", "no" o "preguntar". El valor predeterminado es "preguntar".
ssh-keyscan
- Recopilar claves públicas sshSi ya conoce la lista de hosts a los que se conectará, puede emitir:
Puede dar la
-H
opción de tener resultados hash como valores predeterminados de ssh ahoraTambién le puede dar
-t keytype
eras keytype esdsa
,rsa
oecdsa
si usted tiene una preferencia en cuanto a qué tipo de clave para agarrar en lugar del predeterminado.Una vez que lo haya ejecutado
ssh-keyscan
, habrá rellenado previamente su archivo de hosts conocidos y no tendrá ssh pidiéndole permiso para agregar una nueva clave.fuente
ssh-keyscan -H myhost >> ~/.ssh/known_hosts
, o para todo el servidor,/etc/ssh/ssh_known_hosts
Puede agregar la huella digital a los servidores conocidos de cada servidor. Para un solo usuario:
fuente
Ignorar host
Ignora el HostKeyChecking. Para esto utilizo, por ejemplo:
Agregar host
Agregue la huella digital del host / servidor
.ssh/known_hosts
antes de su primera conexión. Esta es la forma más segura.fuente
/dev/null
? ¿No sería mejor hacerlossh -oStrictHostKeyChecking=no [email protected]
una vez para obtener la huella digital del servidor en el$HOME/.ssh/known_hosts
archivo, para que las conexiones posteriores se realicen sin una solicitud de confirmación?Ejecute el siguiente fragmento antes de intentarlo.
ps: estrictamente no para servidores de producción, tenga cuidado con ManInMiddle
fuente
Sin embargo, me gusta la respuesta de Tim para cosas únicas, si este es un host al que desea conectarse regularmente, crearía una entrada en su ~ / .ssh / config (créelo si el archivo no existe).
fuente