Creare connessioni SSH senza password su Debian 12 “Bookworm”
Aggiornamento dell’articolo Creare connessioni SSH senza password su Debian 10 “Buster”
Nota aggiornamento: da Debian 12 l’autenticazione tramite chiavi SSH è stata disattivata, per riabilitarla occorre editare il fil /etc/ssh/sshd_config e decommentare:
1 |
PubkeyAuthentication yes |
E riavviare il servizio SSH o il PC.
In caso ci fosse la necessità di eseguire connessioni SSH senza dover immettere la password, basta creare le coppie di chiavi RSA e copiarle sull’altro PC.
Chiamiamo local ( il PC dal quale si vuole aprire la connessione ) e remote ( il PC verso il quale si vuole aprire la connessione ).
Innanzitutto dall’utente di local si creano le coppie di chiavi dall’utente che si deve usare per la connessione ( la passfrase lasciatela in bianco se no al collegamento chiederà quella al posto della password e si è al punto di partenza ).
1 2 3 4 5 |
# RSA 2048bit ssh-keygen # RSA 4096bit ssh-keygen -b 4096 |
Verranno creati id_rsa ( chiave privata ) e id_rsa.pub ( chiave pubblica ).
Ora occorre copiare la chiave pubblica sul PC remote chiamandolo authorized_keys.
1 |
scp .ssh/id_rsa.pub remoteuser@remote:.ssh/authorized_keys |
Conviene poi cambiare i permessi del file authorized_keys su remote in 600.
1 |
chmod 600 .ssh/authorized_keys |
Se manca la cartella .ssh crearla e darle i permessi 700.
1 2 |
mkdir .ssh chmod 700 .ssh |
Per copiare la chiave è anche possibile utilizzare il comando
1 |
ssh-copy-id remoteusername@remote |
In caso si necessiti di creare connessioni da postazioni multiple basta creare le chiavi come spiegato sopra per ogni macchina da cui serve stabilire la connessione, copiare tutte le chiavi pubbliche sulla macchina che deve accettare le connessioni e appendere i file uno all’altro.
Dal PC1 normale come sopra:
1 |
scp .ssh/id_rsa.pub remoteuser@remote:.ssh/authorized_keys |
Dal PC2 e dal PC3 ognuno la propria chiave:
1 2 |
scp .ssh/id_rsa.pub remoteuser@remote:.ssh/id_rsa_pc2.pub scp .ssh/id_rsa.pub remoteuser@remote:.ssh/id_rsa_pc3.pub |
Infine dal PC remote si procede ad appendere le chiavi aggiuntive ed eliminare le copie ormai inutili:
1 2 3 4 |
cd .ssh cat id_rsa_pc2.pub >> authorized_keys cat id_rsa_pc3.pub >> authorized_keys rm id_rsa_pc2.pub id_rsa_pc3.pub |