Datorită naturii sistemelor Linux, există multe restricții și setări de autorizare pentru fișiere și directoare în ceea ce privește securitatea. Singurul utilizator cu toate aceste privilegii este utilizatorul root.

Prin urmare, în timp ce folosim sistemul, dacă suntem utilizatori root, avertismentul din fața noastră nu va fi a mecanism restrictiv și, în unele cazuri, modificările pe care le vom face pot cauza probleme majore cu sistem. Acesta este motivul pentru care cunoașterea autorizațiilor utilizatorilor Linux este foarte importantă pentru fiecare utilizator Linux.

Acțiuni pe care utilizatorii le pot întreprinde cu privire la fișiere și directoare

Fiecare utilizator poate acționa în cadrul autorizațiilor care îi sunt date. Există trei acțiuni pe care utilizatorii le pot întreprinde cu privire la fișiere sau directoare.

  • citeste (r): Este vorba despre posibilitatea de a vizualiza lista de foldere și conținutul fișierului.
  • scrie (w): Este vorba despre efectuarea de modificări la fișierul sau folderul.
  • instagram viewer
  • executa (x): Este vorba despre rularea fișierului țintă sau posibilitatea de a accesa folderul.

Dacă sunteți familiarizat cu Comanda chmod și permisiunile fișierelor Linux, este posibil să fi auzit de aceste trei permisiuni înainte.

Introduceți ls -l comandă pentru a vedea ce permisiuni are fișierul dvs. curent.

Părțile pe care le vedem ca drwxr-xr-x și -rw-r--r-- consultați permisiunile fișierelor. Scrisoarea d la începutul unor expresii indică faptul că acea expresie este un director. Dacă explicăm părțile rămase separat, părțile separate prin - semnul reprezintă grupul de utilizatori cu acea permisiune.

Pentru o mai bună înțelegere, împărțiți-le în grupuri de trei, excluzând litera d.

rwxr-xr-x = rwxr-xr-x

rw-r--r-- = rw-r--r--

Primul set de litere specifică permisiunile proprietarului fișierului, al doilea set de permisiuni de grup, iar ultimul set specifică permisiunile altor utilizatori.

În consecință, permisiunile din fișierele de mai sus sunt:

  • r: privilegiul de citire
  • w: privilegiul de scriere
  • X: privilegii de executare
  • rwx: utilizatorul care deține fișierul poate citi, scrie, executa
  • r-x: alți utilizatori pot citi, executa, dar nu pot scrie

Modificarea permisiunilor cu chmod

Numai root, care este persoana cea mai autorizată, poate schimba privilegiul de acces. Acest proces de schimbare este ușor de realizat cu chmod comanda.

Parametrii și semnificațiile chmod comanda sunt date mai jos.

  • u: Proprietarul fișierului sau directorului
  • g: Utilizatori din același grup cu proprietarul fișierului sau directorului
  • o: Alți utilizatori
  • A: Deschis tuturor
  • =: Sincronizare autorizare
  • +: Adăugați autorizație
  • -: Ștergerea autorizației

Acum că ați văzut semnificațiile parametrilor, puteți lua în considerare un exemplu de operație. Pentru asta, creați un director exemplu și urmați pașii de mai jos în ordine.

Folosește ls -l comandă pentru a răsfoi permisiunile fișierelor din folderul pe care l-ați creat. În timp ce faceți acest lucru, gândiți-vă că structura de permisiuni a fișierelor dvs. este următoarea.

ls -l
total 4
1 rădăcinărădăcină 0 Aprilie 25 16:20exemplu.TXT
1 rădăcinărădăcină 0 Aprilie 25 16:21ex_File
d 2 rădăcinărădăcină 4096 Aprilie 25 16:21ex_Folder
1 rădăcinărădăcină 0 Aprilie 25 16:20ex_Text

După aceasta, accesați toate fișierele din folder folosind * caracter și lăsați scrisul (w) să devină public folosind chmod +w * comanda.

chmod +w *
ls -l
total 4
--w-r-x 1 rădăcinărădăcină 0 Aprilie 25 16:20exemplu.TXT
--w-r-x 1 rădăcinărădăcină 0 Aprilie 25 16:21ex_File
d-w-r-x 2 rădăcinărădăcină 4096 Aprilie 25 16:21ex_Folder
--w-r-x 1 rădăcinărădăcină 0 Aprilie 25 16:20ex_Text

Acum, încercați să acordați autorizație de citire-scriere-execuție (rwx) utilizatorilor din grupul (g), permisiuni de scriere (w) utilizatorilor (u) și numai permisiuni de executare (x) altor utilizatori.

chmod g+rwx, u+w, o+x *
ls -l
total 4
--w-rwx--x 1 rădăcinărădăcină 0 Aprilie 25 16:20exemplu.TXT
--w-rwx--x 1 rădăcinărădăcină 0 Aprilie 25 16:21ex_File
d-w-rwx--x 2 rădăcinărădăcină 4096 Aprilie 25 16:21ex_Folder
--w-rwx--x 1 rădăcinărădăcină 0 Aprilie 25 16:20ex_Text

Și, în sfârșit, puteți folosi o comandă ca cea de mai jos pentru a dezaautoriza fișierele din locația dvs.

chmod a-rwx *
<cod>ls -l
total 4
1 rădăcinărădăcină 0 Aprilie 25 16:20exemplu.TXT
1 rădăcinărădăcină 0 Aprilie 25 16:21ex_File
d 2 rădăcinărădăcină 4096 Aprilie 25 16:21ex_Folder
1 rădăcinărădăcină 0 Aprilie 25 16:20ex_Text

Pe lângă aceste utilizări, procesele de autorizare pot fi exprimate și în termeni numerici pe care probabil i-ați întâlnit înainte și ați folosit fără să vă dați seama.

Numerele sunt definite pentru fiecare autorizație

Proprietarul Dosarului Utilizatori din același grup ca și proprietarul fișierului Alți utilizatori
r 4 4 4
w 2 2 2
X 1 1 1

De exemplu, imaginați-vă că doriți să acordați toate permisiunile numai proprietarului fișierului. Pentru aceasta, trebuie mai întâi să colectați echivalentele numerice ale modelelor de autorizare. Cu alte cuvinte, deoarece veți acorda toate permisiunile, r=4 + w=2 + x=1=numărul total este 7.

Doriți să acordați această permisiune numai proprietarului fișierului. Pentru a face acest lucru, puteți modifica ușor chmod rwx- comanda pe care ați folosi-o în mod normal. Dacă utilizați o comandă ca fișier chmod 700, numai proprietarul fișierului va avea toate privilegiile.

Pentru a înțelege mai bine acest lucru, vă puteți gândi la un alt exemplu. Imaginați-vă că proprietarul fișierului are toate permisiunile, cei din grupul public au permisiunea de scriere, iar alți utilizatori au permisiunea de citire.

Puteți folosi ecuația r (4)+w (2)+x (1)=7 pentru toate privilegiile care trebuie acordate proprietarului fișierului.

Autorizarea de scriere pe care o acordați utilizatorilor din grupul comun cu proprietarul fișierului va folosi numărul 2, care este echivalentul numeric al caracterului de scriere (w). Autorizația de citire pe care o veți acorda altor utilizatori va folosi numărul 4, care este echivalentul numeric al caracterului de citire (r).

După cum se poate înțelege din ieșire, echivalentele numerice trebuie să fi efectuat autorizarea dorită.

Asigurați-vă setările de autorizare valide în subdirectoare cu -R

În plus, dacă doriți ca permisiunile pe care le acordați să aibă efect asupra acelui director și subfolderelor sale, ar trebui să utilizați comanda cu -R parametru.

De exemplu, enumerați drepturile de acces ale folderului numit „ex_Folder" în locația dvs. Rezultatul va fi o ieșire care afirmă că nu au fost găsite drepturi.

ls -l 
total 4
1 rădăcinărădăcină 0 Aprilie 25 16:20exemplu.TXT
-rwx-w-r-- 1 rădăcinărădăcină 0 Aprilie 25 16:21ex_File
d 2 rădăcinărădăcină 4096 Aprilie 25 16:21ex_Folder
1 rădăcinărădăcină 0 Aprilie 25 16:20ex_Text

Apoi intrați în folderul numit „ex_Folder".

Apoi înapoi la directorul părinte. Folosește -R parametru și scrieți o comandă ca chmod -R 422 ex_Folder astfel încât permisiunile de acces de adăugat să fie valabile pentru toate subfișierele.

Ca rezultat, toate fișierele, inclusiv toate fișierele și directoarele și subfolderele, au fost autorizate într-un mod care corespunde instrucțiunii 422.

Cea mai bună soluție pentru fișierele șterse accidental: chattr

Indiferent de motiv, dacă există fișiere pe care le considerați importante, este posibil să le protejați înainte ca acestea să fie șterse accidental. Comanda care oferă această oportunitate de protecție este chattr comanda. The chattr comanda nu protejează numai împotriva ștergerii, ci este și folosită pentru a preveni modificarea fișierului.

Îți poți folosi lsattr comandă pentru a lista astfel de fișiere.

Încercați să protejați principal.cpp fișierul care apare aici cu fișierul chattr +i main.cpp comanda.

După cum se vede în rezultat, există o -i declarație în secțiunea permisiuni. Această declarație este un semn că fișierul nu mai poate fi editat. Pentru a confirma acest lucru, puteți încerca să ștergeți acest fișier cu o comandă de genul rm -rf main.cpp.

rm-rfprincipal.cpp
rm: nu se poate elimina 'principal.cpp': Operatie nepermisa

Dacă doriți să anulați această operațiune și să faceți fișierul editabil, utilizați pur și simplu chattr -i main.cpp comanda.

Privilegiile de acces sunt importante pentru securitatea sistemului de fișiere

Autorizarea accesului formează coloana vertebrală a securității sistemului de fișiere Linux. Datorită permisiunilor de acces care pot fi acordate fiecărui fișier separat, se poate realiza o gestionare a sistemului mult mai confortabilă.

Drepturile de acces pe bază de utilizator pot uneori chiar și mai semnificative. Prin urmare, poate doriți să abordați proiectele și fișierele de pe sistemul dumneavoastră cunoscând metodele de autorizare descrise în acest articol.

Cum să schimbați permisiunile pentru fișiere pe desktop-uri Linux

Citiți în continuare

AcțiuneTweetAcțiuneE-mail

Subiecte asemănătoare

  • Linux
  • Controlul contului utilizatorului
  • Gestionarea fișierelor
  • Linux
  • Terminal

Despre autor

Fatih Küçükkarakurt (2 articole publicate)

Un inginer și dezvoltator de software care este un fan al matematicii și al tehnologiei. Întotdeauna i-au plăcut computerele, matematica și fizica. El a dezvoltat proiecte de motoare de jocuri, precum și învățare automată, rețele neuronale artificiale și biblioteci de algebră liniară. În plus, continuă să lucreze la învățarea automată și la matrice liniare.

Mai multe de la Fatih Küçükkarakurt

Aboneaza-te la newsletter-ul nostru

Alăturați-vă buletinului nostru informativ pentru sfaturi tehnice, recenzii, cărți electronice gratuite și oferte exclusive!

Click aici pentru a te abona