Behebung von „REMOTE HOST IDENTIFICATION HAT SICH GEÄNDERT!“ auf der Serverseite

Behebung von „REMOTE HOST IDENTIFICATION HAT SICH GEÄNDERT!“ auf der Serverseite

Beachten Sie, dass es bei dieser Frage um die Behebung des Problems „REMOTE HOST IDENTIFICATION HAT SICH GEÄNDERT!“ geht.auf der Serverseite.

Ich kenne die Implikation und ich weiß genau, was ich tue –

  • Ich installiere meinen Server neu/aktualisiere ihn und möchte, dass der Vorgang so reibungslos wie möglich abläuft.
  • Während der Neuinstallation/Aktualisierung muss ich möglicherweise mehrmals zwischen der alten und der neuen Version hin- und herbooten.

Daher muss ich die Warnung auf der Clientseite so weit wie möglich eliminieren. Andernfalls muss ich meine ~/known_hostsDatei unnötig hin und her schieben.

Wie kann ich also den Fingerabdruck/ECDSA-Schlüssel meines neuen Servers wie zuvor einstellen?

Antwort1

Update: Nachdem ich ein bisschen darüber nachgedacht habe, werde ich meine Empfehlung wohl dahingehend ändern, dass ich nur die Schlüsseldateien und die Konfigurationseinträge, die auf sie verweisen, kopiere. Die Schlüsseldateien befinden sich alle in /etc/ssh/, sind benannt ssh_host_<keytype>_keyund haben jeweils eine entsprechende öffentliche Schlüsseldatei mit einer .pubErweiterung. Hier ist ein Beispiel mit den Schlüsseln dsa, ecdsa, ed25519 und rsa:

$ cd /etc/ssh
$ ls -l ssh_host_*key*
-rw------- 1 root root  668 Apr  8 03:43 ssh_host_dsa_key
-rw-r--r-- 1 root root  606 Apr  8 03:43 ssh_host_dsa_key.pub
-rw------- 1 root root  227 Apr  8 03:43 ssh_host_ecdsa_key
-rw-r--r-- 1 root root  178 Apr  8 03:43 ssh_host_ecdsa_key.pub
-rw------- 1 root root  411 Apr  8 03:43 ssh_host_ed25519_key
-rw-r--r-- 1 root root   98 Apr  8 03:43 ssh_host_ed25519_key.pub
-rw------- 1 root root 1679 Apr  8 03:43 ssh_host_rsa_key
-rw-r--r-- 1 root root  398 Apr  8 03:43 ssh_host_rsa_key.pub

Und es gibt möglicherweise HostKeyEinträge in /etc/ssh/sshd_config, die sshd anweisen, diese zu verwenden. In meinem Fall sind die Dateien nur die Standarddateien, daher sind die relevanten Zeilen auskommentiert:

$ grep HostKey /etc/ssh/sshd_config 
#HostKey /etc/ssh/ssh_host_rsa_key
#HostKey /etc/ssh/ssh_host_dsa_key
#HostKey /etc/ssh/ssh_host_ecdsa_key
#HostKey /etc/ssh/ssh_host_ed25519_key

Sie sollten in der Lage sein, die Schlüsseldateien vom ursprünglichen Server zu klonen (achten Sie darauf, dass die alten Berechtigungen beibehalten werden). Wenn es unkommentierte HostKeyEinträge gibt, sollten Sie diese ebenfalls zur neuen Konfigurationsdatei hinzufügen sshd_config. Wenn Sie dort weitere nicht standardmäßige Einstellungen haben, sollten Sie diese ebenfalls kopieren.

Ursprünglich hatte ich empfohlen, einfach das gesamte /etc/ssh/Verzeichnis vom alten auf den neuen Server zu klonen. Das hat den Vorteil, dass alle zusätzlichen Einstellungsänderungen, die Sie vorgenommen haben, automatisch kopiert werden. Der Nachteil (und der Grund, warum ich mich dazu entschieden habe, es nicht zu empfehlen) ist, dass die alte Konfiguration möglicherweise keine Änderungen enthält, die zur Verbesserung der Sicherheit vorgenommen wurden.

Beispielsweise verfügt Ihre alte Konfiguration möglicherweise nicht über eine /etc/ssh/moduli-Datei mit benutzerdefinierten Diffie-Hellman-Modulen, und die neue Betriebssystemversion generiert möglicherweise keine automatisch. Dies wäre ein Problem, da das Standardmodul nicht sehr sicher ist und da jeder früher dasselbe verwendete, war ein Angriff darauf ein Angriff auf alle. SieheHierUndHierfür weitere Informationen.

Wenn Ihre „alte“ Serverkonfiguration nicht zu alt ist, sollte sie bereits eine benutzerdefinierte Moduli-Datei enthalten, aber das ist nur ein Beispiel; es gibt wahrscheinlich noch andere Dinge, die aktualisiert werden sollten, daher ist die Verwendung einer weitgehend neuen Konfiguration wahrscheinlich besser. Übrigens verursacht die Verwendung anderer Moduli keinen Fehler vom Typ „ID GEÄNDERT“, wenn diese Datei also auf dem alten Server vorhanden ist, müssen Sie sie nicht kopieren.

verwandte Informationen