În Linux, parolele sunt stocate în siguranță în fișiere de sistem și baze de date pentru a gestiona autentificarea utilizatorilor și controlul accesului. Înțelegerea locului în care Linux stochează parolele și a modului în care acestea sunt securizate este esențială pentru administratorii de sistem și profesioniștii din domeniul securității.
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
Explicarea câmpurilor:
- username: Numele de logare 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:::
Explicarea câmpurilor:
- $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
Vizualizați informații despre îmbătrânirea parolei:
chage -l username
Forțați utilizatorii 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 restricționate 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.