Cum adaugi utilizatori cu acces SSH
Când mai multe persoane au nevoie de acces la un server, cea mai sigură metodă este autentificarea prin chei SSH - fără parole transmise prin rețea și cu posibilitatea de a revoca accesul individual oricând.
Generarea cheilor SSH
Fiecare utilizator trebuie să genereze o pereche de chei pe calculatorul lui, nu pe server. Comanda este:
ssh-keygen -t ed25519 -C "email@exemplu.com"
La întrebarea despre locația fișierului se apasă Enter pentru a folosi calea implicită (~/.ssh/id_ed25519). Se poate seta și o parolă pentru cheie - recomandat pentru un strat suplimentar de securitate.
După generare, cheia publică se găsește la:
cat ~/.ssh/id_ed25519.pub
Aceasta este cheia care se trimite administratorului serverului. Cheia privată (id_ed25519, fără .pub) nu se trimite niciodată nimănui.
Crearea utilizatorului pe server
Pe server, pentru fiecare persoană se creează un cont separat. Astfel accesul poate fi revocat individual și activitatea fiecăruia este înregistrată separat în loguri.
adduser nume_utilizator usermod -aG sudo nume_utilizator
Adăugarea în grupul sudo îi permite utilizatorului să ruleze comenzi administrative - necesar dacă trebuie să gestioneze servicii, containere Docker sau fișiere de configurare.
Adăugarea cheii publice
Se creează directorul .ssh în folderul utilizatorului și se adaugă cheia publică primită:
mkdir -p /home/nume_utilizator/.ssh nano /home/nume_utilizator/.ssh/authorized_keys
Se lipește cheia publică (tot textul pe o singură linie), se salvează și se setează permisiunile corecte:
chmod 700 /home/nume_utilizator/.ssh chmod 600 /home/nume_utilizator/.ssh/authorized_keys chown -R nume_utilizator:nume_utilizator /home/nume_utilizator/.ssh
Permisiunile sunt importante - SSH refuză autentificarea dacă fișierele sunt accesibile altor utilizatori.
Testarea conexiunii
Utilizatorul se poate conecta cu:
ssh nume_utilizator@ip_server
Dacă totul e configurat corect, autentificarea se face automat prin cheie, fără să ceară parolă.
Observații
- O cheie ed25519 validă are în jur de 200 de caractere - dacă e mai scurtă, probabil a fost copiată incomplet și trebuie regenerată.
- Dacă SSH cere parolă în loc să folosească cheia, primul lucru de verificat sunt permisiunile pe directorul
.sshși fișierulauthorized_keys. - Pentru a revoca accesul unui utilizator, este suficient să ștergi linia cu cheia lui din
authorized_keyssau să blochezi contul cuusermod -L nume_utilizator.