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.
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.
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.
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.
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ă.
.ssh și fișierul authorized_keys.authorized_keys sau să blochezi contul cu usermod -L nume_utilizator.