Woher erhält Putty den öffentlichen Schlüssel des Server-Hosts?

Woher erhält Putty den öffentlichen Schlüssel des Server-Hosts?

Ich melde mich bei einer Debian-Box an und erhalte eine Sicherheitswarnung, die mir den öffentlichen Hostschlüssel anzeigt. Wenn ich den vollständigen öffentlichen Schlüssel, der von PuTTY gemeldet wird, mit dem in ~/.ssh/authorized_keys vergleiche, stelle ich fest, dass sie nicht übereinstimmen.

Wurde ich mit MITM in Verbindung gebracht oder verstehe ich etwas falsch?

Antwort1

Mir ist nicht klar, welche Rolle der private Schlüssel /etc/ssh/ssh_host_${type}_key bei der Verbindung spielt. Mir ist nicht klar, wie es hilft, wenn mir der Server einen öffentlichen Schlüssel sendet, wenn ein Angreifer einfach prüfen könnte, welcher öffentliche Schlüssel vom angegriffenen Server gesendet wird, sich dazwischenschalten und genau diesen öffentlichen Schlüssel fälschen könnte

Um es klarzustellen: Der Server sendet Ihnen Ihren öffentlichen Schlüssel nicht erneut. Der Server hatseine eigenevöllig separater Schlüssel, den es Ihnen sendet – der „Host-Schlüssel“. Sowohl der öffentliche als auch der private Teil des Host-Schlüssels werden in /etc/ssh gespeichert.

Der ServerNurden öffentlichen Schlüssel; es sendet auch eineUnterschrifterfolgt mit dem entsprechenden privaten Schlüssel, den der Client als Beweis verwenden kann. (Die zu signierenden Daten sind für jede Verbindung eindeutig.) Ein Angreifer könnte denselben öffentlichen Schlüssel senden, aber keine Signatur erstellen.

So funktionieren Zertifikate auch in SSL/TLS (HTTPS und dergleichen).

Ihr eigener Authentifizierungsschlüssel wird vom Server auf die gleiche Weise überprüft. PuTTY sendet also nicht nur Ihren öffentlichen Schlüssel, sondern signiert die Nachricht mit Ihrem privaten Schlüssel, sodass sich niemand anders allein durch einen Blick auf Ihre Datei „authorized_keys“ in Ihrem Namen anmelden kann.

verwandte Informationen