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
) y ssh
usarlo con -o UserKnownHostsFile
:
ssh -o "UserKnownHostsFile my_temp_known_host" host.example.com
Consulte las páginas de comando man ssh
(para las -o
) y ssh_config
(para las UserKnownHostsFile
).
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:
#!/bin/bash
TEMPFILE=$(mktemp)
echo "$1" > $TEMPFILE
ssh -o "UserKnownHostsFile $TEMPFILE" ${@:2}
rm $TEMPFILE
Si llama al script ssh_known_host
, puede usarlo, pasando la clave como primer argumento:
ssh_known_host 'github.com ssh-dss AAAAB3NzaC1kc3MAAACBANGFW2P9xlGU3zWrymJgI/lKo//ZW2WfVtmbsUZJ5uyKArtlQOT2+WRhcg4979aFxgKdcsqAYW3/LS1T2km3jYW/vr4Uzn+dXWODVk5VlUiZ1HFOHf6s6ITcZvjvdbp6ZbpM+DuJT7Bw+h5Fx8Qt8I16oCZYmAPJRtu46o9C2zk1AAAAFQC4gdFGcSbp5Gr0Wd5Ay/jtcldMewAAAIATTgn4sY4Nem/FQE+XJlyUQptPWMem5fwOcWtSXiTKaaN0lkk2p2snz+EJvAGXGq9dTSWHyLJSM2W6ZdQDqWJ1k+cL8CARAqL+UMwF84CR0m3hj+wtVGD/J4G5kW2DBAf4/bqzP4469lT+dF2FRQ2L9JKXrCWcnhMtJUvua8dvnwAAAIB6C4nQfAA7x8oLta6tT+oCk2WQcydNsyugE8vLrHlogoWEicla6cWPk7oXSspbzUcfkjN3Qa6e74PhRkc7JdSdAlFzU3m7LMkXo1MHgkqNX8glxWNVqBSc0YRdbFdTkL0C6gtpklilhvuHQCdbgB3LBAikcRkDp+FCVkUgPC/7Rw==' git@github.com