Capitolul Introducere & Instalare Capitolul structura Linux Capitolul Comenzi si Editoare


Capitolul 6 Sistemul de permisiuni



Yüklə 0,94 Mb.
səhifə12/23
tarix28.08.2018
ölçüsü0,94 Mb.
#75662
1   ...   8   9   10   11   12   13   14   15   ...   23

Capitolul 6 Sistemul de permisiuni


6.1   Concepte generale
6.2   Permisiuni speciale
6.3   Modificare permisiuni
6.4   Umask
6.5   Atribute speciale

Concepte generale


Sistemul de fisiere in Linux imparte in mod standard utilizatorii in 3 categorii:

a) owner (proprietarul fisierului). By default (implicit) un fisier nou creat primeste ca owner creatorul sau. Owner-ul are drepturi totale asupra fisierului, poate sa-l stearga, sa-l modifice sau sa-i schimbe proprietatile. 
Exemplu: Daca userul numit dan creaza un fisier nou numit raport.pdf, ownerul fisierului va fi userul dan

b) group (grupul proprietar al fisierului). Folosind grupul care detine fisierul se pot seta drepturi pentru un nr. mai mare de utilizatori. By default un fisier nou creat primeste ca grup owner, grupul principal al userului care-l creaza.
Exemplu: Daca userul dan are grupul principal numit contabili, fisierele create de acesta vor avea ca owner pe dan, iar ca grup owner contabili. 

c) others (ceilalti sau restul lumii). Toti utilizatorii care nu fac parte din cele 2 categorii. 

Nota

http://www.invata-online.ro/img/course/note-symbol.gif


Conceptele referitoare la owner si group owner mai sus mentionat sunt adevarate atat pentru fisierele nou create cat si pentru directoarele nou create.

Fiecare dintre cele 3 categorii detine independent urmatoarele drepturi asupra unui fisier sau director: 


a) r (read) - dreptul de citire
b) w (write) - dreptul de scriere
c) x (execute) - dreptul de executie

Aceste drepturi au efecte diferite in functie de tipul fisierului (fisier normal sau de tip director). 



Permisiune

Fisier

Director

read

dreptul de citire al continutului fisierului

dreptul de a afisa continutul directorului

write

dreptul de modificare al continutului fisierului

dreptul de a modifica continutul directorului(stergere, creare, redenumire fisiere/directoare continute in director) impreuna cu x

execute

dreptul de a executa fisierul

acces la fisierele continute. dreptul de a ne muta in director.

Nota

http://www.invata-online.ro/img/course/note-symbol.gif


Daca un director contine dreptul de scriere ( w) pentru o anumita categorie de user ( owner, group sau other), acea categorie are dreptul de a sterge/modifica continutul directorului doar daca exista si dreptul de executie pentru director. 

Exemplu

http://www.invata-online.ro/img/course/note-symbol.gif


1. Daca un director are pentru owner permisiunile de read(r) si write(w) dar nu si execute(x), owner-ul nu va putea crea noi fisiere in director, nu va putea sterge continutul directorului si nu se va putea muta in director.Motivul este lipsa permisiunii execute pentru director.
http://www.invata-online.ro/courses/linuxb/perm.jpg

Permisiuni speciale


In afara permisiunilor standard (read, write si execute) exista urmatoarele permisiuni speciale:

1) SUID (setuid).
Reprezinta o permisiune speciala pentru fisierele executabile.

Important

In Linux un fisier executabil are aceleasi drepturi ca si userul care il executa. Setand bit-ul SUID, la executare fisierul are drepturile owner-ului si nu al celui care il executa.


Fisierele cu SUID setat si cu owner root reprezinta o grava problema de securitate. Oricine le poate executa, iar in urma executiei procesul creat va avea drepturi de root.


Exemplu

http://www.invata-online.ro/img/course/note-symbol.gif


1. Comanda rm este reprezentata fizic prin fisierul executabil /bin/rm care are drept owner pe root. In momentul in care root executa comanda rm efectul este ca aceasta comanda are drepturile lui root si poate sterge orice fisier din sistem. Daca un alt user executa comanda rm, efectul este ca aceasta comanda va avea drepturile userului care a executat-o si deci nu va putea sterge niciun fisier important. 

In schimb daca se seteaza permisiunea SUID pentru fisierul /bin/rm, orice user non-root care executa comandarm va putea sterge ORICE fisier din sistem. Acest lucru se intampla fiindca comanda rm are drepturile ownerului adica root si nu drepturile celui care o executa cum este default. 



2. User neprivilegiat care poate vizualiza fisierul /etc/shahow fiindca comanda less are SUID setat
http://www.invata-online.ro/courses/linuxb/suid.jpg

Comanda ls -l afiseaza pentru fisierele cu SUID setat "s" (s mic) pe pozitia dreptului de executie pentru owner daca fisierul are dreptul de executie pt. owner sau "S" (s mare) daca fisierul nu are dreptul de executie pentru owner. 



2) SGID (setgid).
Reprezinta o permisiune speciala care are efecte diferite daca se aplica unui fisier sau unui director. Cand se aplica unui fisier, daca fisierul este executabil, procesul creat in urma executiei fisierului va rula cu drepturile grupului care detine fisierul si nu cu grupul primar al userului care executa fisierul.
Aceasta permisiune ( SGID) este folosita mai ales pentru directoare si anume pentru a crea directoare "shared".
Fisierele noi create in interiorul directorului vor avea ca grup care le detine grupul directorului si nu al userului care le creaza cea ce se intampla default.
Comanda ls -l afiseaza pentru fisiere cu SGID setat "s" (s mic) pe pozitia dreptului de executie pentru grup daca fisierul sau directorul are dreptul de executie pt. grup sau "S" (s mare) daca fisierul sau directorul nu are dreptul de executie pentru grup.

3) Sticky bit. 
Se foloseste pentru directoarele "world writeable" si are rolul de a preveni posibilitatea stergerii continutului acestora de catre useri altii decat ownerul directorului cu sticky bit setat sau ownerul fisierului din acel director, chiar daca drepturile directorului ar permite acest lucru (rwx).
Exemplu: /tmp

Nota

http://www.invata-online.ro/img/course/note-symbol.gif


Root face exceptie, iar grupul fisierului se supune regulii (nu poate modifica).



Aplicatie: Sticky Bit se foloseste in momentul in care se doreste crearea unui director world writeable (toate permisiunile pentru toti userii), dar cu protejarea continutului. Fara sticky bit orice user poate crea fisiere in director, dar poate si sterge fisierele create de alti useri. Daca directorul are sticky bit, fiecare user are dreptul sa stearga doar propriile fisiere. 

Comanda ls -l afiseaza pentru directoarele cu sticky bit setat "t" (t mic) pe pozitia dreptului de executie pentru other daca fisierul are dreptul de executie pentru other sau "T" (t mare) in rest.



Yüklə 0,94 Mb.

Dostları ilə paylaş:
1   ...   8   9   10   11   12   13   14   15   ...   23




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©muhaz.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin