Feb 09 2008

SSH – autentificare bazata pe schimb de chei publice

Se doreste automatizarea unor procese prin folosirea OpenSSH/Linux. Deci este nevoie de logarea automata a utilizatorului X de pe statia A pe statia B, fara introducere de parole pentru ca ssh-ul va fi apelat prin intermediul scripturilor de shell.

Prin urmare:

1. Utilizatorul X se autentifica pe statia A si genereaza perechea de chei de autentificare. Atentie ! nu se foloseste passphrase.

 X@A:> ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/a/.ssh/id_rsa):
Created directory '/home/a/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/a/.ssh/id_rsa.
Your public key has been saved in /home/a/.ssh/id_rsa.pub.
The key fingerprint is:
3e:4f:05:79:3a:9f:96:7c:3b:ad:e9:58:37:bc:37:e4 a@A

2. Se foloseste ssh pentru crearea directorului ~/.ssh pentru utilizator X pe statia B. (In general acest director exista).

X@A:> ssh X@B mkdir -p .ssh
X@B's password:

3. Se adauga noua cheie publica a statiei A in X@B:.ssh/authorized_keys si se introduce parola utilizatorului X pentru ultima data:

X@A:>scp .ssh/id_rsa.pub X@B:.ssh/authorized_keys
X@B's password:

Din acest moment utilizatorul X se poate autentifica de pe statia A pe statia B fara a introduce parola :

X@A:> ssh X@B

Comentarii