Heim > Artikel > Betrieb und Instandhaltung > So überprüfen Sie die SSH-Version unter Linux
Überprüfungsmethode: 1. Öffnen Sie „/etc/ssh/sshd_config“ und überprüfen Sie das Feld „Protokoll 2“, bedeutet dies, dass der Server nur SSH2 unterstützt " angezeigt wird, bedeutet dies, dass der Server auch SSH2 unterstützt. Beide werden unterstützt. 2. Erzwingen Sie, dass ssh ein bestimmtes SSH-Protokoll verwendet, und beurteilen Sie, indem Sie die Antwort des SSH-Servers überprüfen. 3. Verwenden Sie das Tool scanssh mit der Syntax „sudo scanssh -s ssh ip address“.
Die Betriebsumgebung dieses Tutorials: Linux7.3-System, Dell G3-Computer.
Secure Shell (SSH) ermöglicht die Remote-Anmeldung oder Remote-Ausführung von Befehlen über einen verschlüsselten sicheren Kommunikationskanal. SSH soll unsichere Klartextprotokolle wie Telnet, RSH und Rlogin ersetzen. SSH bietet eine Reihe erforderlicher Funktionen wie Authentifizierung, Verschlüsselung, Datenintegrität, Autorisierung und Weiterleitung/Tunneling.
SSH existiert in zwei Versionen 1 und 2 (SSH1 und SSH2). Was ist der Unterschied zwischen diesen beiden? Wie überprüfe ich die SSH-Protokollversion unter Linux?
SSH1 vs. SSH2
Es gibt einige geringfügige Versionsunterschiede in der SSH-Protokollspezifikation, es gibt jedoch zwei Hauptversionen: SSH1 (Version 1.XX) und SSH2 (Version 2.00).
Tatsächlich sind SSH1 und SSH2 zwei völlig unterschiedliche und inkompatible Protokolle. SSH2 verbessert viele Aspekte von SSH1 erheblich. Erstens ist SSH ein Makrodesign, das in einem einzigen Protokoll zusammengefasst ist. SSH2 bietet leistungsfähigere Sicherheitsfunktionen wie MAC-basierte Integritätsprüfung und flexible Sitzungsschlüsselaktualisierungen , vollständig ausgehandelte Verschlüsselungsalgorithmen, Public-Key-Zertifikate und mehr.
SSH2 ist von der IETF standardisiert und seine Implementierung ist in der Branche weit verbreitet und akzeptiert. Aufgrund der Beliebtheit und der Verschlüsselungsvorteile von SSH2 gegenüber SSH1 haben viele Produkte die Unterstützung für SSH1 eingestellt. Zum Zeitpunkt des Verfassens dieses Artikels unterstützt OpenSSH noch SSH1 und SSH2, allerdings deaktivieren OpenSSH-Server in allen modernen Linux-Distributionen SSH1 standardmäßig.
Linux SSH-Version prüfen
Methode 1
Wenn Sie die vom lokalen OpenSSH-Server unterstützte SSH-Protokollversion überprüfen möchten, können Sie auf die Datei /etc/ssh/sshd_config verweisen. Öffnen Sie /etc/ssh/sshd_config mit einem Texteditor und sehen Sie sich das Feld „Protokoll“ an.
Wenn es wie folgt angezeigt wird, bedeutet das, dass der Server nur SSH2 unterstützt.
Protocol 2
Wenn es wie folgt angezeigt wird, bedeutet dies, dass der Server sowohl SSH1 als auch SSH2 unterstützt.
Protocol 1
Methode 2
Wenn Sie nicht auf /etc/ssh/sshd_config zugreifen können, weil der OpenSSH-Dienst auf dem Remote-Server ausgeführt wird. Sie können einen SSH-Client namens ssh verwenden, um die unterstützten Protokolle zu überprüfen. Konkret zwingt es SSH dazu, ein bestimmtes SSH-Protokoll zu verwenden, und dann überprüfen wir die Antwort des SSH-Servers.
Der folgende Befehl zwingt SSH zur Verwendung von SSH1:
ssh -1 user@remote_server
Der folgende Befehl zwingt SSH zur Verwendung von SSH2:
ssh -2 user@remote_server
Wenn der Remote-SSH-Server nur SSH2 unterstützt, wird die erste Option mit „-1“ wie der folgende Fehler angezeigt Nachricht:
Protocol major versions differ: 1 vs. 2
Wenn der SSH-Server sowohl SSH1 als auch SSH2 unterstützt, sind beide Befehle gültig.
Methode 3
Eine andere Möglichkeit, die Version zu überprüfen, besteht darin, ein SSH-Scan-Tool namens scanssh auszuführen. Dieses Befehlszeilentool ist nützlich, wenn Sie eine Gruppe von IP-Adressen oder ein gesamtes lokales Netzwerk überprüfen möchten, um einen SSH1-kompatiblen SSH-Server zu aktualisieren.
Das Folgende ist die grundlegende Syntax zum Scannen der SSH-Version.
sudo scanssh -s ssh -n [ports] [IP addresses or CIDR prefix]
Mit der Option „-n“ kann der zu scannende SSH-Port angegeben werden. Sie können die Duhao-Trennung verwenden, um mehrere Ports zu scannen. Ohne diese Option scannt scanssh standardmäßig Port 22.
Verwenden Sie den folgenden Befehl, um den SSH-Server im lokalen Netzwerk 192.168.1.0/24 zu erkennen und die Version des SSH-Protokolls v zu überprüfen:
sudo scan -s ssh 192.168.1.0/24
Wenn scanssh „SSH-1.XX-XXXX“ für eine bestimmte IP meldet Adresse. Dies bedeutet, dass die vom jeweiligen SSH-Server unterstützte Mindestversion SSH1 ist. Wenn der Remote-Server nur SSH2 unterstützt, zeigt scanssh „SSH-2.0-XXXX“ an.
Verwandte Empfehlungen: „Linux-Video-Tutorial“
Das obige ist der detaillierte Inhalt vonSo überprüfen Sie die SSH-Version unter Linux. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!