Recibí el conocido mensaje de advertencia cuando intento ingresar a un servidor:
$ ssh whateverhost
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ECDSA key sent by the remote host is
SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxx/xxxxxxxxx/xxxxxxx.
Please contact your system administrator.
Add correct host key in /home/user/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /home/user/.ssh/known_hosts:10
ECDSA host key for ipofmyhost has changed and you have requested strict checking.
Host key verification failed.
Y sé por qué porque cambié la ip de dicho servidor. Pero si no fuera así, ¿cómo podría verificar la huella digital de la clave ECDSA enviada por el host remoto?
He intentado hacerlo de la siguiente manera:
echo -n ipofthehost | sha256sum
Pero no obtengo la misma huella digital. También probé "hostname, ip" como en aws pero no obtuve ninguna coincidencia.
Si elimino la entrada de mi archivo known_hosts e intento ejecutar ssh nuevamente, se realiza correctamente y dice lo siguiente:
ECDSA key fingerprint is SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxx/xxxxxxxxx/xxxxxxx.
Are you sure you want to continue connecting (yes/no)?
Entonces, ¿a qué se aplica el sha256sum para obtener la huella digital y cómo podría verificarlo?
/etc/ssh/ssh_host_ecdsa_key.pub
para obtener la huella digital. Lo acabo de hacer.