Ich habe die bekannte Warnmeldung erhalten, wenn ich versuche, auf einen Server zu sshen:
$ 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.
Und ich weiß warum, weil ich die IP eines solchen Servers geändert habe. Aber wenn dem nicht so wäre, wie könnte ich den Fingerabdruck für den vom Remote-Host gesendeten ECDSA-Schlüssel überprüfen?
Ich habe es versucht durch:
echo -n ipofthehost | sha256sum
Aber ich bekomme nicht den gleichen Fingerabdruck. Ich habe auch versucht "hostname, ip" wie in aws, aber ich habe keine Übereinstimmung.
Wenn ich den Eingang aus meiner known_hosts-Datei lösche und erneut versuche, ssh auszuführen, ist dies erfolgreich und es wird Folgendes mitgeteilt:
ECDSA key fingerprint is SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxx/xxxxxxxxx/xxxxxxx.
Are you sure you want to continue connecting (yes/no)?
Worauf bezieht sich die sha256sum, um den Fingerabdruck zu erhalten, und wie kann ich ihn überprüfen?
/etc/ssh/ssh_host_ecdsa_key.pub
den Fingerabdruck abrufen . Ich habe es gerade getan.