Usando la ssh
línea de comando (OpenSSH), ¿puedo especificar la huella digital de la clave de host del servidor?
Esto es posible con winscp.com usando (por ejemplo) -hostkey="ssh-rsa 2048 AA:BB:CC...etc
He leído la página de manual un par de veces, me disculpo si me he perdido lo obvio allí.
No quiero simplemente aceptar automáticamente una clave de host, y no quiero requerir que el usuario actualice su known_hosts
clave, sino especificar la clave de host de alguna forma en la línea de comandos.
ssh
ssh-keys
public-key
hostkey
payo
fuente
fuente
Respuestas:
No hay una opción de línea de comandos en OpenSSH para pasar una huella digital de clave de host.
Aunque puede usar un archivo temporal (con el mismo formato que el
known_hosts
) yssh
usarlo con-o UserKnownHostsFile
:Consulte las páginas de comando man
ssh
(para las-o
) yssh_config
(para lasUserKnownHostsFile
).También puede considerar usar el
StrictHostKeyChecking yes
.Como se sugiere en Auto aceptar la huella digital de la clave rsa desde la línea de comandos , puede escribir un pequeño script que le permita lograr eso:
Si llama al script
ssh_known_host
, puede usarlo, pasando la clave como primer argumento:fuente
-o UserKnownHostsFile=<(echo "hostname ssh-rsa ...")
no funciona?<()
se puede leer solo una vez, mientrasssh
lee el archivo repetidamente.