Come rimuovere la passphrase dal certificato SSL e dalla chiave SSH


Brief: hai creato una chiave di certificato o una chiave privata con una passphrase e desideri rimuoverla? In questa guida, mostreremo come rimuovere una passphrase utilizzando lo strumento da riga di comando openssl e da una chiave privata ssh.

Una passphrase è una sequenza di parole utilizzate per proteggere e controllare l'accesso a una chiave privata. È una chiave o un segreto utilizzato per crittografare il file che contiene la chiave di crittografia effettiva.

Per utilizzare la chiave privata per la crittografia, ad esempio per le connessioni ssh basate su chiave pubblica, è necessario decrittografare il file della chiave privata utilizzando la chiave di decrittografia (la passphrase): viene richiesto di immettere la passphrase.

Rimozione di una passphrase dal certificato SSL utilizzando OpenSSL

L'intestazione di una chiave privata TLS/SSL con una passphrase è simile a quella mostrata nello screenshot seguente. Il parametro \DEK-Info memorizza le informazioni necessarie per decrittografare la chiave utilizzando la passphrase.

$ cat private.pem

Quando tu o qualsiasi applicazione come il server web NGINX utilizzate la chiave privata, che la richiama per crittografare i dati, a te o all'applicazione verrà richiesto di fornire la passphrase prima che la chiave possa essere utilizzata, ad esempio:

$ openssl rsa -in private.pem -outform PEM -pubout -out public.pem

Per rimuovere la passphrase di una chiave privata SSL utilizzando lo strumento della riga di comando openssl, è sufficiente copiare il vecchio file con un nuovo nome file. Successivamente, la nuova chiave privata non avrà una passphrase come mostrato nello screenshot seguente.

$ openssl rsa -in private.pem -out private_new.pem 
$ cat private_new.pem 

Rimuovi passphrase dalla chiave privata SSH

Di solito, quando si genera una coppia di chiavi SSH, viene richiesto di impostare una passphrase per la chiave privata, come mostrato nello screenshot seguente. Se lo lasci vuoto, non viene impostata alcuna passphrase.

Quando si invoca una chiave ssh privata che ha una passphrase, prima che il client ssh possa utilizzare la chiave per la connessione, viene richiesto di fornire la passphrase come mostrato.

$ ssh -i .ssh/tecmint [email protected]

Per rimuovere la passphrase, utilizzare il comando ssh-keygen con l'opzione -p che richiede la passphrase esistente e -f per specificare il file della chiave privata:

$ ssh-keygen -p -f .ssh/tecmint

Immettere la vecchia passphrase e lasciare vuota la nuova passphrase.

[ Ti potrebbe piacere anche: Utilizzo e configurazione dei comandi SSH di base in Linux ]

È tutto! Ricorda che si consiglia di utilizzare passphrase per aumentare la sicurezza delle tue chiavi SSH. Per condividere con noi i tuoi pensieri su questa guida, usa il modulo di commento qui sotto.