SSH wird für die Validierung und Authentifizierung der Benutzer unter Verwendung von Schlüsselwertpaaren wie privaten und öffentlichen Schlüsseln verwendet. Solche Schlüssel werden mit dem Befehl ssh-keygen generiert. Sie können verschiedene Arten von Schlüsseln wie RSA, DSA usw. generieren.
Hier bei LinuxAPT werden wir uns den Prozess der Verwendung des Befehls ssh-keygen zum Generieren verschiedener Schlüssel ansehen, die die von SSH verwendeten öffentlichen und privaten Schlüssel authentifizieren.
Wie benutzt man ssh-keygen ?
Mit dem Befehl ssh-keygen können Sie verschiedene Arten von Schlüsseln wie RSA, DSA usw. generieren.
RSA-Schlüssel;
- $HOME/.ssh/id_rsa:RSA-Authentifizierungsidentitätsdatei des Benutzers. Es ist nur für den Benutzer lesbar.
- $HOME/.ssh/id_rsa.pub:Öffentliche RSA-Schlüsseldatei für die Authentifizierung.
DSA-Schlüssel;
- $HOME/.ssh/id_dsa:DSA-Authentifizierungsidentitätsdatei des Benutzers. Es ist nur für den Benutzer lesbar.
- $HOME/.ssh/id_dsa.pub:Öffentliche DSA-Schlüsseldatei für die Authentifizierung.
Verwenden von ssh-keygen zum Erstellen von RSA-Schlüsseln
Hier wird ssh-keygen verwendet, um RSA-Schlüssel für die Authentifizierung zu erstellen. Wenn Sie nur den Befehl ssh-keygen verwenden, werden standardmäßig die rsa-Schlüssel generiert. Lassen Sie uns die RSA-Schlüssel generieren, indem Sie den Befehl ausführen:
$ ssh-keygen -t rsa
Oder
$ ssh-keygen
Hier werden sowohl der öffentliche Schlüssel, d. h. id_rsa.pub, als auch der private Schlüssel, d. h. id_rsa, am Standardspeicherort gespeichert, der $HOME/.ssh/.
istDa der öffentliche Schlüssel auf den Remote-Server kopiert werden muss, kann sich der Benutzer mit der SSH-Authentifizierung anmelden. Es wird in die Datei $HOME/.ssh/authorized_keys des Remote-Servers kopiert. Lassen Sie uns den öffentlichen Schlüssel überprüfen, der mit dem obigen Befehl generiert wurde:
$ cat id_rsa.pub
Kopieren Sie einfach diesen öffentlichen Schlüssel und fügen Sie ihn an dieser Stelle ein:$HOME/.ssh/authorized_keys-Datei des Remote-Servers für die Authentifizierung.
Verwenden von ssh-keygen zum Erstellen von DSA-Schlüsseln
Ebenso können DSA-Schlüssel auch durch einfache Änderung im Befehl erstellt werden. Wenn Sie nur den Befehl ssh-keygen verwenden, werden standardmäßig die rsa-Schlüssel generiert. Aber um DSA-Schlüssel zu generieren, geben Sie einfach -t dsa als Argument in den Befehl ein. Für weitere Details können Sie den Befehl ausführen:
$ ssh-keygen -t dsa
Sowohl der öffentliche Schlüssel, d. h. id_dsa.pub, als auch der private Schlüssel, d. h. id_dsa, werden ebenfalls am Standardspeicherort gespeichert, der $HOME/.ssh/.
istSie können den öffentlichen Schlüssel einfach auf den Remote-Server kopieren, damit sich der Benutzer mit der SSH-Authentifizierung anmelden kann. Es wird in die Datei $HOME/.ssh/authorized_keys des Remote-Servers kopiert. Lassen Sie uns den öffentlichen Schlüssel überprüfen, der mit dem obigen Befehl generiert wurde:
$ cat id_dsa.pub
Kopieren Sie diesen öffentlichen Schlüssel und fügen Sie ihn an dieser Stelle ein:$HOME/.ssh/authorized_keys-Datei des Remote-Servers für die Authentifizierung.