Überprüfung der SSH-Hostauthentizität
Prüfung der known_hosts-Datei
Die known_hosts-Datei ist ein entscheidender Bestandteil des SSH-Hostauthentifizierungsprozesses. In dieser Datei werden die öffentlichen Schlüssel der SSH-Server gespeichert, mit denen Sie in der Vergangenheit verbunden haben. Sie können den Inhalt der known_hosts-Datei mit dem folgenden Befehl anzeigen:
cat ~/.ssh/known_hosts
Dadurch wird die Liste der bekannten Hosts und ihre entsprechenden öffentlichen Schlüssel angezeigt.
Manuelle Überprüfung des SSH-Hostschlüssels
Wenn Sie sich zum ersten Mal mit einem SSH-Server verbinden oder wenn sich der öffentliche Schlüssel des Servers geändert hat, müssen Sie möglicherweise den Hostschlüssel manuell überprüfen. Dies können Sie wie folgt tun:
-
Verbinden Sie sich mit dem SSH-Server mithilfe des ssh
-Befehls:
ssh [email protected]
-
Der SSH-Client zeigt den Fingerabdruck des öffentlichen Schlüssels des Servers an und fordert Sie auf, ihn zu überprüfen:
The authenticity of host 'example.com (192.168.1.100)' can't be established.
RSA key fingerprint is SHA256:abcd1234efgh5678ijkl9012mnop3456qrst.
Are you sure you want to continue connecting (yes/no/[fingerprint])?
-
Überprüfen Sie den Fingerabdruck, indem Sie ihn mit dem erwarteten Wert vergleichen, den Sie von einer vertrauenswürdigen Quelle (z. B. dem Serveradministrator) erhalten können.
-
Wenn der Fingerabdruck übereinstimmt, geben Sie yes
ein, um den öffentlichen Schlüssel des Servers zur known_hosts-Datei hinzuzufügen und die Verbindung herzustellen.
Automatisierung der SSH-Hostschlüsselüberprüfung
Um den SSH-Hostschlüsselüberprüfungsprozess zu automatisieren, können Sie den ssh-keyscan
-Befehl verwenden. Mit diesem Tool können Sie die öffentlichen Schlüssel von SSH-Servern abrufen und sie zur known_hosts-Datei hinzufügen. Hier ist ein Beispiel:
ssh-keyscan -H example.com >> ~/.ssh/known_hosts
Dieser Befehl fügt den öffentlichen Schlüssel des example.com
-Servers zur known_hosts-Datei hinzu.
Indem Sie diese Techniken verstehen und anwenden, können Sie die Authentizität von SSH-Hosts effektiv überprüfen und die Sicherheit Ihrer Remote-Verbindungen gewährleisten.