L'utilità ssh-keygen genera, gestisce e converte le chiavi di autenticazione per ssh. Quando si utilizza ssh-keygen per creare una chiave, -t è necessario specificare l'opzione per identificare il tipo di chiave da creare.
L'utilità ssh-keygen genera una coppia di chiavi SSH per l'autenticazione con il server. Questa utility è inclusa in OpenSSH e, per impostazione predefinita, crea una coppia di chiavi RSA a 2048 bit. Supporta RSA e DSA, entrambi con diverse lunghezze di chiavi. Si consiglia una lunghezza della chiave di 4096 bit per stabilire una connessione sicura tra due macchine.
Potresti riscontrare il seguente errore durante la generazione di una chiave ssh per il tuo client:
-bash: ssh-keygen: command not found
ssh-keygen viene fornito in bundle con il pacchetto OpenSSH, ma nel caso in cui non lo sia installato sul tuo sistema, puoi installarlo utilizzando i comandi seguenti in base alla tua scelta del sistema operativo.
Distribuzione | Comando |
---|---|
OS X | brew install openssh |
Debian | apt-get install openssh-client |
Ubuntu | apt-get install openssh-client |
Alpino | apk aggiunge openssh |
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 esegui cmd.cat/ssh-keygen ssh-keygen |
Esempi di comandi ssh-keygen
1. Genera una chiave in modo interattivo:
$ ssh-keygen
2. Specificare il file in cui salvare la chiave:
$ ssh-keygen -f {{~/.ssh/filename}}
3. Genera una chiave ed25519 con 100 cicli di funzioni di derivazione chiave:
$ ssh-keygen -t {{ed25519}} -a {{100}}
4. Genera una chiave RSA a 4096 bit con un'e-mail come commento:
$ ssh-keygen -t {{dsa|ecdsa|ed25519|rsa}} -b {{4096}} -C "{{comment|email}}"
5. Rimuovere le chiavi di un host dal file known_hosts (utile quando un host noto ha una nuova chiave):
$ ssh-keygen -R {{remote_host}}
6. Recupera l'impronta digitale di una chiave in MD5 Hex:
$ ssh-keygen -l -E {{md5}} -f {{~/.ssh/filename}}
7. Modificare la password di una chiave:
$ ssh-keygen -p -f {{~/.ssh/filename}}
8. Modificare il tipo di formato chiave (ad esempio da formato OPENSSH a PEM), il file verrà riscritto sul posto:
$ ssh-keygen -p -N "" -m {{PEM}} -f {{~/.ssh/OpenSSH_private_key}}