Servers in stock
 Checking availability...
50% off 1st month on Instant Servers - code 50OFF +1-646-490-9655
Build your server
Ubuntu 16.04 • Tutorial sull'autenticazione tramite chiave SSH

Come configurare le chiavi SSH su Ubuntu 16.04

Segui questa guida passo passo per configurare l'autenticazione basata su chiave SSH sul tuo server Ubuntu. Accedi in modo sicuro senza password e, facoltativamente, disabilita completamente l'autenticazione tramite password.

Guida in 4 passaggi per Ubuntu 16.04 - Assistenza clienti 24 ore su 24, 7 giorni su 7

Guida passo passo

Segui attentamente ogni passaggio per configurare l'autenticazione basata su chiave SSH sul tuo server Ubuntu 16.04.

1

Crea la coppia di chiavi RSA

Esegui il seguente comando sulla tua macchina locale per generare una coppia di chiavi RSA a 2048 bit (usa -b 4096 per una chiave più sicura a 4096 bit):

 $ ssh-keygen

Quando viene richiesto di specificare un percorso file, premere Invio per accettare quello predefinito ( ~/.ssh/id_rsa ). Facoltativamente, è possibile impostare una passphrase per un ulteriore livello di sicurezza.

Vengono creati due file: ~/.ssh/id_rsa (chiave privata - da tenere segreta) e ~/.ssh/id_rsa.pub (chiave pubblica - da inserire sul server).

2

Copia la chiave pubblica sul tuo server Ubuntu

Metodo 1 — ssh-copy-id (consigliato):

 $ ssh-copy-id username@remote_host

Inserisci la tua password quando richiesto. La chiave pubblica verrà aggiunta al file ~/.ssh/authorized_keys sul server.

Metodo 2 — tramite pipe SSH:

 cat ~/.ssh/id_rsa.pub | ssh username@remote_host "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

Metodo 3 - manuale: visualizza la tua chiave pubblica con il cat ~/.ssh/id_rsa.pub , quindi aggiungi l'output al file ~/.ssh/authorized_keys sul server remoto.

3

Autenticazione tramite chiavi SSH

Verifica che l'autenticazione basata su chiave funzioni collegandoti al tuo server:

 $ ssh username@remote_host

Se hai impostato una passphrase al passaggio 1, ti verrà richiesto di inserirla. In caso contrario, accederai immediatamente senza alcuna richiesta di password.

4

Disabilita l'autenticazione tramite password (facoltativo)

Una volta verificato il corretto funzionamento dell'accesso basato su chiave, è possibile disabilitare l'autenticazione tramite password per proteggere il server dagli attacchi di forza bruta. Aprire il file di configurazione del demone SSH:

 sudo nano /etc/ssh/sshd_config

Trova PasswordAuthentication , rimuovi il commento dalla riga se necessario e impostala su no :

 PasswordAuthentication no

Salva il file ( Ctrl+X , poi Y , poi Invio ) e riavvia SSH:

 $ sudo systemctl restart ssh

Apri un nuovo terminale e verifica di poter ancora connetterti prima di chiudere la sessione corrente.

FAQ

Domande frequenti sulla configurazione dell'autenticazione tramite chiave SSH su Ubuntu.

Qual è la differenza tra chiave pubblica e chiave privata?

La chiave pubblica ( id_rsa.pub ) viene memorizzata sui server a cui si desidera accedere ed è sicura da condividere. La chiave privata ( id_rsa ) rimane sul computer locale e non deve mai essere condivisa. Le due chiavi lavorano insieme per autenticarti senza password.

Devo impostare una passphrase per la mia chiave privata?

Sì, l'utilizzo di una passphrase è fortemente consigliato. Aggiunge un ulteriore livello di protezione, in modo che, qualora il file della chiave privata venisse rubato, non possa essere utilizzato senza la passphrase. Utilizza ssh-agent per memorizzare nella cache la passphrase, così da non doverla digitare ogni volta.

Cosa succede se mi blocco l'accesso disattivando l'autenticazione tramite password?

Se disattivi l'autenticazione tramite password prima di aver verificato che la tua chiave funzioni, potresti perdere l'accesso. Apri sempre un nuovo terminale e prova ad accedere con la tua chiave SSH prima di chiudere la sessione corrente. Se non riesci ad accedere, avrai bisogno dell'accesso alla console (ad esempio tramite il pannello di controllo web del tuo provider di server) per riattivare l'autenticazione tramite password.

Posso utilizzare questa guida anche per versioni di Ubuntu diverse dalla 16.04?

Sì. I passaggi e i comandi sono gli stessi per Ubuntu 18.04, 20.04, 22.04 e versioni successive. L'unica differenza potrebbe essere il nome del servizio SSH: se ssh non funziona, usa il comando ` sudo systemctl restart sshd .

Hai bisogno di un server su cui effettuare il deployment?

I nostri piani per server dedicati e VPS includono accesso root completo, storage SSD e supporto di esperti 24 ore su 24, 7 giorni su 7, per consentirti di essere operativo rapidamente.