Das Dienstprogramm ssh-keygen generiert, verwaltet und konvertiert Authentifizierungsschlüssel für ssh. Wenn Sie ssh-keygen verwenden, um einen Schlüssel zu erstellen, wird das -t Die Option muss angegeben werden, um den Typ des zu erstellenden Schlüssels zu identifizieren.
Das Dienstprogramm ssh-keygen generiert ein SSH-Schlüsselpaar zur Authentifizierung beim Server. Dieses Dienstprogramm ist mit OpenSSH gebündelt und erstellt standardmäßig ein 2048-Bit-RSA-Schlüsselpaar. Es unterstützt RSA und DSA, beide mit unterschiedlichen Schlüssellängen. Für eine sichere Verbindung zwischen zwei Maschinen wird eine Schlüssellänge von 4096 Bit empfohlen.
Beim Generieren eines SSH-Schlüssels für Ihren Client kann der folgende Fehler auftreten:
-bash: ssh-keygen: command not found
Das ssh-keygen wird mit dem OpenSSH-Paket geliefert, aber falls Sie es nicht auf Ihrem System installiert haben, können Sie es mit den folgenden Befehlen gemäß Ihrer Wahl des Betriebssystems installieren.
Verteilung | Befehl |
---|---|
OS X | brew install openssh |
Debian | apt-get install openssh-client |
Ubuntu | apt-get install openssh-client |
Alpin | apk fügt openssh hinzu |
Arch Linux | pacman -S openssh |
Kali-Linux | apt-get install openssh-client |
CentOS | yum install openssh |
Fedora | dnf install openssh |
Raspbian | apt-get install openssh-client |
Docker | docker run cmd.cat/ssh-keygen ssh-keygen |
ssh-keygen-Befehlsbeispiele
1. Schlüssel interaktiv generieren:
$ ssh-keygen
2. Geben Sie die Datei an, in der der Schlüssel gespeichert werden soll:
$ ssh-keygen -f {{~/.ssh/filename}}
3. Generieren Sie einen ed25519-Schlüssel mit 100 Schlüsselableitungsfunktionsrunden:
$ ssh-keygen -t {{ed25519}} -a {{100}}
4. Generieren Sie einen RSA 4096-Bit-Schlüssel mit E-Mail als Kommentar:
$ ssh-keygen -t {{dsa|ecdsa|ed25519|rsa}} -b {{4096}} -C "{{comment|email}}"
5. Entfernen Sie die Schlüssel eines Hosts aus der Datei known_hosts (nützlich, wenn ein bekannter Host einen neuen Schlüssel hat):
$ ssh-keygen -R {{remote_host}}
6. Rufen Sie den Fingerabdruck eines Schlüssels in MD5 Hex ab:
$ ssh-keygen -l -E {{md5}} -f {{~/.ssh/filename}}
7. Ändern Sie das Passwort eines Schlüssels:
$ ssh-keygen -p -f {{~/.ssh/filename}}
8. Ändern Sie den Typ des Schlüsselformats (z. B. von OPENSSH-Format zu PEM), die Datei wird an Ort und Stelle neu geschrieben:
$ ssh-keygen -p -N "" -m {{PEM}} -f {{~/.ssh/OpenSSH_private_key}}