Frage So entfernen Sie einen alten SSH-Schlüssel [duplizieren]


Diese Frage hat hier bereits eine Antwort:

Ich habe ein Skript, das dynamisch Amazon EC2-Instanzen erstellt und ihren ssh-Schlüssel zu meinen ~ / .ssh / known_hosts hinzufügt. Wann immer ich die Instanz aktualisieren muss, indem ich sie beende und neu erzeuge, bekomme ich anstößige Warnmeldungen wie:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    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
<fingerprint>.
Please contact your system administrator.
Add correct host key in ~/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in ~/.ssh/known_hosts:94
  remove with: ssh-keygen -f "~/.ssh/known_hosts" -R <hostname>
Password authentication is disabled to avoid man-in-the-middle attacks.
Keyboard-interactive authentication is disabled to avoid man-in-the-middle attacks.

Die Warnung ist verständlich, aber selbst wenn ich diesen Befehl verwende, um den alten Schlüssel zu entfernen, gibt die Anmeldung immer noch die Warnung:

Warning: Permanently added '<hostname>' (ECDSA) to the list of known hosts.
Warning: the ECDSA host key for '<hostname>' differs from the key for the IP address '<ip>'
Offending key for IP in ~/.ssh/known_hosts:96

Die Lösung ist, diese Zeile in meinem manuell zu entfernen known_hostsAber gibt es eine Möglichkeit, dies zu automatisieren, indem Sie vorher einen einzelnen Befehl ausführen?


24
2017-10-02 16:56


Ursprung




Antworten:


Von man ssh-keygen (SSH-KEYGEN (1))

 -R hostname
         Removes all keys belonging to hostname from a known_hosts file.  This option is useful to
         delete hashed hosts (see the -H option above).

Versuche dies:

ssh-keygen -R hostname [-f known_hosts_file]


48
2017-10-02 17:09



Er hat genau das gemacht, das Problem ist, dass er den Schlüssel auch nicht aus der IP entfernt hat. - Joó Ádám