Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea,...

30
Capitolul 5 Utilizatori Sistemul de operare ofer˘ a resurse pe care utilizatorii s ˘ a le poat˘ a folosi. În mod tipic utilizatorii creeaz ˘ a procese (aplicat , ii) care folosesc resursele sistemului (procesor, memorie, I/O) pentru a realiza o activitate. Utilizatorii stocheaz ˘ as , i transfer˘ a date în/din sistemul de calcul, de exemplu folosind sistemul de fis , iere sau ret , eaua. Accesul la un sistem de calcul se realizeaz˘ a prin intermediul unui cont de utilizator (user account ). Un utilizator fizic (o persoan ˘ a) foloses , te un cont de utilizator pentru a se identifica în sistem s , i pentru a folosi resurse cu permisiunile aferente acelui cont de utilizator. În ceea ce urmeaz˘ a vom folosi, în general, termenul de utilizator ca fiind un cont de utilizator pe un sistem de calcul. Sistemele de operare moderne sunt în general multi-utilizator (multi-user ), adic˘ a permit existent , a mai multor conturi de utilizator pe un sistem s , i rularea simultan ˘ a a mai multor procese apart , inând diferit , ilor utilizatori. Mai mult , i utilizatori pot simultan rula shell-uri s , i porni comenzi pe un sistem prin conexiuni de ret , ea la sistem, precum folosind SSH , despre care vom discuta în Capitolul 12. Un cont de utilizator este separat de alt cont astfel c˘ a procesele unui utilizator sunt separate/izolate de procesele altuia, la fel s , i resursele folosite de procese (precum fis , ierele). Informat , iile despre conturile de utilizatori sunt utile nu doar utilizatorilor avansat , i, ci s , i utilizatorilor obis , nuit , i. Des , i utilizatorul obis , nuit are în general un singur cont pe sistemul propriu, informat , iile despre conturile de utilizator îi sunt necesare pentru a înt , elege ce act , iuni poate executa pe sistemul de operare, pentru ce act , iuni are nevoie de accesul la un cont privilegiat. De asemenea, poate s ˘ a creeze la nevoie un cont pentru un prieten sau o rud˘ a pe un sistem al s˘ au. Sau se poate autentifica pe sistemul altcuiva s , i va trebui s˘ a aib˘ a grij˘ a ce informat , ii las˘ a pe acel sistem. Pentru un utilizator cu permisiuni speciale (power user ) sau un administrator, informat , iile despre s , i operat , iile cu utilizatori sunt esent , iale pentru a asigura accesul mai multor utilizatori fizici la un sistem dat, pentru a se asigura de separarea resurselor între aces , tia s , i între procesele acestora s , i, în general, pentru a garanta securitatea sistemului. Din punctul de vedere al sistemului de operare, un cont de utilizator este reprezentat de obicei sub forma unui nume de utilizator (username). Acesta este un s , ir de caractere cu care este identificat utilizatorul. Pentru a permite accesul în sistem acestui nume de utilizator i se asociaz ˘ a o form˘ a de autentificare, precum parol ˘ a sau autentificare biometric ˘ a. Dac˘ a utilizatorul fizic furnizeaz ˘ a în interfat , a de acces la sistem un nume de utilizator valid s , i forma de autentificare corect ˘ a, i se permite accesul în sistem. 80

Transcript of Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea,...

Page 1: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

Capitolul 5

Utilizatori

Sistemul de operare ofera resurse pe care utilizatorii sa le poata folosi. În mod tipicutilizatorii creeaza procese (aplicat, ii) care folosesc resursele sistemului (procesor,memorie, I/O) pentru a realiza o activitate. Utilizatorii stocheaza s, i transfera date în/dinsistemul de calcul, de exemplu folosind sistemul de fis, iere sau ret,eaua.

Accesul la un sistem de calcul se realizeaza prin intermediul unui cont de utilizator(user account). Un utilizator fizic (o persoana) foloses, te un cont de utilizator pentru ase identifica în sistem s, i pentru a folosi resurse cu permisiunile aferente acelui cont deutilizator. În ceea ce urmeaza vom folosi, în general, termenul de utilizator ca fiind uncont de utilizator pe un sistem de calcul.

Sistemele de operare moderne sunt în general multi-utilizator (multi-user ), adica permitexistent,a mai multor conturi de utilizator pe un sistem s, i rularea simultana a mai multorprocese apart, inând diferit, ilor utilizatori. Mai mult, i utilizatori pot simultan rula shell-uris, i porni comenzi pe un sistem prin conexiuni de ret,ea la sistem, precum folosind SSH, despre care vom discuta în Capitolul 12. Un cont de utilizator este separat de altcont astfel ca procesele unui utilizator sunt separate/izolate de procesele altuia, la fel s, iresursele folosite de procese (precum fis, ierele).

Informat, iile despre conturile de utilizatori sunt utile nu doar utilizatorilor avansat, i, ci s, iutilizatorilor obis, nuit, i. Des, i utilizatorul obis, nuit are în general un singur cont pe sistemulpropriu, informat, iile despre conturile de utilizator îi sunt necesare pentru a înt,elege ceact, iuni poate executa pe sistemul de operare, pentru ce act, iuni are nevoie de accesul laun cont privilegiat. De asemenea, poate sa creeze la nevoie un cont pentru un prietensau o ruda pe un sistem al sau. Sau se poate autentifica pe sistemul altcuiva s, i vatrebui sa aiba grija ce informat, ii lasa pe acel sistem. Pentru un utilizator cu permisiunispeciale (power user ) sau un administrator, informat, iile despre s, i operat, iile cu utilizatorisunt esent, iale pentru a asigura accesul mai multor utilizatori fizici la un sistem dat,pentru a se asigura de separarea resurselor între aces, tia s, i între procesele acestora s, i,în general, pentru a garanta securitatea sistemului.

Din punctul de vedere al sistemului de operare, un cont de utilizator este reprezentat deobicei sub forma unui nume de utilizator (username). Acesta este un s, ir de caractere cucare este identificat utilizatorul. Pentru a permite accesul în sistem acestui nume deutilizator i se asociaza o forma de autentificare, precum parola sau autentificarebiometrica. Daca utilizatorul fizic furnizeaza în interfat,a de acces la sistem un nume deutilizator valid s, i forma de autentificare corecta, i se permite accesul în sistem.

80

Page 2: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

CAPITOLUL 5. UTILIZATORI 81

Pâna acum am prezentat conturi de utilizator de sistem, adica acele conturi care permitcrearea de procese s, i det, in resurse precum fis, iere. Exista s, i conturi de utilizatori deaplicat, ii, precum conturile de utilizatori de aplicat, ii web. Aceste conturi permit accesulla resurse care sunt gestionate de aplicat, ie, nu de sistemul de operare. De asemenea,aceste conturi nu permit crearea de procese sau accesul la resursele sistemului; permitdoar accesul gestionat de aplicat, ie la resursele aplicat, iei.

Indiferent de tipul de cont de utilizator (de sistem sau de aplicat, ie) principiul de folosireeste acelas, i: se foloses, te un nume de utilizator s, i o forma de autentificare pentru apermite accesul acestuia la resursele sistemului sau aplicat, iei. Toate numele de utilizators, i formele de autentificare valide sunt ment, inute într-o baza de date. Când un utilizatorfizic transmite aceste date, sistemul sau aplicat, ia le verifica daca sunt prezente în bazade date; în caz afirmativ se ofera accesul la resurse. Acest mod de folosire este descrisîn Figura 5.1

Figura 5.1: Acces baza de date s, i resurse

În continuare ne vom referi în special la conturile de utilizator de sistem, cu precizareaca multe concepte se aplica s, i la conturile de utilizator de aplicat, ie.

5.1 Utilizatori de sistem

As, a cum am precizat mai sus conturile de utilizator de sistem sunt folosite pentru aobt, ine acces la resursele gestionate de sistemul de operare. Conturile de utilizatorpermit obt, inerea unui shell s, i rularea de comenzi care creeaza procese.

Page 3: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

82 INTRODUCERE ÎN SISTEME DE OPERARE

De obicei un sistem de operare ofera un prompt grafic sau text de autentificare unde vorfi completate numele de utilizator s, i apoi, uzual, parola.

În momentul autentificarii unui utilizator de sistem, acesta are acces complet la o partedin sistemul de fis, iere numita directorul home al utilizatorului, reprezentânddirectorul personal al acestuia. Fiecare sistem de operare are, în general, un astfel dedirector pentru utilizatorul de sistem (/home/student pe Linux,C:\Users\student pe Windows, /Users/student pe macOS). Apoi utilizatorulpoate crea procese care pot accesa fis, iere sau alte resurse ale utilizatorului.

5.1.1 Permisiuni s, i privilegii

Odata autentificat în sistem (sau în aplicat, ie), un utilizator are anumite permisiuni defolosire a sistemului. De exemplu, un utilizator obis, nuit poate crea fis, iere doar îndirectorul sau home, dar nu poate instala pachete. Un alt utilizator poate aveapermisiunea de a instala pachete. Sistemul de operare, pe baza unor configurariaferente, permite unui utilizator anumite act, iuni.

În unele sisteme s, i aplicat, ii exista not, iunea de rol. Un utilizator poate avea un rol careîi confera anumite permisiuni. De exemplu, rolul de Administrator înseamna, îngeneral, într-o instalare de platforma precum Moodle1, permisiuni complete în cadrulplatformei; un rol de Profesor înseamna controlul cont, inutului pe cursurile aferente;un rol de Student înseamna posibilitatea accesarii cont, inutului.

În general, sistemele ofera anumite permisiuni utilizatorilor. Structurarea acestorpermisiuni este esent, iala pentru asigurarea securitat, ii sistemului. Daca un utilizator aremai multe permisiuni decât are nevoie, acesta va putea abuza sau exploata sistemul.Daca un atacator din exterior obt, ine permisiunile unui utilizator (impersoneazautilizatorul), pagubele pe care le provoaca vor fi proport, ionale cu permisiunileutilizatorului.

Din punctul de vedere al conceptelor de securitate, utilizatorul este un agent iarresursele puse la dispozit, ie de sistem sunt obiecte. Politica de securitate (securitypolicy ) a sistemului precizeaza permisiunile s, i dicteaza ce agent, i au acces la ceobiecte. În acest context apar adesea termenii de permisiune s, i privilegiu.

În general, spunem ca permisiunile sunt informat, ii aferente obiectului care stabilescce agent, i pot face tipuri de act, iuni, în vreme ce privilegiile sunt certificate aferenteagentului care stabilesc ce act, iuni poate acesta întreprinde. Mai multe informat, iigasit, i în Capitolul 12.

În sistemele de operare de uz general (Linux/Unix, Windows, macOS) exista, în general,utilizatori obis, nuit, i (neprivilegiat, i) s, i utilizatori privilegiat, i.

1http://www.moodle.org

Page 4: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

CAPITOLUL 5. UTILIZATORI 83

Utilizatorii neprivilegiat, i au acces complet la o parte din sistemul de fis, iere (directorulhome) s, i pot crea procese care folosesc aceste resurse. Utilizatorii privilegiat, ipot face act, iuni care afecteaza starea globala a sistemului: instalare de pachete,adaugare/s, tergere de utilizatori, repornirea sistemului, configurarea datei sistemului,schimbarea permisiunilor sistemului, configurarea ret,elei etc.

În general, exista un utilizator al sistemului care are permisiuni complete. De obicei nereferim la acest utilizator ca superuser. Pe sistemele Linux/Unix este numit root, învreme ce pe sistemele Windows este numit Administrator. În multe situat, ii, pentrurealizarea unei operat, ii privilegiate, se acceseaza contul de superuser.

5.2 Utilizatorul administrativ (superuser)

Utilizatorul administrativ, superuser -ul, det, ine controlul complet al sistemului. Toateoperat, iile privilegiate, inaccesibile unui utilizator obis, nuit neprivilegiat, sunt permiseacestuia. Un utilizator obis, nuit va accesa acest cont special (daca s, tie parola sau formade autentificare a acestuia) pentru a realiza o operat, ie privilegiata.

Faptul ca superuser-ul are acces complet la sistem îl face foarte periculos de folosit.Daca un atacator obt, ine acces neautorizat la contul de superuser, atunci sistemul estecompromis. La fel, daca rulam gres, it o comanda privilegiata, aceasta poate afectairemediabil sistemul.

Comanda rm -fr /: Comanda rm -fr / este celebra pentru ca poate fi folositapentru a s, terge tot sistemul de fis, iere. Daca este folosita de contul de rootaceasta comanda s, terge cont, inutul sistemului de fis, iere începând de la directorulradacina (/). Avet, i grija în folosire acestei comenzi s, i, ori de câte ori s, terget, i unfis, ier, avet, i grija ce argumente transmitet, i comenzii rm.

De aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode derealizare de act, iuni privilegiate care sa nu necesite accesarea directa a contuluiprivliegiat. Astfel ca, în folosirea superuser-ului, exista urmatoarele recomandari defolosire:

• Sa fie folosit contul doar când este absoluta nevoie, pentru operat, ii privilegiate. Nuva autentificat, i ca superuser pe interfat,a grafica.

• Sa fie o parola / forma de autentificare cât mai greu de accesat în mod neautorizat.

• Sa fie evitata folosirea superuser-ului când exista forme alternative de executarede act, iuni privilegiate.

Sistemele de operare moderne ofera opt, iuni alternative de executare a act, iunilorprivilegiate. În Linux/Unix se poate folosi sudo, bitul setuid, capabilitat, i; le vomprezenta în Sect, iunea 5.2.3.

În Windows, începând cu Windows Vista se foloses, te User Account Control (UAC). UserAccount Control este o tehnologie care ofera un prompt care trebuie confirmat ori de câte

Page 5: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

84 INTRODUCERE ÎN SISTEME DE OPERARE

ori se dores, te realizarea unei act, iuni privilegiate. Doar utilizatorilor configurat, i specific lise permite rularea de act, iuni privilegiate prin User Account Control.

* screenshot cu user account control

5.2.1 Utilizatorul administrativ în Linux (root)

Utilizatorul administrativ în Linux este numit root. Utilizatorul root are acces completla resursele sistemului s, i poate face orice operat, ii. În general, accesarea contului deroot este evident, iata în linia de comanda prin prezent,a simbolului # (diez) în cadrulpromptului:

* exemplu prompt de utilizator neprivilegiat s, i root

Accesarea unui cont (inclusiv a contului root) se poate face în doua moduri:

• autentificarea în sistem cu acel cont (la un prompt de login în linia de comandasau în interfat,a grafica)

• schimbarea utilizatorului curent în linia de comanda prin folosirea comenzii su(substitute user )

În general, nu este recomandata autentificarea în sistem folosind contul de root. Oriceaplicat, ie care va fi lansata din acest cont va avea acces complet asupra resurselorsistemului, devenind astfel o posibila zona de atac a acestuia. Este recomandat safolosit, i comanda su pentru schimbarea temporara a utilizatorului s, i obt, inerea unui shellde root, folosirea comenzilor privilegiate s, i apoi revenirea în consola utilizatoruluineprivilegiat folosind comanda exit, as, a cum este ilustrat mai jos:

* listare de comenzi folosind su pentru obt, inerea unui cont de root s, i instalarea unuipachet (operat, ie privilegiata)

5.2.2 Utilitarul su

Utilitarul su este folosit pentru schimbarea utilizatorului, nu neaparat în root. Daca sunu primes, te nici un argument sau primes, te ca argument root, va schimba utilizatorulîn root. Altfel va schimba în utilizatorul primit ca parametru. La rularea comenzii suse cere parola noului utilizator; fara introducerea parolei acelui utilizator nu se poateschimba utilizatorul.

* listare de comenzi cu su

O forma uzuala de rulare a comenzii su este cu opt, iunea -l sau - care schimba mediulde lucru al viitoarei comenzi, incluzând directorul home:

* listare cu su - sau su -l

Utilitarul su permite rularea unei comenzi fara a deschide un shell prin intermediulopt, iunii -c. În felul acesta se ruleaza direct comanda primita ca argument s, i apoi serevine la shell-ul utilizatorului curent, fara a se deschide un shell al noului utilizator:

* listare cu su -c

Page 6: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

CAPITOLUL 5. UTILIZATORI 85

5.2.3 Alternative la root în Linux

As, a cum am precizat anterior, utilizatorul root det, ine controlul întregului sistem. Dacaun atacator obt, ine acces neautorizat la contul root, sistemul va fi compromis. Pe de altaparte, privilegiile pe care le det, ine utilizatorul root sunt necesare pentru administrareasau funct, ionarea sistemului, precum configurarea unei interfet,e de ret,ea. De aceeasistemele de operare moderne ofera opt, iuni de granularizare a privilegiilor. În Linuxexista câteva astfel de opt, iuni printre care amintim bitul setuid, capabilitat, i s, i utilitarulsudo.

Bitul setuid (set-user-id-on-execution) este un bit asociat unui fis, ier executabil. Atuncicând executam acel fis, ier procesul nou creat nu va apart, ine utilizatorului care a rulatcomanda, ci utilizatorului care det, ine fis, ierul, în mod obis, nuit utilizatorul root. În listareade mai jos avem un exemplu de folosire a bitului setuid:

* exemplu cu setuid

Prezent,a bitului setuid pe un executabil det, inut de root (de exemplu passwd, su,sudo) înseamna ca acele comenzi pot fi rulate de orice utilizator pentru a crea proceseprivilegiate. Vom explica în Sect, iunea 5.4 de ce aceste comenzi sunt privilegiate.

Bitul de setuid are dezavantajul ca procesul nou creat ruleaza cu privilegii completede root. Daca acel proces este exploatat, atacatorul va det, ine un proces cupermisiuni de root s, i sistemul va fi compromis. De aceea, pe Linux exista un altmecanism numit capabilitat, i. Capabilitat, ile sunt un concept de baza în sisteme deoperare însemnând atas, area unui privilegiu unui agent (unui obiect). De exemplu, pesistemele Linux moderne, executabilul aferent utilitarului ping are atas, ata capabilitateacap_net_raw. Aceasta capabilitate înseamna ca procesele create din executabilulping vor avea privilegiul de a crea resurse privilegiate necesare utilitarului ping.

Spre deosebire de bitul de setuid, capabilitat, ile sunt granulare. Privilegiile aferentecontului root sunt separate în capabilitat, i. Un proces are atas, ate, la nevoie, doarcapabilitat, ile de care are nevoie; daca acel proces este exploatat atunci act, iunileposibile ale atacatorului sunt limitate la ce privilegii ofera capabilitat, ile, nu la toateprivilegiile contului de root.

Exemple de capabilitat, i pe Linux sunt:

• cap_net_raw: permite folosirea de socket, i speciali (numit, i raw)

• cap_net_admin: permite configurarea ret,elei

• cap_fowner: permite configurare de permisiuni pe orice fis, ier

• cap_kill: permite transmiterea de semnale catre orice procese

Documentat, ie despre capabilitat, i: Suportul de capabilitat, i este o componentaavansata a sistemului de operare, care permite dezvoltatorilor de aplicat, iiconfigurarea de privilegii granulare. Pentru mai multe detalii urmarit, i pagina demanual, folosind comanda man 7 capabilities.

Page 7: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

86 INTRODUCERE ÎN SISTEME DE OPERARE

5.2.3.1 Utilitarul sudo

Bitul setuid s, i capabilitat, ile sunt mecanisme care ofera privilegii unor executabile s, i aproceselor pornite din acestea sau, în cazul capabilitat, ilor, s, i mai granular, unorprocese. Nu permit us, or atas, area de privilegii unui utilizator sau configurareapersonalizata (custom) a act, iunilor care pot fi executate de acel utilizator. Pentruaceasta, solut, ia folosita pe sistemele Unix este sudo.

sudo este un utilitar care permite rularea unor comenzi în numele altui utilizator, îngeneral root. sudo are o configurare granulara s, i permite precizarea explicita a cecomenzi sa fie rulate. Spre deosebire de utilitarul su, la rularea utilitarului sudo nu estenevoie de cunoas, terea parolei noului utilizator, ci a utilizatorului curent.

În mod tipic, când rulam sudo, îl succedam cu comanda pe care vrem sa o executamca root, ca în exemplele de mai jos:

* exemple de folosire sudo pentru act, iuni privilegiate

Adesea dorim obt, inerea unui shell de root pentru a rula mai multe comenzi privilegiate.Pentru aceasta rulam tipic una dintre cele doua comenzi de mai jos:

* rulare sudo su s, i sudo bash

Utilitarul sudo permite unui utilizator sa ruleze comenzi ca root (sau ca alt utilizator)printr-o configurat, ie din fis, ierul de configurare /etc/sudoers. De exemplu, utilizatorulstudent poate rula comenzi ca root cu ajutorul unei linii de configurare precum cea demai jos:

* exemplu de linie din /etc/sudoers

În mod uzual, fis, ierul /etc/sudoers are linii de configurare care permit utilizatorilordin grupul admin sau grupul sudo sa poata rula comenzi ca root, ca mai jos:

1 # Allow members of group admin to execute any command.2 %admin ALL=(ALL) ALL3 # Allow members of group sudo to execute any command.4 %sudo ALL=(ALL) ALL

În aceasta situat, ie, daca dorim ca un utilizator sa poata rula comenzi ca root îladaugam în grupul admin sau în grupul sudo, nu este nevoie de editarea fis, ierului/etc/sudoers.

Folosirea contului de root: E important când e folosit root si când se obt, ineconsola de root s, i ce utilizatori au acces la sudo. Avem grija când acordam unuiutilizator permisiuni de sudo, adica posibilitatea de a rula comenzi ca root, lucrucare poate duce la compromiterea sistemului.

sudo permite configurari mai avansate în fis, ierul /etc/sudoers; de exemplu linia deconfigurare de mai jos permite utilizatorul alin rularea doar a comenzii cat ca root,permit,ând vizualizarea tuturor fis, ierelor din sistem:

* exemplu de linie s, i rularea comenzii aferente

Fis, ierul /etc/sudoers este un fis, ier important în sistem s, i de aceea exista mai multerestrict, ii s, i convent, ii pentru accesarea acestuia. Astfel, deoarece configurat, ia sa

Page 8: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

CAPITOLUL 5. UTILIZATORI 87

afecteaza întreg sistemul de operare, editarea fis, ierului este permisa numaiutilizatorului privilegiat. De asemenea, pentru a preveni editarea eronata (ce poateduce sistemul într-o stare de eroare imposibil de rezolvat), se recomanda folosireacomenzii visudo pentru editare. Pentru editarea sa, fie rulam comanda visudo caroot, fie comanda sudo visudo.

Folosire /etc/sudoers: Fis, ierul /etc/sudoers permite configurari avansate.Putet, i parcurge pagina de manual man sudoers sau resursele din Interneta.

ahttps://www.digitalocean.com/community/tutorials/how-to-edit-the-sudoers-file-on-ubuntu-and-centos

5.2.3.1.1 sudo s, i redirectare O situat, ie frecventa este sa redirectam rezultatul rulariiunei comenzi într-un fis, ier privilegiat (la care nu avem de obicei acces). De exemplu,daca dorim sa activam rutarea pe un sistem Linux, vom rula, ca root, comanda:

1 echo 1 > /proc/sys/net/ipv4/ip_forward

În momentul în care folosim un utilizator neprivilegiat dar care poate folosi sudo, am fitentat, i sa încercam sa rulam comanda:

1 sudo echo 1 > /proc/sys/net/ipv4/ip_forward

Acest lucru însa nu funct, ioneaza pentru ca, des, i comanda echo 1 ruleaza ca root,comanda sudo, al carei output este redirectat, ruleaza ca utilizator neprivilegiat. Adicaredirectarea cu operatorul > are loc pentru comanda sudo, rulata de utilizatorneprivilegiat, s, i nu va reus, i.

Solut, ia la aceasta situat, ie este sa nu folosim redirectare ci sa folosim o comanda careprimes, te ca argument acel fis, ier, iar comanda sa ruleze privilegiat ca sudo. Adica solut, iaeste folosirea comenzii tee, ca mai jos:

1 echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward

În forma de mai sus comanda tee este rulata ca root prin intermediul utilitaruluisudo. Comanda scrie informat, ia primita la intrarea standard (adica 1) în fis, ierul primitca argument (/proc/sys/netc/ipv4/ip_forward) în mod privilegiat.

Folosire tee pentru a scrie într-un fis, ier privilegiat: Atunci când dorim sa scriemîntr-un fis, ier privilegiat fara a accesa o consola de root, folosim comanda tee cusudo. Comanda tee are s, i opt, iunea -a pentru adauga informat, ie la sfârs, itulfis, ierului (append); în mod obis, nuit comanda suprascrie cont, inutul fis, ierului primitca argument.

5.3 Operat, ii cu utilizatori

În sistemul de operare un utilizator este reprezentat de procesele s, i resursele acestuia.Procesele s, i resursele (de exemplu fis, ierele) sunt marcate ca apart, inând utilizatorului.

Page 9: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

88 INTRODUCERE ÎN SISTEME DE OPERARE

Pentru un utilizator fizic (o persoana), un utilizator este identificat printr-un nume deutilizator (username); atunci când ne autentificam, pentru acces folosim numele deutilizator. La nivelul sistemului de operare, însa, un utilizator este identificat printr-unnumar, numit în mod uzual user identifier sau UID, similar cum un proces esteidentificat printr-un process identifier (PID).

Procesele s, i fis, ierele unui utilizator au în atributele acestora câmpul UID. Pentru procese,acest câmp ofera informat, ii despre ce operat, ii asupra resurselor sistemului de operarepot fi executate de proces, în timp ce câmpul UID al fis, ierelor identifica utilizatorul carele det, ine. În exemplul de mai jos listam UID-ul proceselor folosind comanda ps s, i listamUID-ul unui fis, ier folosind comand stat:

* TODO: listare

De obicei, un proces poate avea acces la o resursa daca UID-ul procesului este marcatîn cadrul resursei ca având acces.

5.3.1 Atribute ale utilizatorilor. Informat, ii despre utilizatori

Un utilizator are atribute care îi permit identificarea în sistem, autentificarea s, i accesul laresurse. As, a cum am precizat mai sus, cele mai importante doua atribute sunt numelede utilizator (username) s, i identificatorul de utilizator (user identifier, UID).

Un utilizator de sistem are acces la un director home (un subdirector în sistemul defis, iere unde are acces complet). Pentru utilizatorul student acesta este, în mod uzual,/home/student (pe Linux), /Users/student (pe macOS) sauC:\Users\student (pe Windows).

Pentru autentificare, un utilizator are asociata o parola sau o alta forma de autentificare.Aceasta trebuie furnizata la un prompt de login (interfat,a în linia de comanda sau grafica)pentru a fi permis accesul în sistem în contul acelui utilizator.

Pe sistemele Unix, un utilizator are asociat un shell de autentificare (login shell). Esteprogramul care este rulat în momentul autentificarii utilizatorului pe un sistem; programuleste, de obicei, un shell în linia de comanda.

Pentru gestiunea mai flexibila a accesului la resurse, utilizatorii sunt grupat, i. Unutilizator face parte din unul sau mai multe grupuri. Astfel ca un administrator caredores, te ca mai mult, i utilizatori sa aiba acces la o anumita resursa va crea un grup, vaadauga utilizatorii la acel grup s, i va oferi grupului permisiuni asupra resursei respective.Un grup poate cont, ine 0 sau mai mult, i utilizatori, iar un utilizator poate apart, ine unui saumai multor grupuri, as, a cum este indicat în Figura 5.2.

De exemplu, în Windows, exista grupul Administrators. Un utilizator care este partedin grupul Administrators are acces complet la sistem.

Aceste atribute sunt definite în fis, iere de configurare sau de tip baza de date. Acesteatribute pot fi, de obicei, vizualizate de orice utilizator, dar modificate doar de un utilizatorprivilegiat. Mai multe informat, ii prezentam în Sect, iunea 5.3.1.

Page 10: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

CAPITOLUL 5. UTILIZATORI 89

Figura 5.2: Asocierea utilizatori la grupuri

5.3.2 Obt, inerea de informat, ii despre utilizatori

Informat, iile despre utilizatori (nume de utilizator, identificator de utilizator, director home)pot fi obt, inute folosind interfet,ele grafice aferente unui sistem de operare sau distribut, iisau folosind utilitare în linia de comanda.

În Windows, pentru obt, inerea de informat, ii despre utilizatori folosim în mod obis, nuitinterfat,a grafica din Control Panel -> TODO -> TODO.

5.3.2.1 Obt, inerea de informat, ii despre utilizatori în Linux

În Linux, informat, iile despre utilizatori sunt stocate în fis, iere de configurare dedicate.În scenarii de administrare mai complexe (care nu fac subiectul acestei cart, i), acesteinformat, ii sunt stocate într-o baza de date. Fis, ierele de configurare în care sunt ret, inuteinformat, ii despre utilizatori sunt indicate în Tabelul 5.1.

Tabelul 5.1: Informat, ii despre utilizatori

Fis, ier Rol Informat, ii

/etc/passwd informat, ii utilizatori nume de utilizator, UID,director home, shell de login,GID

/etc/shadow parole utilizatori nume de utilizator, parolacriptata, informat, ii expirareparola

/etc/group informat, ii grupuri nume grup, GID, utilizatoriaferent, i

Fis, ierele de configurare au forma tabelara cu coloane: fiecare linie este o intrare în tabeliar fiecare coloana este un atribut al acelei intrari. Mai jos sunt prezentate câteva linii din

Page 11: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

90 INTRODUCERE ÎN SISTEME DE OPERARE

fiecare fis, ier de configurare s, i explicat, iile pentru rolul acestora. Detalii despre fis, ierele/etc/passwd s, i /etc/shadow prezentam în Sect, iunea 5.4.

Putem obt, ine informat, ii despre utilizatori direct din fis, ierele de configurare de mai sus,as, a cum facem mai jos:

+ snippet cu comenzi de investigat, ii de fis, iere de configurare de utilizatori

Altfel, informat, ii despre utilizatori obt, inem folosind utilitare precum cele din Tabelul 5.2.Aceste utilitare investigheaza fis, ierele de configurare din Tabelul 5.1.

Tabelul 5.2: Utilitare de investigare utilizatori

Utilitar Rol Fis, iere investigate

id informat, ii despre utilizator /etc/passwd,/etc/group

groups grupurile utilizatorului curent /etc/group

users, w, who utilizatorii autentificat, i însistem acum

/var/run/utmp

whoami numele utilizatorului curent N/A

finger, pinky informat, ii complete despre unutilizator

/etc/passwd,/etc/group

Mai jos sunt câteva exemple de folosire ale comenzilor de mai sus s, i explicat, iile aferenteexemplele:

+ exemple de folosire id, groups, users, whoami, who, finger, pinky

În Linux, anumit, i utilizatori au configurat ca shell de login /bin/false sau/bin/nologin. Aceasta înseamna ca aces, ti utilizatori nu se pot autentifica în sistems, i obt, ine un shell de login. Aces, ti utilizatori mai sunt numit, i s, i utilizatori de sistem, iarceilalt, i sunt numit, i utilizatori interactivi. Utilizatorii de sistem sunt cei care pot aveaprocese dar nu pot obt, ine shell de login. Cei interactivi pot obt, ine shell s, i pot rula apoicomenzi. La o instalare simpla, o foarte buna parte dintre utilizatorii unui sistem Linuxsunt utilizatori de sistem:

+ afis, are utilizatori din /etc/passwd care au shell de login /bin/false sau /bin/nologin

5.3.3 Gestiunea utilizatorilor s, i grupurilor

Gestiunea utilizatorilor s, i grupurilor, însemnând crearea, s, tergerea sau modificareautilizatorilor s, i grupurilor poate fi facuta, în mod normal, doar de un utilizator privilegiat.Operat, iile de gestiune a utilizatorilor sunt:

• crearea unui utilizator: un nou cont de utilizator, identificat de un nume de utilizator(username) s, i un identificator de utilizator (UID) este disponibil în sistem

• s, tergerea unui utilizator: un cont de utilizator este s, ters din sistem, nu mai pot ficreate procese cu acest utilizator

• crearea unui grup: este creat un grup nou în care pot fi adaugat, i utilizatori

Page 12: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

CAPITOLUL 5. UTILIZATORI 91

• s, tergerea unui grup: este s, ters un grup existent

• adaugarea unui utilizator la un grup

• s, tergerea unui utilizator dintr-un grup

• schimbarea parolei unui utilizator

• modificarea atributelor unui utilizator: username, login shell, director home

Aceste operat, ii de gestiune duc la modificarea fis, ierelor de configurare sau de tip bazede date din sistem care ret, in informat, iile despre grupuri s, i utilizatori. Operat, iile suntrealizate prin utilitare specifice fie din interfat,a grafica fie din linie de comanda, ca maijos.

5.3.4 Gestiunea utilizatorilor s, i grupurilor în Windows

În Windows, gestiunea utilizatorilor s, i grupurilor o facem din interfat,a din panoul decontrol. Aceasta este uzual accesibila din Control Panel -> TODO -> TODO, ca înFigura 5.3.

Pe lânga interfat,a grafica, uzuala, Windows ofera s, i utilitare în linia de comanda pentrugestiunea utilizatorilor folosind interfat,a netsh1.

5.3.4.1 Gestiunea utilizatorilor s, i grupurilor în Linux

În Linux exista interfet,e grafice pentru gestiunea utilizatorilor în funct, ie de mediuldesktop folosit (GNOME, KDE, XFCE etc.) În mod tradit, ional, gestiunea se face în liniade comanda cu ajutorul utilitarelor specifice, indicate în Tabelul 5.3.

Pe distribut, iile bazate pe Debian (Debian, Ubuntu, Linux Mint etc.) exista un set deutilitare mai us, or de folosit care înglobeaza comenzile de mai sus, indicate în Tabelul 5.4

În Linux/Unix exista doua tipuri de grupuri: grupuri primare s, i grupuri secundare.Un utilizator apart, ine unui singur grup primar s, i oricâtor grupuri secundare. Când unutilizator este creat, i se precizeaza grupul primar aferent. Utilitarul usermod poate fifolosit pentru modificarea grupurilor din care face parte un utilizator; utilitarul are opt, iunidistincte pentru modificarea grupului primar s, i pentru modificarea grupurilor secundare.

Un utilizator neprivilegiat are posibilitatea de a-s, i modifica anumite informat, ii proprii:shell-ul de login, numele de utilizator, datele personale, parola. Pentru aceastafoloses, te utilitarele din Tabelul 5.5.

Un grup care este grupul primar al unui utilizator nu poate fi s, ters. Întâi trebuie sa fies, ters utilizatorul, apoi grupul.

Mai jos prezentam un scenariu de lucru cu utilizatori s, i grupuri în care sunt folositecomenzile de gestiune din Linux:

+ snippet cu comenzi s, i apoi în continuare explicat, iile pentru acestea

1https://docs.microsoft.com/en-us/windows-server/networking/technologies/netsh/netsh-contexts

Page 13: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

92 INTRODUCERE ÎN SISTEME DE OPERARE

Figura 5.3: Gestiunea utilizatorilor în Windows

Page 14: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

CAPITOLUL 5. UTILIZATORI 93

Tabelul 5.3: Utilitare de gestiune a utilizatorilor

Operat, ie Utilitare Fis, iere modificate

adaugare utilizator useradd /etc/passwd,/etc/shadow,/etc/group

s, tergere utilizator userdel /etc/passwd,/etc/shadow,/etc/group

modificare utilizator usermod /etc/passwd,/etc/shadow,/etc/group

adaugare grup groupadd /etc/group

s, tergere grup groupdel /etc/group

modificare grup groupmod /etc/group

modificare shell chsh /etc/passwd

modificare informat, iiutilizator

chfn /etc/passwd

schimbare parola passwd /etc/shadow

Tabelul 5.4: Utilitare wrapper Debian

Utilitar wrapper Utilitar de baza

adduser useradd

deluser userdel

addgroup groupadd

delgroup groupdel

Tabelul 5.5: Utilitare pentru modificare informat, ii proprii

Operat, ie Utilitar

schimbare shell de login chsh

schimbare informat, ii chfn

schimbare parola passwd

Gestiunea parolelor este o componenta critica a sistemului de operare s, i o vom prezentaîn sect, iunea de mai jos.

Page 15: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

94 INTRODUCERE ÎN SISTEME DE OPERARE

5.4 Autentificare. Gestiunea parolelor

Atunci când un utilizator dores, te accesul la sistemul de operare trebuie sa se autentifice.Autentificarea presupune, în mod tipic, furnizarea unui nume de utilizator (username)s, i a unei parole (password). Acest lucru este valabil s, i pentru aplicat, ii (aplicat, ii web,jocuri, aplicat, ii de baza de date, conturi bancare). Exista s, i alte moduri de autentificareprecum folosirea de informat, ii biometrice (amprenta digitala, retina), dispozitiv de tiptoken de autentificare, autentificare cu cheie publica. În aceasta sect, iune vom prezentadoar autentificarea pe baza de parole.

5.4.1 Baza de date de parole

Pentru ca autentificarea sa reus, easca, adica utilizatorului sa îi fie permis accesul însistem, trebuie ca numele de utilizator s, i parola sa fie valide. Sistemul de operare det, ineo baza de date cu perechi (nume de utilizator, parola). Autentificarea reus, es, te dacanumele de utilizator s, i parola introduse de utilizator se gasesc în baza de date.

Baza de date de parole este modificata de act, iunile de lucru cu utilizatori. Adica:

• Se adauga o noua intrare în baza de date de parole, adica o noua pereche (numede utilizator, parola) în momentul adaugarii unui utilizator nou în sistem.

• Se s, terge o intrare existenta în baza de date de parole în momentul s, tergerii unuiutilizator în sistem.

• Se modifica o intrare existenta în baza de date atunci când un utilizator îs, i schimbaparola.

Baza de date de parole este o componenta critica a sistemului iar accesul la aceastatrebuie sa fie permis numai pentru act, iuni bine definite: autentificare,adaugarea/s, tergerea unui utilizator, schimbarea parolei. Altfel, daca ar fi permise s, i alteact, iuni, un utilizator neprivilegiat ar accesa baza de date s, i ar afla parolele altorutilizatori s, i ar putea folosi conturile acestora, cel mai periculos fiind folosirea conturilorde utilizatori privilegiat, i. De aceea, accesul la baza de date este controlat strict.

Chiar s, i cu un control strict, se poate întâmpla ca un defect în sistem sa permita unuiutilizator neprivilegiat accesul la baza de date de parole. De aceea parolele nu suntret, inute în format citibil (plain text), ci sunt criptate. Daca un atacator obt, ine în modnevalid accesul la baza de date de parole, acesta va trebui sa decripteze parolele, lucrudificil de realizat. Atacuri celebre în lume au avut ca rezultat obt, inerea bazelor de datede parole1, deci criptarea acestora e foarte importanta.

În Linux, baza de date de utilizatori este reprezentata de fis, ierul /etc/passwd.Întrucât multe comenzi au nevoie de accesul la acest fis, ier pentru a obt, ine UID-ul cândse s, tie numele de utilizator sau pentru a afla shell-ul utilizatorului curent, acest fis, ier nupoate ret, ine parola. Daca ar fi as, a, orice comenzi uzuale ar putea obt, ine paroleleutilizatorilor. Baza de date de parole este reprezentata în Linux de fis, ierul /etc/shadow.Fis, ierul /etc/shadow poate fi accesat doar de utilizatori privilegiat, i as, a cum putemvedea în listarea de mai jos:

1https://en.wikipedia.org/wiki/List_of_data_breaches

Page 16: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

CAPITOLUL 5. UTILIZATORI 95

* ls -l /etc/passwd, ls -l /etc/shadow

O intrare în fis, ierul /etc/shadow cont, ine numele de utilizator, parola criptata s, iinformat, ii legate de gestiunea parolei:

* Intrare din fis, ierul /etc/shadow

Pentru informat, ii detaliate despre formatul intrarii s, i al parolei criptate, consultat, i paginilede manual folosind comenzile man shadow s, i man crypt.

În Windows, baza de date de parole se numes, te Security Account Manager (SAM ), s, i segases, te în \%SystemRoot%\system32\config\SAM. Accesul la SAM are loc prinintermediul Windows Registry s, i este, similar cu /etc/shadow, permis numai act, iunilorbine definite. Similar cu /etc/shadow, parolele sunt ret, inute criptate.

5.4.2 Gestiunea parolelor

Un utilizator îs, i poate gestiona parola proprie, iar un utilizator administrativ poategestiona parola tuturor utilizatorilor. Gestiunea parolelor înseamna în mod uzualschimbarea lor dar sunt s, i alte act, iuni. O parola are asociata o durata de viat,a dupacare expira; odata expirata, o parola trebuie sa fie schimbata. Alta act, iune legata deparole este blocarea parolei, astfel încât autentificarea cu parola devine inaccesibila.Sumarizând, exista urmatoarele act, iuni de gestiune a parolelor:

• schimbarea parolei

• stabilirea duratei de viat,a a unei parole

• blocarea parolei

În Windows se foloses, te interfat,a grafica pentru gestiunea parolelor. Se acceseazaControl Panel -> User Accounts -> .. ca în Figura 5.4.

În Linux, modul uzual de gestiune a parolei este prin linia de comanda folosind utilitarulpasswd. Cu ajutorul utilitarului passwd, un utilizator neprivilegiat îs, i poate gestionaparola proprie iar unul privilegiat parola tuturor utilizatorilor. Atunci când un utilizatorneprivilegiat îs, i gestioneaza parola folosind utilitarul passwd trebuie sa introduca parolala promptul afis, at. Mai jos avem exemple de folosire a comenzii passwd pentrugestiunea conturilor:

* exemple de folosire passwd

Expirarea parolelor s, i blocarea parolelor poate fi utila pentru crearea de conturitemporare. Cineva primes, te un cont s, i apoi nu mai poate sa acceseze prin parola acelcont pentru ca nu mai este parte a unui organizat, ii, are de platit o suma de bani saualta situat, ie.

De avut în vedere ca o parola blocata nu înseamna ca acel cont nu poate fi folosit. Unutilizator se poate autentifica la acel cont folosind alte forme de autentificare, precumautentificare cu chei publice SSH. Daca dorim sa dezactivam acel cont s, i sa nu maipoata fi folosit cu nici o forma de autentificare, putem folosi comanda usermod ca maijos:

1 usermod --expirydate 1 alice

Page 17: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

96 INTRODUCERE ÎN SISTEME DE OPERARE

Figura 5.4: Gestiunea parolelor în Windows

Page 18: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

CAPITOLUL 5. UTILIZATORI 97

Comanda configureaza contul sa expire la 1 ianuarie 1970 facându-l, astfel, inutilizabil.

Utilitarul passwd este utilitar interactiv, necesita intrarea de la utilizator. Ceea ce îl facedificil de folosit pentru automatizare; de exemplu, daca dorim sa cream 100 de conturipe un sistem cu anumite parole. Pentru aceasta putem folosi utilitarul chpasswd, ca înexemplu de mai jos:

* Exemplu chpasswd

Utilitarul chpasswd primes, te la intrarea standard linii de forma username:passwords, i le schimba în mod neinteractiv, folosibil în scripturi. Mai sus am schimbat parolautilizatorului gabriel la valoarea Aethee9epiw8.

Dincolo de folosirea lor într-un sistem de operare, pentru o persoana, parolele suntimportante s, i trebuie avut grija cum se folosesc. As, a cum vom discuta detaliat înCapitolul 12, folosirea parolelor poate fi problematica pentru ca:

• folosim foarte multe parole s, i, în mod ideal, trebuie sa fie diferite între ele

• parolele pot fi slabe s, i us, or de ghicit

• parolele trebuie sa fie schimbate periodic, altfel s, ansele de fi ghicite/decriptatecresc

• folosim parolele de pe dispozitive multiple: desktop, laptop, dispozitiv mobil

Pentru o gestiune corespunzatoare a parolelor exista urmatoarele recomandari:

• Parolele sa fie lungi (cel put, in 10 caractere) s, i sa cont, ina caractere diferite. Putet, iapela la un generator de parole precum utilitarul pwgen.

• Nu notat, i parolele în clar pe hârtii sau în fis, iere de unde pot fi us, or citite.

• Folosit, i un utilitar de tipul password manager care sa ret, ina parolele s, i saminimizeze riscul expunerii lor la un atacator. În acelas, i timp sa ajute sa fieaccesibile de pe dispozitive multiple.

5.4.3 Autentificare centralizata

De multe ori în cadrul unei organizat, ii exista mai multe tipuri de aplicat, ii s, i interfet,e pecare le folosit, i: un site web, un wiki, un cont Linux, un site pentru cursuri, un sistem degestiune a codului sursa. Este problematic pentru un utilizator sa aiba un cont s, i o paroladiferita pentru fiecare acest tip de aplicat, ie; utilizatorul poate uita din parole, poate le vanota undeva, sau le va face simple ca sa le t, ina minte.

Solut, ia la aceasta situat, ie este autentificarea centralizata. Autentificarea centralizatapresupune existent,a unui serviciu de autentificare care gestioneaza baza de date deparole, serviciu accesat de diferitele aplicat, ii, ca în Figura 5.5.

În situat, ia autentificarii centralizate, un utilizator foloses, te acelas, i nume de utilizator s, iaceeas, i parola pentru toate aplicat, iile. Aplicat, iile trimit mai departe numele de utilizators, i parola catre serviciul de autentificare s, i, daca intrarile respective sunt valide în bazade date, ofera accesul utilizatorului la aplicat, ie.

În lumea Windows autentificarea centralizata se bazeaza pe serviciul AD (ActiveDirectory ) iar în lumea Linux se bazeaza pe serviciul LDAP (Lightweight Directory

Page 19: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

98 INTRODUCERE ÎN SISTEME DE OPERARE

Figura 5.5: Autentificare centralizata

Page 20: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

CAPITOLUL 5. UTILIZATORI 99

Access Protocol). Aceste subiecte sunt avansate s, i nu fac subiectul acestei cart, i.Important este înt,elegerea nevoii de autentificare centralizata s, i principalele solut, iipentru asigurarea acesteia.

5.5 Accesul la sistemul de fis, iere

Conturile de utilizator sunt folosite în sistemul de operare pentru a separa resursele lacare are acces fiecare utilizator. Una dintre cele mai folosite resurse este sistemul defis, iere; fiecare utilizator dispune de un director home la care are permisiuni complete.

În general, unui utilizator i se asociaza permisiuni pentru o anumita resursa. De exemplu,utilizatorul ana poate modifica fis, ierul note.xls daca îi sunt asociate permisiuni demodificare a acelui fis, ier. La nivel conceptual, un agent sau un subiect are anumitepermisiuni de acces al unei resurse sau un obiect, as, a cum este descris în Figura 5.6.

Figura 5.6: Agent, i s, i resurse

Schema de mai sus este o schema generala. În cazul particular al sect, iunii curente,agentul este utilizatorul, iar resursa este fis, ierul. Mai precis, agentul este un procesapart, inând unui utilizator. Spunem ca un proces poate accesa un anumit fis, ier dacautilizatorul caruia apart, ine procesul are permisiunile aferente la acel fis, ier.

În sistemele de operare curente, informat, iile despre permisiuni sunt ret, inute în fiecarefis, ier. În cadrul fis, ierului se ret, in metadate, printre care s, i permisiunile de acces pentruutilizatori. Modul în care sunt structurate aceste metadate t, ine de sistemul de operare.

5.5.1 Gestiunea permisiunilor în Windows

În Windows permisiunile sunt ret, inute în forma unor liste de access (access controllists, ACL ). Adica se creeaza o lista de utilizatori sau grupuri de utilizatori s, i permisiuniaferente, ca în Figura 5.7.

Page 21: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

100 INTRODUCERE ÎN SISTEME DE OPERARE

Figura 5.7: Liste de acces (Windows)

În momentul accesului unui fis, ier de catre un proces, se obt, ine utilizatorul caruia apart, ineprocesul. Apoi se cauta utilizatorul în lista de acces a fis, ierului. Daca exista s, i areasociate permisiuni adecvate, atunci se permite accesul procesului la fis, ier. Daca nuexista sau daca nu are permisiuni, accesul nu este permis. De obicei în Windows, existao intrare în lista de acces numita Everyone care precizeaza permisiunile pentru tot, iutilizatorii. Daca, în urma cautarii, un utilizator nu este gasit în lista, atunci se folosescpermisiunile pentru intrarea Everyone. Figura 5.8 verifica modul în care sunt analizatepermisiunile în Windows.

În Windows permisiunile sunt prezente doar pe sistemul de fis, iere NTFS , nu s, i pe FAT32. Permisiunile sunt în mod tipic configurate folosind interfat,a grafica: click dreapta pefis, ier→ Properties→ Security, obt, inând o fereastra ca cea din Figura 5.9.

Pentru un utilizator dat pot fi precizate mai multe tipuri de permisiuni, dintre care amintim:

• List Folder/Read Data: utilizatorul poate lista cont, inutul unui director s, idatele unui fis, ier

• Create Files/Write Data: utilizatorul poate crea fis, iere într-un director s, ipoate scrie date într-un fis, ier

• Traverse Folder/Execute File: utilizatorul poate traversa un director s, ipoate executa un fis, ier

Aceste permisiuni sunt similare permisiunilor read, write s, i execute pe care le vomprezenta în continuare pentru Linux. O lista completa a permisiunilor în Windows, pentruNTFS, gasit, i pe site-ul care prezinta sistemul de fis, iere NTFS1.

1http://www.ntfs.com/ntfs-permissions-file-folder.htm

Page 22: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

CAPITOLUL 5. UTILIZATORI 101

Figura 5.8: Verificarea permisiunilor în Windows

5.5.2 Gestiunea permisiunilor în Linux

În Linux fiecare fis, iere are metadate. Metadatele relevante pentru permisiuni sunt:

• user (utilizator): utilizatorul fis, ierului

• group (grup): grupul fis, ierului

• permisiuni: informat, ii despre ce tipuri accese sunt permise s, i cui

În Linux permisiunile sunt ret, inute într-un mod simplificat. Exista 3 entitat, i pentru carese pot configura permisiuni s, i 3 tipuri de permisiuni, t, inând cont de metadatele fis, ierului.Entitat, ile sunt:

• user (utilizator): utilizatorul fis, ierului

• group (grup): grupul fis, ierului

• others (ceilalt, i): ceilalt, i utilizatori, diferit, i de utilizatorul fis, ierului s, i care nu facparte din grupul fis, ierului

Permisiunile în Linux sunt, de asemenea, simplificate la 3 tipuri:

• read (citire): fis, ierul poate fi citit, directorul poate fi listattextttitem write (scriere): fis, ierul poate fi modificat, pot fi adaugate / s, terse intrari îndirector

• execute (execut, ie): fis, ierul poate fi executat, directorul poate fi parcurs

Permisiunile în Linux sunt verificate în cazul în care un proces acceseaza un fis, ier,urmând pas, ii:

1. Se obt, ine utilizatorul procesului care acceseaza fis, ierul.

2. Se compara utilizatorul procesului cu utilizatorul fis, ierului. Daca sunt aceias, iatunci se obt, in permisiunile pentru user (utilizator) s, i se verifica daca act, iunea

Page 23: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

102 INTRODUCERE ÎN SISTEME DE OPERARE

Figura 5.9: Permisiuni în Windows

Page 24: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

CAPITOLUL 5. UTILIZATORI 103

procesului este acceptata de permisiuni. Daca da, accesul este permis; daca nu,se trece la pasul urmator.

3. Se obt, in toate grupurile din care face parte utilizatorul procesului. Se compara, perând, fiecare dintre aceste grupuri cu grupul fis, ierului. Daca exista un grup care sacorespunda grupului fis, ierului, atunci se obt, in permisiunile pentru group (grup)s, i se verifica daca act, iunea procesului este acceptata de permisiuni. Daca da,accesul este permis; daca nu, se trece la pasul urmator.

4. Se obt, in permisiunile pentru others (ceilalt, i) s, i se verifica daca act, iuneaprocesului este acceptata de permisiuni. Daca da, accesul este permis; daca nu,accesul nu este permis.

Fie urmatoarea situat, ie de metadate pentru un fis, ier curs.txt:

• utilizator: ana

• grup: students

• permisiuni: citire, scriere pentru utilizator, citire pentru grup, nici o permisiunepentru ceilalt, i

Utilizatorul corina încearca accesarea pentru citire a fis, ierului folosind comanda catcurs.txt. Presupunem ca utilizatorul corina apart, ine mai multor grupuri între cares, i students, grupul fis, ierului curs.txt. Se urmeaza pas, ii:

1. Se obt, ine utilizatorul procesului care acceseaza procesul: corina.

2. Se compara utilizatorul procesului (corina) cu utilizatorul fis, ierului (ana). Nucorespund. Se trece la pasul urmator.

3. Se obt, in toate grupurile din care face parte utilizatorul procesului (corina).Grupul fis, irului curs.txt este students, grup din care face s, i utilizatorulcorina. În aceasta situat, ie verificam daca act, iunea este permisa. Act, iunea estede citire, se gases, te în permisiunile pentru grup (citire), s, i atunci comanda catcurs.txt reus, es, te.

În situat, ia de mai sus daca am fi rulat o comanda care modifica fis, ierul curs.txt, nuam fi reus, it, pentru ca permisiunile pentru grup nu includeau scriere.

Mai jos prezentam ce permisiuni sunt necesare pentru a putea rula comenzi de lucru cusistemul de fis, iere:

• Pentru a putea traversa un director, pentru ca acesta sa fie parte a unei cai estesuficient ca acesta sa aiba permisiuni de execut, ie. Adica daca dorim safunct, ioneze comanda cd /a/b/c/d/, trebuie ca directoarele a, b, c s, i d saaiba permisiuni de execut, ie.

• Pentru a putea lista cont, inutul unui director, adica folosirea comenzii ls, trebuieca acel director sa aiba permisiuni de citire s, i de execut, ie. Pe un director care aredoar permisiuni de citire nu se poate folosi comanda ls.

• Pentru a putea afis, a cont, inutul unui fis, ier, trebuie ca acel fis, ier sa aiba permisiunide citire iar directorul care-l cont, ine sa aiba permisiuni de execut, ie.

• Pentru a putea edita un fis, ier, trebuie ca acel fis, ier sa aiba permisiuni de scriere (nuneaparat s, i de citire) iar directorul care-l cont, ine sa aiba permisiuni de execut, ie.

Page 25: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

104 INTRODUCERE ÎN SISTEME DE OPERARE

• Pentru a putea s, terge un fis, ier sau un director, trebuie ca acel fis, ier sau director sase gaseasca într-un director care sa aiba permisiuni de scriere s, i execut, ie.

• Pentru a putea crea un fis, ier sau un director, trebuie ca acel fis, ier sau director safie create într-un director care sa aiba permisiuni de scriere s, i execut, ie.

• Pentru a putea rula un fis, ier executabil, trebuie ca acel fis, ier sa aiba permisiuni decitire s, i execut, ie iar directorul care-l cont, ine sa aiba permisiuni de execut, ie.

5.5.2.1 Formatul permisiunilor

În mod uzual, permisiunile sunt listate pentru un fis, ier dat în forma din Figura 5.10.

Figura 5.10: Permisiuni în Linux

Adica permisiunile sunt listate ca un s, ir de 9 caractere:

• primele trei caractere sunt permisiunile pentru user (utilizator)

• urmatoarele trei caractere sunt permisiunile pentru group (grup)

• ultimele trei caractere sunt permisiunile pentru others (ceilalt, i)

Astfel, în listarea de mai jos avem urmatoarele:

• fis, ierul invoice.pdf are:

– permisiuni de citire s, i scriere pentru user, adica pentru utilizatorul dan

– permisiuni de citire s, i scriere pentru group, adica pentru grupul staff

– permisiuni de citire pentru ceilalt, i

• fis, ierul myscript are:

– permisiuni de citire, scriere s, i execut, ie pentru user, adica pentru utilizatoruldan

– permisiuni de citire s, i execut, ie pentru group, adica pentru grupul adm

• nici o permisiune pentru ceilalt, i

Page 26: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

CAPITOLUL 5. UTILIZATORI 105

+ exemplu listare cu permisiuni

Pentru gestiunea mai rapida a permisiunilor acestea sunt gestionate în format pe bit, i.Adica fiecare dintre cele 9 caractere de permisiuni ocupa un bit; bitul este 1 dacapermisiunea este activa s, i pe 0 daca este inactiva. Adica avem corespondent,e deforma:

• rw-r--r-- corespunde 110100100

• rwxr-x--- corespunde 111101000

• rw-rw---- corespunde 110110000

Pentru a fi mai rapid, grupurile de bit, i se grupeaza câte 3 (3 bit, i pentru user, 3 bit, i pentrugroup, 3 bit, i pentru others) s, i cei trei bit, i se transforma într-o cifra în octal (baza 8);de aceea mai numim reprezentarea octala. Avem, as, adar, corespondent,a:

• rw-r--r-- corespunde 110100100, adica 644 în octal

• rwxr-x--- corespunde 111101000, adica 750 în octal

• rw-rw---- corespunde 110110000, adica 660 în octal

Pentru ca este us, or de modificat s, i rapid de folosit, gestiunea permisiunilor se face,adesea, în format octal.

5.5.3 Comenzi pentru gestiunea permisiunilor

Pentru gestiunea permisiunilor avem comenzi de afis, are a metadatelor de fis, ierului(utilizator, grup s, i permisiuni) s, i comenzi de modificare a metadatelor.

Pentru afis, area metadatelor, cele doua comenzi folosite sunt ls -l s, i stat ca înexemplele de mai jos:

+ exemplu folosire ls -l s, i stat

În rezultatul rularii comenzilor avem utilizatorul, grupul s, i permisiunile.

Comenzile de modificare sunt chown, chgrp s, i chmod. Primele doua comenzi (chowns, i chgrp) modifica utilizatorul s, i grupul, chmod modifica permisiunile. Comanda chownpoate modifica s, i utilizatorul s, i grupul unui fis, ier, comanda chgrp doar grupul. Celedoua comenzi pot fi rulate doar de utilizatorul privilegiat; doar acesta poate modificautilizatorul s, i grupul unui fis, ier. Mai jos sunt exemple de comenzi chown s, i chgrp:

+ exemple chown s, i chgrp

Comanda chmod modifica permisiunile fis, ierelor. Comanda poate fi rulata de utilizatorulprivilegiat sau de cel ce det, ine fis, ierul (owner ), adica utilizatorul fis, ierului; altfel spus,un utilizator îs, i poate modifica permisiunile fis, ierelor proprii. Comanda de modificareprimes, te o construct, ie de modificare a permisiunilor s, i numele fis, ierului/fis, ierelor pentrucare dorim schimbarea permisiunilor. Avem exemple mai jos:

+ exemple de folosire chmod

Forma în octal a permisiunilor la chmod este preferata atunci când vrem sa configuramun nou set de permisiuni unui fis, ier. Când vrem sa actualizam permisiunile s, i modificarilesunt mici, este de preferat sa folosim forma în octal a permisiunilor.

Page 27: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

106 INTRODUCERE ÎN SISTEME DE OPERARE

5.5.3.1 Permisiuni de creare pentru fis, iere

Atunci când cream un fis, ier sau director, folosind, de exemplu, comenzile touch s, imkdir, le sunt asociate metadate implicite la creare. Utilizatorul s, i grupul fis, ierului vorfi utilizatorul s, i grupul procesului, care sunt, de obicei, utilizatorul s, i grupul primar alutilizatorului care a lansat comanda. Stabilirea permisiunilor la creare t, ine de masca decreare a shell-ului.

Masca de creare a shell-ului este o valoare pe bit, i care este folosita astfel:

• Pentru fis, iere se face un S, I logic între valoarea 666 (octal) s, i masca inversata.

• Pentru directoare se face un S, I logic între valoarea 777 (octal) s, i masca inversata.

Diferent,a este pentru ca directoarele au nevoie de permisiuni de execut, ie pentru toateoperat, iile. Iar fis, ierele nu au nevoie de permisiuni de execut, ie; daca este cazul acesteatrebuie acordate explicit.

Exemple sunt prezente în Tabelul 5.6.

Tabelul 5.6: Permisiuni de creare fis, ier în funct, ie de masca

Masca de creare Masca inversata Permisiuni decreare fis, ier

Permisiuni decreare director

022 755 644 755

002 775 664 775

077 700 600 700

Afis, area s, i modificarea mas, tii shell-ului se face folosind comanda umask. Faraparametru aceasta comanda afis, eaza masca de creare, iar cu parametru modificamasca de creare, ca în exemplul de mai jos:

+ exemplu cu umask

Mai jos sunt exemple de modificare a umask-ului s, i crearea de fis, iere s, i directoare pentrua vedea cum modificarea valorii umask duce la modificarea mas, tii de creare a shell-uluis, i, astfel, a permisiunilor de creare pentru fis, iere s, i directoare.

5.5.4 Bit, i speciali de acces: setuid, setgid, sticky

Atunci când afis, am masca de creare a shell-ului, observam ca sunt 4 cifre octaleafis, ate. În mod normal ar trebui sa fie 3 cifre afis, ate, cu permisiuni pentru user,group s, i others. Prima cifra afis, ata reprezinta un set special de 3 de bit, i numit, isetuid, setgid s, i sticky, s, i sunt activat, i în aceasta ordine. Astfel, pentrupermisiunile de mai jos avem explicat, iile:

• 4755: este activat bitul setuid, utilizatorul are permisiuni complete, grupul arepermisiuni de citire s, i execut, ie, ceilalt, i au permisiuni de citire s, i execut, ie

• 2755: este activat bitut setgid, celelalte permisiuni sunt ca mai sus

• 1755: este activat bitul sticky, celelalte permisiuni ramân la fel

Page 28: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

CAPITOLUL 5. UTILIZATORI 107

Bitul setuid are sens când este folosit pe fis, iere executabile. Adauga funct, ionalitateade set user ID on execution. Când un fis, ier executabil are activat bitul setuid,procesul creat din acest fis, ier executabil va avea utilizatorul ale acestui fis, ier (de obiceiroot) nu al utilizatorului care a rulat comanda. Mai concret, daca rulam ca utilizatorstudent executabilul myexec care are activat bitul setuid s, i are ca utilizator root,atunci procesul creat din executabilul myexec va rula ca utilizatorul root.

Bitul setuid este folosit atunci când anumite utilitare necesita privilegii pentruaccesarea unor fis, iere speciale atunci când ruleaza. De exemplu, executabilul/usr/bin/passwd are activat bitul setuid pentru ca procesul creat va trebui saacceseze fis, ierul /etc/shadow, fis, ier accesibil doar utilizatorilor privilegiat, i:

1 student@uso:~$ ls -l /usr/bin/passwd2 -rwsr-xr-x 1 root root 59640 Jan 25 2018 /usr/bin/passwd3 student@uso:~$ stat /usr/bin/passwd4 File: /usr/bin/passwd5 Size: 59640 Blocks: 120 IO Block: 4096 regular

file6 Device: 801h/2049d Inode: 656195 Links: 17 Access: (4755/-rwsr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)8 Access: 2018-08-21 11:41:23.741306286 +03009 Modify: 2018-01-25 17:09:22.000000000 +0200

10 Change: 2018-08-06 17:34:29.848000000 +030011 Birth: -

Vedem în rezultatul rularii comenzilor prezent,a cifrei 4 pe prima pozit, ie în forma octalaa permisiunilor s, i a caracterului s în forma literala a permisiunilor în locul caracteruluide execut, ie pentru utilizator. Aceasta înseamna prezent,a bitului setuid în permisiunilefis, ierului.

Bitul setgid are sens când este folosit pe executabile s, i pe directoare. Adaugafunct, ionalitatea de set group ID on execution. Pe executabile are acelas, i efect ca bitulsetuid doar ca pentru grup.

Când un director are activat bitul setgid, viitoarele subdirectoare s, i fis, iere ale acestuiavor avea ca grup în metadate grupul directorului, nu grupul utilizatorului care a rulatcomanda. Viitoarele subdirectoare vor mos, teni bitul setgid astfel ca ce se creeazanou în ierarhie va avea mereu acelas, i grup. Este util pentru a crea un spat, iu partajatîn care diferit, i utilizatori sa creeze fis, iere dar sa ramâna accesibile între ei câta vremefac parte din acelas, i grup. Mai concret, daca directorul top/ are grupul heroes s, iare activat bitul setgid, viitoarele fis, iere s, i subdirectoare vor avea tot grupul heroes,indiferent ce utilizatori au creat intrarile.

În exemplul de mai jos aratam cum activarea bitului setgid pe un director duce lacrearea de intrari care mos, tenesc grupul directorului:

* Exemplu cu setgid

Bitul sticky are sens când este folosit pe directoare la care au acces de scriere maimult, i utilizatori, de exemplu directorul /tmp. Adauga funct, ionalitatea de restricteddeletion flag. Acest lucru înseamna ca un utilizator nu poate s, terge fis, ierele altuiutilizator, des, i are permisiuni de scriere pe directorul care cont, ine acele fis, iere.

Directorul /tmp este cel care are activat bitul sticky pentru ca ofera permisiunicomplete tuturor utilizatorilor. Des, i un utilizator are permisiuni complete pe acel director,

Page 29: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

108 INTRODUCERE ÎN SISTEME DE OPERARE

nu poate s, terge fis, iere care nu-i apart, in, as, a cum avem prezentat în exemplul de maijos:

* Exemplu cu sticky

5.6 Anexa: Resetarea parolei în Linux

Se poate întâmpla sa fie uitata parola administrativa pe un sistem care ruleaza Linux. Înaceasta situat, ie este nevoie de resetarea parolei contului root. Pentru aceasta avemdoua opt, iuni:

• modificarea procesului de boot s, i înlocuirea procesului init

• folosirea unui stick USB sau CD bootabil

Procesul de boot va fi prezentat detaliat în Capitolul 9.

În prima varianta, în ecranul bootloader-ului GRUB editam linia de boot s, i adaugam s, irulinit=/bin/bash, ca mai jos:

* screenshot cu editarea liniei de boot

Apoi folosim combinat, ia de taste Ctrl+x pentru a boota sistemul de operare. În aceastasituat, ie primul proces pornit de sistem nu va fi init ci va fi un shell cu permisiuni de root.În acest shell vom rula comenzile de mai jos pentru schimbarea parolei utilizatoruluiroot:

* lant, de comenzi

Mai sus am folosit comanda mount pentru a remonta sistemul de fis, iere radacina înmodul read-write s, i a putea astfel modifica fis, ierul /etc/shadow cu ajutorul comenziipasswd.

Apoi repornim sistemul fie din buton, fie folosind combinat, ia de taste Ctrl+Alt+Del.Nu vom putea folosi comenzi precum reboot sau poweroff.

În a doua varianta, folosim un CD/stick USB bootabil cu o distribut, ie Linux live (precumUbuntu). Dupa ce sistemul va porni distribut, ia live, vom realiza urmatorii pas, i:

1. Montam sistemul de fis, iere radacina al sistemului Linux instalat (pentru care vremsa resetam parola contului root).

2. Folosim comanda chroot pentru a modifica sistemul de fis, iere radacina în carerulam în sistemul de fis, iere al sistemului Linux instalat

3. Folosim comanda passwd pentru a schimba parola contului root în sistemul defis, iere radacina al sistemului Linux instalat.

4. Revenim la sistemul de fis, iere al sistemului live, parasind shell-ul obt, inut princhroot.

5. Demontam sistemul de fis, iere radacina al sistemului Linux instalat.

6. Repornim sistemul.

Page 30: Capitolul 5 Utilizatori - ERASMUS Pulseelf.cs.pub.ro/uso/res/carte/uso_cap-05-user.pdfDe aceea, sistemele de operare moderne pun la dispozit, ia utilizatorul metode de realizare de

CAPITOLUL 5. UTILIZATORI 109

Pas, ii de mai sus sunt reprodus, i în comenzile de mai jos:

* Comenzile de resetare a parolei dupa ce am bootat cu un CD/stick USB live

5.7 Use case: Resetarea parolei în Windows

Pentru resetarea parolei unui utilizator în Windows, cel mai important fiind utilizatorulAdministrator, se poate folosi utilitarul chntpw (de la change NT password).Acesta este inclus în mai multe CD-uri de recuperare (rescue CDs).

O opt, iune este folosirea Ultimate Boot CD1, un CD bootabil cu utilitare diverse dediagnostic s, i reparat, ie la nivelul sistemului de operare. Ultimate Boot CD cont, inePartedMagic2 care, la rândul sau, cont, ine utilitarul chntpw. Utilitarul chntpw oferainterfat,a în linia de comanda pentru modificarea parolelor utilizatorilor în Windows.

Pentru a nu ocupa spat, iu din aceasta carte cu detalii, recomandam sa parcurget, itutorialul cu screenshot-uri despre folosirea Ultimate Boot CD pentru resetarea paroleîn Windows3.

5.8 Sumar

Sistemele de operare moderne sunt sisteme multi-utilizator (multi-user ). Un sistemdispune de mai mult, i utilizatori care coexista simultan. Procesele care ruleaza însistemul de operare ruleaza cu permisiunilor acelor utilizatori.

Utilizatorii de sistem sunt acei utilizatori care au acces la resursele unui sistem deoperare: sistem de fis, iere, ret,ea, pot rula procese. Sistemul ofera o baza de datefolosita pentru autentificarea utilizatorilor în sistem.

Exista un utilizator privilegiat (numit generic superuser ) care are acces complet lasistem. Exista mecanisme alternative de a oferi privilegii utilizatorilor obis, nuit, i(neprilegiat, i). Gestiunea utilizatorilor, gestiunea ret,elei, gestiunea pachetelor suntact, iuni privilegiate.

Sistemul de operare ofera permisiuni de acces la sistemul de fis, iere, componenta ceamai vizibila. Permisiunile permit accesul unor utilizator la un fis, ier dar nu a altor utilizatori.

Modul uzual de accesare a sistemelor de operare moderne este prin intermediul uneiparole. Majoritatea sistemelor ofera opt, iuni de resetare a parolei în cazul în care aceastaeste pierduta.

1http://www.ultimatebootcd.com2https://partedmagic.com3https://www.top-password.com/blog/reset-forgotten-windows-password-with-ultimate-boot-cd/