În sistemele Linux, parolele utilizatorilor sunt stocate în siguranță în formate criptate în fișiere de sistem și baze de date de autentificare dedicate. Aceste credențiale joacă un rol esențial în gestionarea controlului accesului și în asigurarea faptului că numai utilizatorii autorizați pot interacționa cu resursele sistemului. De exemplu, parolele standard ale utilizatorilor sunt de obicei hașurate și salvate în fișierul /etc/shadow, care este accesibil numai proceselor privilegiate. De asemenea, servicii precum OpenSSH se bazează pe aceste hash-uri stocate pentru a verifica identitatea utilizatorilor în timpul sesiunilor de conectare la distanță.

Pentru furnizorii de găzduire precum AvaHost, înțelegerea modului și locului în care Linux stochează aceste acreditări este esențială pentru menținerea unor medii sigure pe serverele VPS și dedicate. Indiferent dacă configurați politici passwd pentru mai mulți clienți sau impuneți accesul securizat prin sshd_config, gestionarea corectă a stocării parolelor este esențială pentru prevenirea accesului neautorizat și protejarea datelor găzduite.

1. Fișierul /etc/passwd (informații despre utilizator)

Fișierul /etc/passwd conține o listă a tuturor utilizatorilor sistemului, împreună cu detaliile de bază ale contului.

Exemplu de intrare în /etc/passwd:

username:x:1001:1001:User Name:/home/username:/bin/bash

Câmpuri explicate:

  • username: Numele de autentificare al utilizatorului.
  • x: Placeholder care indică faptul că parola este stocată într-un fișier separat.
  • 1001:1001: ID utilizator (UID) și ID grup (GID).
  • User Name (Nume utilizator): Numele complet sau descrierea utilizatorului.
  • /home/username: Directorul home al utilizatorului.
  • /bin/bash: Shell-ul implicit atribuit utilizatorului.

2. Fișierul /etc/shadow (parole criptate)

Linux stochează hașurile parolelor reale în fișierul /etc/shadow, care este accesibil numai utilizatorului root.

Exemplu de intrare în /etc/shadow:

username:$6$abc123$XYZhashedpassword:18528:0:99999:7:::

Câmpuri explicate:

  • $6$: Indică algoritmul de criptare (SHA-512 în acest caz).
  • abc123: Sarea utilizată pentru hash-ul parolei.
  • XYZhashedpassword: Parola hașurată reală.
  • 18528: Data de la ultima modificare a parolei.
  • 0:99999:7: Informații privind vechimea parolei (valabilitatea minimă și maximă a parolei).

Verificarea algoritmului de hașurare a parolei:

Pentru a vedea algoritmul de hashing utilizat, executați:

cat /etc/shadow | grep username

3. Fișierul /etc/group (informații despre grup)

Fișierul /etc/group conține informații despre grupurile de utilizatori și apartenența la grupuri.

Exemplu de intrare în /etc/group:

developers:x:1002:username1,username2

4. Directorul /var/lib/AccountsService/ (Conturi utilizator GUI)

Unele distribuții Linux stochează preferințele conturilor de utilizator pentru logările GUI în:

/var/lib/AccountsService/users/

Aceste fișiere conțin metadate, cum ar fi numele de afișare și preferințele de sesiune, dar nu stochează parolele.

5. Comenzi de gestionare a parolelor

Schimbare parolă utilizator:

passwd username

Vizualizare informații despre îmbătrânirea parolei:

chage -l username

Forțarea utilizatorilor să schimbe parola la următoarea autentificare:

passwd --expire username

6. Cum securizează Linux parolele

  • Hashing și Salting: Parolele nu sunt niciodată stocate în text simplu. În schimb, acestea sunt hașurate și sărate pentru a preveni recuperarea directă.
  • Acces exclusiv la rădăcină: Fișiere precum /etc/shadow sunt limitate doar la accesul root.
  • Pluggable Authentication Modules (PAM): Autentificarea Linux este gestionată de PAM, care aplică politici de securitate a parolelor.

Concluzii

Linux stochează în siguranță acreditările utilizatorilor în fișiere de sistem precum /etc/passwd și /etc/shadow, asigurând un acces criptat și restricționat. Înțelegerea acestor mecanisme de stocare este esențială pentru securitatea sistemului și gestionarea utilizatorilor.