Utilità della riga di comando ssh-keygen

ssh-keygen - Creazione, gestione e conversione delle chiavi utilizzate per l'autenticazione del client e del server.

Introduzione

ssh-keygen [-b bits] -t type [-N [passphrase]] [-C comment] [-f output_keyfile]
ssh-keygen -B [-f input_keyfile]
ssh-keygen -c [-P passphrase] [-C comment] [-f keyfile]
ssh-keygen -e [-f input_keyfile]
ssh-keygen -p [-P old_passphrase] [-N new_passphrase] [-f keyfile]
ssh-keygen -i [-f input_keyfile]
ssh-keygen -y [-f input_keyfile]
ssh-keygen -l [-f input_keyfile]

Descrizione

È possibile utilizzare l'utilità della riga di comando ssh-keygen per creare chiavi RSA e DSA per l'autenticazione con chiave pubblica, per modificare le proprietà di chiavi esistenti e per convertire formati di file. Se non viene specificata alcuna opzione, ssh-keygen genera una coppia di chiavi RSA da 2048 bit e richiede all'utente un nome di chiave e una passphrase con cui proteggere la chiave privata. Le chiavi pubbliche vengono create utilizzando lo stesso nome di base della chiave privata, con l'aggiunta dell'estensione PUB. La posizione della chiave viene visualizzata al termine della generazione della chiave.

Opzioni

-b bit

Specifica le dimensioni della chiave. Le dimensioni di chiave più grandi migliorano fino a un certo punto la protezione. L'aumento delle dimensioni della chiave rallenta la connessione iniziale, ma non produce alcun effetto sulla velocità di crittografia e decrittografia del flusso di dati dopo la corretta esecuzione di una connessione. La lunghezza della chiave da utilizzare dipende da molti fattori, quali il tipo di chiave, la durata della chiave, il valore dei dati sottoposti a protezione, le risorse disponibili contro i potenziali intrusi e le dimensioni della chiave simmetrica utilizzata insieme alla chiave asimmetrica. Per scegliere la soluzione più idonea alle proprie esigenze, è consigliabile rivolgersi a un responsabile addetto alla protezione. Le dimensioni della chiave sono arrotondate al valore immediatamente superiore divisibile per 64 bit. Il valore predefinito delle chiavi DSA è 1024 bit; per le chiavi RSA è 2048 bit.

-B

Mostra l'impronta digitale della chiave specificata in formato SHA-1 Bubble Babble. È possibile specificare il file di chiavi mediante -f. Se non si specifica un file, il sistema chiede il nome file. È possibile specificare il nome della chiave pubblica o privata ma, in entrambi i casi, la chiave pubblica deve essere disponibile.

-c

Richiede una modifica del commento nei file di chiavi private e pubbliche. Questa operazione è supportata soltanto per le chiavi RSA1. Il programma richiede il file contenente le chiavi private, la passphrase nel caso in cui la chiave ne sia dotata e il nuovo commento.

-C commento

Specifica informazioni per il campo del commento contenuto nel file di chiavi. Utilizzare le virgolette se la stringa contiene spazi. Se non viene specificato un commento quando viene creata una chiave, viene creato un commento predefinito contenente il tipo di chiave, l'autore, la data e l'ora.

-e

Utilizza la chiave pubblica o privata di OpenSSH specificata per generare una chiave pubblica nel formato di Reflection. È possibile specificare il file di chiavi mediante -f. Se non si specifica un file, il sistema chiede il nome file.

-f nomefile

Specifica il nome file per la chiave privata generata (viene creata anche una chiave pubblica alla quale viene assegnato lo stesso nome della chiave privata, con l'aggiunta dell'estensione PUB). Questa opzione può inoltre essere utilizzata insieme a -e, -i, -l, -p, -y e -B per specificare il nome del file di input.

-i

Converte la chiave pubblica di Reflection specificata nel formato di OpenSSH. È possibile specificare il file di chiavi mediante -f. Se non si specifica un file, il sistema chiede il nome file.

-h

Visualizza un riepilogo di opzioni della riga di comando.

-l

Mostra l'impronta digitale del file di chiavi pubbliche specificato utilizzando l'algoritmo hash MD5. È possibile specificare il file di chiavi mediante -f. Se non si specifica un file, il sistema chiede il nome file. Se si specifica una chiave privata, ssh-keygen tenta di individuare il file di chiavi pubbliche corrispondente e ne stampa l'impronta digitale.

-N passphrase

Imposta la passphrase. Ad esempio, per specificare la passphrase per una nuova chiave:

ssh-keygen -N mypassphrase -f keyfile

Per creare una nuova chiave non protetta da passphrase:

ssh-keygen -N -f keyfile

È possibile utilizzare -N insieme a -p e -P per modificare la passphrase di una chiave esistente.

-p

Utilizzare questa opzione per modificare la passphrase di una chiave privata esistente. Se viene utilizzata soltanto questa opzione, il programma richiede il file contenente la chiave privata, la vecchia passphrase e due volte la nuova passphrase. È possibile utilizzare questa opzione insieme a -f, -P e -N per modificare la passphrase in maniera non interattiva. Ad esempio:

ssh-keygen -p -f keyfile -P oldpassphrase -N newpassphrase
-P passphrase

Fornisce la (vecchia) passphrase.

-q

Disattiva le comunicazioni di ssh-keygen.

-t tipo

Specifica l'algoritmo utilizzato per la generazione della chiave. I valori possibili sono "rsa" o "dsa" per la versione 2 del protocollo.

-y

Utilizza la chiave privata specificata per ottenere una nuova copia della chiave pubblica. È possibile specificare il file di chiavi mediante -f. Se non si specifica un file, il sistema chiede il nome file.

Valori restituiti

ssh-keygen restituisce 0 (zero) se il comando viene eseguito correttamente. Qualsiasi valore diverso da zero indica un errore.