Bei der SSH-Kommunikation zwischen Server und Client wird der Client durch seinen privaten Schlüssel authentifiziert. Ich möchte wissen, woher der Server weiß, welcher öffentliche Schlüssel zum Client gehört, wenn der Server mehr als einen öffentlichen Schlüssel in seinen authorized_keys
hat Datei.
Akzeptierte Antwort:
Der Client sendet seine öffentliche Schlüssel-ID und der Server prüft, ob sich dieser Schlüssel in der Liste der authorized_keys
befindet .
-
Der Client sendet zunächst eine ID für das Schlüsselpaar, mit dem er sich beim Server authentifizieren möchte.
-
Der Server überprüft die Datei „authorized_keys“ des Kontos, bei dem der Client versucht, sich für die Schlüssel-ID anzumelden.
-
Wenn in der Datei ein öffentlicher Schlüssel mit passender ID gefunden wird, generiert der Server eine Zufallszahl und verwendet den öffentlichen Schlüssel, um die Zahl zu verschlüsseln.
-
Der Server sendet dem Client diese verschlüsselte Nachricht.
Wenn der Client tatsächlich über den zugehörigen privaten Schlüssel verfügt, kann er die Nachricht mit diesem Schlüssel entschlüsseln und die ursprüngliche Nummer preisgeben.
https://www.digitalocean.com/community/tutorials/understanding-the-ssh-encryption-and-connection-process