Autenticazione ssh senza password

Fonte: http://www.linuxproblem.org/art_9.html

Se vogliamo connetterci ad un server ssh e autenticarci senza bisogno di inserire la password, possiamo utilizzare l’autenticazione tramite chiavi. Questo sistema è particolarmente utile quando vogliamo che la connessione ssh sia gestita da uno script bash, magari con attivazione schedulata tramite cronjob.

Abbiamo due host:
– client locale “PC-cons1″ con utente root (può essere qualsiasi utente)
– server openssh con nome pc-test-8 con utente luca

Logghiamoci nel client locale come utente root e generiamo la coppia di chiavi di autenticazione. Quando ci verrà chiesta la passphrase non inseriamo nulla, altrimenti vanifichiamo la possibilità di autenticarci senza password:

root@PC-cons1:~# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
45:05:70:62:63:16:77:20:51:74:1b:9d:67:bd:a4:51 root@PC-cons1
The key's randomart image is:
+--[ RSA 2048]----+
...
...
...
...
...
+-----------------+

Ora connettiamoci via ssh all’host pc-test-8 come utente luca e creiamo in esso la directory .ssh nella home di luca:

root@PC-cons1:~# ssh luca@pc-test-8 mkdir -p .ssh
The authenticity of host 'pc-test-8 (192.168.201.198)' can't be established.
ECDSA key fingerprint is df:13:36:93:8f:27:61:69:f3:97:15:8c:43:35:9a:1f.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'pc-test-8' (ECDSA) to the list of known hosts.
luca@pc-test-8's password:

Ora appendiamo la nuova chiave pubblica dell’utente root nel file .ssh/authorized_keys nella home dell’utente luca nell’host pc-test-8 e inseriamo la password di luca per l’ultima volta:

root@PC-cons1:~# cat .ssh/id_rsa.pub | ssh luca@pc-test-8 'cat >> .ssh/authorized_keys'
luca@pc-test-8's password:

Da ora possiamo loggarci in pc-test-8 come utente luca dall’host PC-cons-1 senza password:

root@PC-cons1:~# ssh luca@pc-test-8
Welcome to Ubuntu 14.04.2 LTS (GNU/Linux 3.13.0-24-generic x86_64)

* Documentation: https://help.ubuntu.com/

Last login: Tue Jan 27 07:09:41 2015
luca@pc-test-8:~$

 

Lascia una risposta

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati *

È possibile utilizzare questi tag ed attributi XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>