ssh: remote host identification has changed

ssh: remote host identification has changed

SSH meldet mitunter folgenden Fehler:

ssh bob@192.168.33.33
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    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 RSA key sent by the remote host is
xx:xx...xx:xx
Please contact your system administrator.
Add correct host key in /home/bob/.ssh/known_hosts to get rid of this message.
Offending RSA key in /home/bob/.ssh/known_hosts:76
  remove with: ssh-keygen -f "/home/bob/.ssh/known_hosts" -R 192.168.33.33
RSA host key for 192.168.33.33 has changed and you have requested strict checking.
Host key verification failed.

Interpretation: Wenn sich auf einer bestehenden IP-Adresse/DNS-Name ein neuer Server meldet, sollte man vorsichtig sein. Das bedeutet im schlimmsten Fall, dass man sich auf einem fremden Server einloggt und diesem somit seine Credentials gibt. Diese kann ein Angreifer dann für den richtigen Server verwenden.

Wenn man jedoch sichergestellt hat, dass man auf dem richtigen Server landet und ssh einen Fehler meldet, muss man den bekannten SSH-Server entfernen. Neuere Versionen von SSH zeigen auch Abhilfe auf (s.o):

ssh-keygen -f "/home/bob/.ssh/known_hosts" -R 192.168.33.33

löscht den bekannten Host aus der Liste. Man kann sich im Anschluss wie gewohnt auf den neuen Host verbinden, wenn man die Sicherheitsabfrage bestätigt.