Propagazione delle chiavi per SSH

L'uso delle chiavi per l'autenticazione utente via ssh e' una modalita' che permette di gestire con una certa sicurezza e con comodita' l'accesso ai sistemi, nasce dunque l'esigenza di propagare la chiave sui sistemi gia' esistenti.Di seguito e' illustrato un modo comodo e veloce:


Creazione della chiave, in questo caso DSA
neo@eva:~$ ssh-keygen  -t dsa
Generating public/private dsa key pair.
Enter file in which to save the key (/home/neo/.ssh/id_dsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/neo/.ssh/id_dsa.
Your public key has been saved in /home/neo/.ssh/id_dsa.pub.
The key fingerprint is:
b5:4c:6e:a9:01:6e:33:e1:c5:47:e6:b4:b1:d0:5d:64 neo@eva
Avvio dell'ssh-agent
neo@eva:~$ ssh-agent
SSH_AUTH_SOCK=/tmp/ssh-xCLiUW3380/agent.3380; export SSH_AUTH_SOCK;
SSH_AGENT_PID=3381; export SSH_AGENT_PID;
echo Agent pid 3381;
Acquisizione della chiave pubblica da copiare.
neo@eva:~$ ssh-add
Identity added: /home/neo/.ssh/id_dsa (/home/neo/.ssh/id_dsa)
Copia della chiave sul server remoto
neo@eva:~$ ssh-copy-id neo@remoteserver
Viene richiesta la password per propagare la chiave
neo@remoteserver's password:
Now try logging into the machine, with "ssh 'neo@remoteserver'", an d check in:

  .ssh/authorized_keys

to make sure we haven't added extra keys that you weren't expecting.
Verifica della procedura
neo@eva:~$ ssh neo@remoteserver

La chiave e' stata propagata sul remoteserver, senza dover copiare direttamente nel file .ssh/authorized_keys la propria chiave pubblica.
Al primo login di ogni server occorre semplicemente ricordarsi di lanciare queste tre istruzioni e il gioco e' fatto.

Nel caso in cui si presenti il seguente errore:
neo@eva~$ ssh-add
Could not open a connection to your authentication agent.

Occorre semplicemente eseguire l'export delle variabile che sono state printate a video dal comando ssh-agent:
neo@eva:~$ ssh-agent
SSH_AUTH_SOCK=/tmp/ssh-xCLiUW3380/agent.3380; export SSH_AUTH_SOCK;
SSH_AGENT_PID=3381; export SSH_AGENT_PID;
neo@eva:~$ SSH_AUTH_SOCK=/tmp/ssh-xCLiUW3380/agent.3380; export SSH_AUTH_SOCK
neo@eva:~$ SSH_AGENT_PID=3381; export SSH_AGENT_PID

Privacy Policy