Syntax:
Die ssh-keyscan-Syntax ist unten angegeben. Es unterstützt mehrere Optionen für das Scannen von Schlüsseln.
ssh-keyscan [-46cHv] [-f Datei] [-p Port] [-T Zeitüberschreitung] [-t Typ] [Host | addrlist namelist] …Die andere Option von ssh-keysan:
Die Verwendung der verschiedenen ssh-keyscan-Optionen wird unten beschrieben.
Gelegenheit | Zweck |
-4 | Es wird verwendet, um ssh-keyscan zu zwingen, nur IPv4-Adressen zu verwenden. |
-6 | Es wird verwendet, um ssh-keyscan zu zwingen, nur IPv6-Adressen zu verwenden. |
-C | Es wird verwendet, um Zertifikate von Zielhosts anzufordern. |
-f Datei | Es wird verwendet, um die Hosts oder „adrlist namelist“-Paare aus der Datei zu erhalten. |
-H | Es wird verwendet, um alle Hostnamen und Adressen in der Ausgabe zu hashen. |
-p Port | Es wird verwendet, um den Remote-Host mit einem bestimmten Port zu verbinden. |
-T Zeitüberschreitung | Es wird verwendet, um das Timeout für Verbindungsversuche einzustellen. Der Standardwert für das Zeitlimit ist 5. |
-t eingeben | Es wird verwendet, um den Schlüsseltyp zu definieren, der von den zu scannenden Hosts erhalten wird. Die Typwerte können rsa, dsa, ecdsa usw. sein. |
-v | Es wird verwendet, um Debug-Meldungen über den Fortschritt des Scans auszudrucken. |
Die am häufigsten verwendeten Optionen des Befehls ssh-keyscan werden im nächsten Teil dieses Tutorials gezeigt.
Anforderungen:
Bevor Sie mit dem nächsten Teil dieses Tutorials beginnen, müssen Sie ein oder mehrere SSH-Schlüsselpaare erstellen, um die in diesem Tutorial verwendeten Befehle zu testen. Bevor Sie einen ssh-keyscan-Befehl ausführen, gehen Sie wie folgt vor.
- Aktivieren Sie den SSH-Dienst auf Ubuntu, wenn er nicht zuvor aktiviert wurde. Hier wurden zwei lokale Ubuntu-Benutzerkonten als Client-Rechner und als Server-Rechner verwendet.
- Generieren Sie die mehreren SSH-Schlüsselpaare auf dem Servercomputer mit ssh-keygen Befehl, der den öffentlichen Schlüssel und den privaten Schlüssel erstellt. Die privaten Schlüssel werden auf dem Remote-Server und die öffentlichen Schlüssel sicher im Client gespeichert.
- Als nächstes fügen Sie die öffentlichen Schlüssel zum Client-Rechner hinzu.
Führen Sie ssh-keyscan auf verschiedene Arten aus, um die Schlüssel zu scannen:
Sie müssen sich beim Clientcomputer anmelden, um die in diesem Lernprogramm verwendeten ssh-keyscan-Befehle zu überprüfen. Führen Sie zuerst Folgendes aus:ssh-keyscan Befehl ohne Option zum Lesen aller öffentlichen Schlüssel von der IP-Adresse 10.0.2.15. Die Ausgabe des Befehls kann je nach der im Befehl verwendeten IP-Adresse oder dem Hostnamen variieren. Da im Befehl kein Schlüsseltyp definiert wurde, werden alle beim Scan gefundenen Schlüssel abgerufen.
$ ssh-keyscan 10.0.2.10Die Ausgabe zeigt, dass der obige Befehl verschiedene Schlüssel scannt, wie z. B.:B. rsa, ecdsa und ed25519.
Führen Sie den folgenden ssh-keyscan durch Befehl mit der Option -p, um alle öffentlichen Schlüssel von der IP-Adresse 10.0.2.15 auf Portnummer 22 zu lesen. Wie beim vorherigen Befehl kann die Ausgabe des Befehls je nach der im Befehl verwendeten IP-Adresse oder dem Hostnamen variieren.
$ ssh-keyscan -P 22. 10.0.2.15Die Ausgabe zeigt die verschiedenen Schlüssel, die mit dem obigen Befehl auf Port Nummer 22 gescannt wurden. Alle ssh-keyscan-Befehle in diesem Tutorial wurden auf dem lokalen Server ausgeführt, der nur Portnummer 22 unterstützt. Daher ist die Ausgabe des ssh-keyscan-Befehls ohne Option und mit der Option -p dieselbe.
Führen Sie den folgenden ssh-keyscan durch Befehlen Sie mit das -t Option zum Lesen aller öffentlichen Schlüssel der rsa Geben Sie 10.0.2.15 von der IP-Adresse ein. Wie beim vorherigen Befehl kann die Ausgabe des Befehls abhängig von der im Befehl verwendeten IP-Adresse oder dem Hostnamen variieren. Alle Arten von öffentlichen Schlüsseln wurden in den beiden vorherigen Befehlen von ihren jeweiligen IP-Adressen abgerufen. Aber die Ausgabe des hier verwendeten Befehls holt nur alle rsa-key-bezogenen Informationen.
$ ssh-keyscan -T rsa 10.0.2.15Die folgende Ausgabe zeigt, dass es eine rsa gibt öffentlicher Schlüssel, der in der IP-Adresse vorhanden ist, 10.0.2.15.
Wenn Sie die known_hosts aktualisieren möchten Datei mit dem Fingerabdruck des jeweiligen Hostnamens oder der IP-Adresse benötigen Sie das -H Option mit dem ssh-keyscan Befehl. Führen Sie den folgenden Befehl aus, um die known_hosts zu aktualisieren Datei im Pfad ~/.ssh/known_hosts mit dem gescannten Fingerabdruck in der IP-Adresse 10.0.2.15.
$ ssh-keyscan -H 10.0.2.15>> ~/.ssh/known_hostsDie folgende Ausgabe zeigt, dass fünf Einträge an known_hosts angehängt wurden Datei.
Die mehreren Optionen können mit dem Befehl ssh-keyscan verwendet werden. Führen Sie den folgenden Befehl aus, um die rsa abzurufen Schlüssel von known_hosts Datei und senden Sie die Ausgabe an Sortieren nach Befehl zum Drucken der eindeutigen sortierten Werte der rsa Taste. Zwei Optionen wurden verwendet ssh-keyscan Befehl. das -T Option wurde verwendet, um die rsa zu ändern Taste und das -F Die Option wurde verwendet, um die Schlüssel von den known_hosts zu erhalten Datei. Die Pipe (|) verwendete den Befehl, um die rsa abzurufen Schlüssel aus der Datei für den Sortierbefehl.
$ ssh-keyscan -T rsa -F ~/.ssh/bekannte_Hosts | sortieren nach -u ~/.ssh/known_hostsDie folgende Ausgabe zeigt, dass vier RSA-Schlüssel aus der Datei known_hosts abgerufen und die Schlüssel in sortierter Reihenfolge gedruckt wurden.
Diplom:
Die verschiedenen Möglichkeiten zum Scannen der öffentlichen Schlüssel vom Client-Rechner mit dem Befehl ssh-keyscan wurden in diesem Tutorial mit den beiden lokalen Accounts des localhost beschrieben. Sie können den gleichen Vorgang ausführen, um die öffentlichen Schlüssel des Remote-Hosts zu scannen.