SSH – autentificare fară parolă

Considerăm situația ilustrată în imaginea de mai jos, in care avem 3 servere care ruleaza freeBSD/linux:

  • Server A cu adresa IP 192.168.99.11 (/24)
  • Server B cu adresa IP 192.168.99.12 (/24)
  • Server C  cu adresa IP 192.168.99.13 (/24)

Toate aceste servere sunt conectate prin intermediul unui switch ethernet, în care avem conectat si un PC care ruleaza freeBSD, cu adresa IP 192.168.99.5 (/24).

retea-ssh-keygenDe pe PC vom iniția sesiuni SSH către servere. Putem face acest lucru rulând, de exemplu, comanda:

ssh userssh@192.168.99.11

Ni sa va solicita parola pentru utilizatorul userssh definit pe serverul A și, in cazul în care o introducem corect, ni se permite accesul și putem executa comenzi pe serverul A.
În același mod vom proceda și pentru serverele B și C.

Inconvenientul este că de fiecare data când dorim să accesăm prin ssh aceste servere de pe sistemul PC, trebuie să introducem parola. Alternativa rapidă este să folosim o pereche de chei private/publice pentru autenficare. Astfel, vom genera aceste chei pe sistemul PC, utilizând comanda:

ssh-keygen

Vom fi întrebați de numele fișierului în care dorim să salvăm această cheie și il vom lăsa pe cel implicit (/<user_home_dir>/.ssh/id_rsa), apoi ni se va cere sa introducem o „frază de acces” pentru securizare, dar nu o vom face, trecând peste acest pas apăsând tasta Enter.

După executare, observăm că s-a creat fișierul id_rsa, dar, în același director mai avem un fișier nou cu numele id_rsa.pub.

Conținutul celor două fișiere este de genul:

  • fișier id_rsa:

Fisier id_rsa

  • fișier id_rsa.pub:

Fisier id_rsa.pubPentru a obține ce ne dorim, trebuie să copiem conținutul fișierul id_rsa.pub să fie copiat pe serverul pe care dorim să ne autentificăm. Pentru acest lucru, vom folosi comanda ssh-copy-id, astfel:

ssh-copy-id -i /root/.ssh/id_rsa.pub userssh@192.168.99.11

sh-copy-id -i /root/.ssh/id_rsa.pub userssh@192.168.99.12

sh-copy-id -i /root/.ssh/id_rsa.pub userssh@192.168.99.13

Asta este tot. Acum la execuția comenzii

ssh userssh@192.168.99.11

nu mai este necesar să introducem parola ci vom fi autentificat în mod direct.

PS: Nu cred că este cazul să vă atrag atenția că, din punct de vedere al securității, nu este o practică recomandată!

 

 

Articole asemanatoare:

Lasă un răspuns

Adresa ta de email nu va fi publicată.

Acest site folosește Akismet pentru a reduce spamul. Află cum sunt procesate datele comentariilor tale.

Info

Blogul folosește cookie-uri pentru numărarea vizitatorilor, comentarii mai rapide și alte îmbunătățiri. Nu colectez date personale în afara celor fără de care serverul și blogul nu pot funcționa. Prin continuarea folosirii acestui site, sunteti de acord cu

politica de confidentțalitate