L’autenticazione con chiave pubblica in ssh permette ad un client,su cui è stata generata una coppia di chiavi,l’accesso ad un server senza l’utilizzo di password,facendo uso soltanto della chiave pubblica.
Server A (client)
Generiamo sul client una coppia di chiavi :
# ssh-keygen -t rsa
Possiamo premere invio per ogni scelta presentata dalla directory in cui verranno salvate le chiavi alla richiesta di inserimento password.Impostare una password per le chiavi generate accresce il grado di sicurezza ma rende vano lo scopo per cui verrà utilizzato il metodo della chiave pubblica.Per comodità possiamo quindi evitare l’impostazione della password.
La chiave pubblica verrà generata in /home/user/.ssh/id_rsa.pub
Copiamo ora la nostra chiave pubblica sull’host remoto :
# ssh-copy-id -i /home/user/.ssh/id_rsa.pub user@server.remote.com
Server B (server ssh)
Apriamo il file di configurazione del demone ssh :
# vim /etc/ssh/sshd_config
ed inseriamo le direttive :
RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile %h/.ssh/authorized_keys
Salviamo il file e forziamo sshd nella rilettura del suo file di configurazione :
# /etc/init.d/ssh reload
Verifichiamo inoltre che il file authorized_keys sia impostato con i giusti permessi
# stat -c "%a" /home/user/.ssh/authorized_keys 600
Dopo aver completato la procedura,il client A potrà accedere al server B senza necessità di password,sfruttando l’autenticazione con chiave pubblica :
# ssh user@server.remote.com


Pingback: 4 consigli per la sicurezza del tuo server | SERVERMANAGED.IT ::