ssh-keyscan -H gibt jedes Mal andere Schlüssel zurück

ssh-keyscan -H gibt jedes Mal andere Schlüssel zurück

Ich erhalte bei jedem Ausführen andere Schlüssel ssh-keyscan -H some.hostname.example. Warum ist das so? Ändert der Server ständig die Schlüssel?

Die Schlüssel, die ich bei einem Lauf erhalte, scheinen auch nach einem nachfolgenden Lauf zu funktionieren, da ich keine Warnungen erhalte, wenn ich mich sshbeim Server anmelde, obwohl ich einen Schlüsselsatz gespeichert habe ~/.ssh/known_hosts.

Edit: Ich habe mich geirrt, die Schlüssel ändern sich nicht, aber die erste Spalte (mit dem Hostnamen) ändert sich. Sie steht auf dem Formular |1|<something base64>|<something else base64>. Ich bin mir nicht ganz sicher, was in Base64 kodiert ist, aber es scheint binär zu sein.

Antwort1

Der Hostname-Teil wird gehasht. Derselbe Name/dieselbe IP kann unterschiedliche Hashes haben (denken Sie daran, dass Sie ssh-keycheck -H verwendet haben). Das ist also ein normales Verhalten.

Antwort2

Die Antwort hierhttps://security.stackexchange.com/questions/56268/ssh-benefits-of-using-hashed-known-hostserklärt im Detail, wie das Hashing durchgeführt wird.

Der Kernpunkt besteht darin, dass es ein „Salt“ (zufällige zusätzliche Daten) enthält, um nicht denselben Hash zu haben und die Vorberechnung der Hashes für viele Eingabetexte zu vereinfachen. Das Salt ist zufällig, wird aber angezeigt und selbst nicht gehasht.

verwandte Informationen