In Linux-basierten Systemen wie Debian 11 , SSH , oder Secure Shell ist eine Art verschlüsseltes Protokoll, das zur Verwaltung und Kommunikation mit Servern verwendet wird. Wenn Sie in Ihrem Debian 11-System arbeiten, verbringen Sie möglicherweise viel Zeit in einer Terminalsitzung, die über SSH mit einem Remote-Server verbunden ist. Diese verschlüsselte Verbindung wird auch verwendet, um Serverbefehle, Portweiterleitung, X11-Tunneling auszuführen und den Remote-Server zu verwalten.
Lassen Sie uns nun das SSH-Schlüsselpaar besprechen . Um die Client-Identität gegenüber einem SSH-Server zu verifizieren, stellt SSH ein Schlüsselpaar zur Verfügung, das aus zwei kryptografisch sicheren Schlüsseln besteht:Privater Schlüssel und Öffentlicher Schlüssel .
Sie müssen den privaten Schlüssel vertraulich behandeln. Wenn ein Angreifer Zugriff auf Ihren privaten Schlüssel erhält, kann er sich ohne zusätzliche Authentifizierung an den mit Hilfe eines öffentlichen Schlüssels eingerichteten Servern anmelden. Im Gegensatz dazu kann der öffentliche Schlüssel frei weitergegeben werden und fügt dem System keinen Schaden zu. Dieser öffentliche Schlüssel wird verwendet, um Nachrichten zu verschlüsseln, die mit dem privaten Schlüssel entschlüsselt werden müssen. Der öffentliche Schlüssel wird auch zur Validierung der Authentizität des Schlüsselpaars verwendet.
Im heutigen Beitrag zeigen wir Ihnen, wie Sie SSH-Schlüssel unter Debian 11 einrichten . Fangen wir also an!
Hinweis: Bevor Sie die SSH-Schlüssel einrichten, sollten Sie SSH auf Ihrem Remote- und Client-System konfiguriert haben.
Wie man SSH-Schlüssel auf Debian 11 generiert
Ihr Debian 11-System verfügt möglicherweise über SSH-Schlüssel, wenn es bereits über eine SSH-Verbindung mit einem Remote-Server verbunden ist. Sie können das Vorhandensein vorhandener Schlüssel überprüfen, indem Sie den unten angegebenen Befehl in Ihrem Terminal verwenden:
$ ls -l ~/.ssh/id_*.pub
Aus der Ausgabe können Sie ersehen, dass das SSH-Schlüsselpaar bereits in unserem System in „/ssh/id_rsa.pub“ existiert “:
Wenn Ihr Terminal jedoch anzeigt „es gibt keine solche Datei oder dieses Verzeichnis “, führen Sie dann den unten angegebenen Befehl zum Generieren eines Schlüsselpaars aus:
$ ssh-keygen
Zunächst werden Sie aufgefordert, den gewünschten Speicherort für das Schlüsselpaar einzugeben, den Speicherort der Datei einzugeben oder „Enter“ zu drücken ” zum Akzeptieren des Standardspeicherorts. Geben Sie als Nächstes Ihre Passphrase ein, um Ihrer SSH-Verbindung eine zusätzliche Sicherheitsebene hinzuzufügen, und drücken Sie dann „Enter “.
Als Ergebnis all dieser durchgeführten Aktionen wird das Schlüsselpaar am angegebenen Dateispeicherort generiert und das Terminal druckt den Schlüsselfingerabdruck:
So richten Sie SSH-Schlüssel unter Debian 11 ein
Nachdem wir das Schlüsselpaar generiert haben, werden wir nun versuchen, den öffentlichen Schlüssel unseres Systems auf den Remote-Server zu kopieren. Dieser Schritt hilft unserem Debian 11-System, die SSH-Schlüssel korrekt zu koppeln. Hier ist die Syntax der „ssh-copy-id ” Befehl:
$ ssh-copy-id [email protected]
In diesem Befehl müssen Sie den Benutzernamen hinzufügen und Hostname Ihres Remote-Servers. Sie können auch die IP-Adresse Ihres Remote-Servers angeben, anstatt den Hostnamen zu schreiben.
Zum Kopieren unseres öffentlichen Schlüssels auf den anderen Remote-Server mit „linuxfoss “ Benutzer und „192.168.43.212 ” IP-Adresse, führen wir diesen Befehl aus:
$ ssh-copy-id [email protected]
Sie werden aufgefordert, das Passwort für das angegebene Benutzerkonto auf dem Remote-Server einzugeben:
Wenn Sie Ihre SSH-Öffentlichkeit manuell auf den Remote-Server kopieren möchten, führen Sie zunächst den unten angegebenen Befehl in Ihrem Terminal aus und notieren Sie sich den Schlüssel:
$ cat ~/.ssh/id_rsa.pub
Auf Ihrem Remote-Server müssen Sie ein SSH-Verzeichnis erstellen:
$ sudo mkdir -p ~/.ssh
Fügen Sie nun Ihren öffentlichen Schlüssel anstelle von „ssh_public_key hinzu ” im unten angegebenen Befehl:
sudo echo ssh_public_key >> ~/.ssh/authorized_keys
Legen Sie die Dateiberechtigungen für das SSH-Verzeichnis mithilfe von chmod fest Befehl:
$ sudo chmod -R go= ~/.ssh
Hier haben wir die Eigentümerberechtigung beibehalten und die Lese-, Schreib- und Ausführungsberechtigung für die Gruppe und andere Benutzer entfernt:
So richten Sie eine SSH-Verbindung unter Debian 11 ein
Sie können den unten angegebenen Befehl ausführen, um sich mit dem Remote-Server mit „192.168.43.212 zu verbinden ” IP-Adresse:
$ ssh [email protected]
So deaktivieren Sie die SSH-Passwortauthentifizierung unter Debian 11
SSH bietet Ihnen auch die Möglichkeit, den Passwortauthentifizierungsmechanismus zu deaktivieren. Wenn Sie diese Option nutzen möchten, öffnen Sie zunächst die SSH-Konfigurationsdatei:
$ sudo nano /etc/ssh/sshd_config
Legen Sie in Ihrer SSH-Konfigurationsdatei diese spezifischen Anweisungen mit ihrem Wert fest:
PasswordAuthentication no
ChallengeResponseAuthentication no
UsePAM no
Nachdem Sie die oben angegebenen Zeilen hinzugefügt haben, drücken Sie „STRG+O “, um die Änderungen zu speichern, die Sie in der Datei „sshd_config ” Datei:
Im letzten Schritt werden wir den SSH-Dienst auf unserem Debian 11-System neu starten:
$ sudo systemctl restart ssh
Jetzt erfordert der Aufbau der SSH-Verbindung zwischen Debian 11 und dem entfernten System keine Passwort-Authentifizierung:
$ ssh [email protected]
Schlussfolgerung
SSH ist ein Netzwerkprotokoll, das es zwei Computern ermöglicht, sicher über ein ungesichertes Netzwerk zu kommunizieren. Es wird häufig für den Zugriff auf und die Verwaltung von Remote-Servern verwendet. SSH-Schlüsselpaar umfasst eine Öffentlichkeit und privater Schlüssel . Dieser Beitrag hat Ihnen gezeigt, wie Sie SSH-Schlüssel unter Debian 11 einrichten System. Darüber hinaus wird Ihnen auch die Methode zum Deaktivieren der Passwortauthentifizierung für die SSH-Verbindung bereitgestellt.