Cursul 4
Notiuni Linux de baza – partea III
Dragoş Acostăchioaie
http://www.adt.ro
Baza de date de parole
parolele sunt memorate prin sistemul shadow
ele sunt stocate (criptat) in /etc/shadow
acest fisier nu poate fi accesat de catre utilizatori (drepturi corecte: 400)
contine 8 campuri, in acelasi format cu /etc/passwd:
nume – numele utilizatorului
parola – parola criptata
ultima_modificare – data ultimei modificari a parolei (zile)
numar_minim_zile – numarul de zile cat timp parola nu poate fi
schimbata
numar_maxim_zile – numarul de zile inainte de data la care parola
va trebui schimbata, la care utilizatorul va primi o atentionare
zile_inactive – numarul de zile fara inactivitate trecute de la data
expirarii parolei, dupa care utilizatorul va fi blocat
data_expirarii – data la care utilizatorul va fi blocat automat
Comenzi pentru gestionarea utilizatorilor
adaugarea unui utilizator: useradd nume
stergerea unui utilizator: userdel nume
modificarea informatiilor (finger) despre utilizatori: chfn nume
adaugarea unui grup: groupadd nume
stergerea unui grup: groupdel nume
modificarea parolei unui utilizator: passwd [ nume ]
modificarea parametrilor asociati utilizatorilor: usermod nume
d director_home – specifica directorul home
g grup – grupul principal din care face parte utilizatorul
e data_expirare – data la care contul va fi blocat (AAAALLZZ)
f zile_inactivitate – numarul de zile de inactivitate de la data expirarii
parolei, dupa care contul va fi blocat (1 = dezactivare)
G grupuri – lista de grupuri din care va face parte utilizatorul
Comenzi pentru gestionarea utilizatorilor (continuare)
l nume – modifica numele contului (fara a efectua alte schimbari!!)
s shell – schimba interpretorul de comenzi
u UID – modifica UIDul utilizatorului
L – blocheaza utilizatorul
U – deblocheaza utilizatorul
Modificarea atributelor parolelor
comanda passwd
n nr_zile – numarul de zile cat timp parola nu poate fi schimbata
x nr_zile – numarul de zile dupa care parola trebuie schimbata
w nr_zile – numarul de zile inainte de data expirarii parolei, la care
utilizatorul va primi o atentionare
i nr_zile – numarul de zile fara activitate, trecute de la data expirarii
parolei, dupa care utilizatorul va fi blocat
f – forteaza utilizatorul sa isi schimbe parola la urmatoarea intrare in
sistem
l – blocheaza utilizatorul
u – deblocheaza utilizatorul
d – anuleaza parola (nerecomandat!)
Modificarea atributelor parolelor (continuare)
comanda chage
d nr_zile – forteaza data ultimei modificari a parolei, exprimata in zile
(de la 01.01.1970)
m nr_zile – numarul de zile cat timp parola nu poate fi schimbata
M nr_zile – numarul de zile dupa care parola trebuie schimbata
W nr_zile – numarul de zile inainte de data expirarii, la care
utilizatorul va primi o antentionare
I nr_zile – numarul de zile fara activitate, trecute de la data expirarii
parolei, dupa care utilizatorul va fi blocat
E data – data la care utilizatorul va fi blocat automat. Are formatul
AAAALLZZ, sau numar de zile (de la 01.01.1970)
Utilizatorul root
root = utilizator privilegiat, cu statut de supervizor, avand UID=0
are drepturi totale asupra sistemului (poate controla executia proceselor,
manipuleaza orice fisier, poate deschide orice port etc.)
se foloseste doar pentru operatiuni administrative
procesele au doua identitati la un moment dat:
identificatorul de utilizator real – cel care a lansat in executie
procesul
identificatorul de utilizator efectiv (EUID) – valabil pe perioada
executiei
transferul de identitate este acceptat de proprietarul fisierului prin
setarea atributului SUID
unele programe au nevoie obligatoriu de acest atribut pentru a putea
functiona (ex. comanda passwd)
Utilizatorul root (continuare)
comanda su (Substitute User) permite schimbarea identitatii unui utilizator
utilizatorul trebuie sa introduca parola noului utilizator (exceptie: root)
pentru a evita solicitarea parolei – programul sudo
cerinte pentru asigurarea securitatii sistemului:
toti utilizatorii sa aiba parola
utilizatorii noi creati sa aiba o parola initiala (se va schimba la prima
intrare in sistem)
parolele sa fie cat mai sigure (se verifica la stabilirea parolei daca nu
sunt cuvinte de dictionar /usr/share/dict/)
parolele sa fie usor de memorat, dar greu de ghicit
sa nu fie folosite nume, numere, alte elemente importante pentru
utilizator
sa se foloseasca caractere neuzuale, cuvinte gresit scrise, combinatii de
cuvinte etc.
Alte comenzi referitoare la utilizatori
whoami – furnizeaza numele utilizatorului efectiv curent
who – afiseaza sesiunile deschise ale utilizatorilor
w – afiseaza sesiunile deschise si alte informatii (ultima comanda
utilizata, timpul procesor consumat, ora intrarii in sistem etc.)
id – afiseaza informatii despre identitatea unui utilizator, apartenenta la
grupuri etc.
finger [ nume ] afiseaza utilizatorii conectati la sistem; informatii despre
utilizatorul specificat – campul GECOS, ultima intrare in sistem
(informatii importante!)
last [ nume ] afiseaza ultimele intrari ale utilizatorilor in sistem
Accesul privilegiat al utilizatorilor in sistem
accesul privilegiat se refera la posibilitatea utilizatorilor de intrare in sistem
fara a fi solicita parola (fara autentificare)
2 modalitati: acces la nivel de masina si acces la nivel de utilizator
fisierul /etc/hosts.equiv sau .rhosts (in directorul home) – in aceasta ordine!
format:
nume_masina [ utilizator ]
permite utilizatorului specificat sa intre in sistem de pe masina
specificata, fara a mai introduce parola
daca utilizatorul nu este specificat, se permite accesul doar
utilizatorului cu acelasi nume cu cel de pe masinagazda
[ + ] nume_masina [ + ] utilizator
folosind “+” se permite accesul, cu “” se revoca dreptul
.rhosts este ignorat daca nu este fisier obisnuit sau daca nu are ca proprietar
utilizatorul in a carui director se afla
Accesul privilegiat al utilizatorilor in sistem (continuare)
accesul privilegiat nu trebuie folosit niciodata pentru root (extrem de
periculos!)
nu trebuie create fisiere de configurare continand pe o linie doar caracterul
“+” acesta acordand acces privilegiat oricarui calculator!
nu este indicata folosirea modurilor de acces privilegiat decat atunci cand
nu exista alta solutie!
Accesul utilizatorului root in sistem
accesul utilizatorului root este permis numai de pe terminalele
specificate in /etc/securetty
nu este recomandata permiterea accesului cu root decat de pe consolele
sistemului (tty*)
se recomanda ca accesul de la distanta sa se faca prin intermediul SSH,
cu un utilizator obisnuit, si apoi apelarea comenzii su
su [ nume_utilizator ] [ optiuni ]
“” ruleaza ca shell de login (citeste fisierele de configurare ale
interpretorului de comenzi)
c comanda – executa comanda specificata
daca nume_utilizator nu este specificat, este considerat root
daca este prezent fisierul /etc/nologin, nu se va permite accesul
utilizatorilor in sistem