SETAȚI UID și GID la fișiere și directoare Linux

Setuid și Setgid sunt termeni Unix, abrevieri pentru „Set User ID” și „Set Group ID”, respectiv. Setuid, denumit uneori „suid” și „setgid” sunt permisiuni de acces care pot fi atribuite fișierelor sau directoarelor unui sistem de operare bazat pe Unix. Acestea sunt utilizate în principal pentru a permite utilizatorilor de sistem să ruleze temporar binare privilegiate ridicate pentru a efectua o sarcină specifică.

Aceste permisiuni sunt după cum urmează:

SET UID

 set-user-ID-on-execution
Permite ca, atunci când un fișier este executat, acesta să fie efectuat sub privilegiile proprietarului. De exemplu, dacă trebuie să exercităm privilegii de root pentru a putea accesa un anumit modul, să scriem în jurnale, să citim / să scriem dispozitive etc.
SGID, set-group-ID-on-execution permite ca, atunci când este executat un fișier, să fie efectuat sub privilegiile grupului care deține fișierul.

Realizarea SET UID și GID către fișiere și directoare, în general către acestea din urmă, va permite o „moștenire” a caracteristicilor de la directorul anterior la următorul și toate fișierele / directoarele care sunt generate / create / copiate în directoarele SET GID va avea caracteristicile din directorul părinte.

GID este permis în general, astfel încât utilizatorii unui grup să poată lucra cu fișierele aceluiași grup, UID va putea schimba proprietarul fișierului și permisiunile pentru o altă persoană din GRUP, dacă opțiunea „clicabilă” este activă .

SETAȚI GID
SET GID este o opțiune interesantă dacă și mulți utilizatori vor accesa un sistem de stocare comun

  • SAMBA
  • FTP
  • HTTP
  • Baze de date

Exemplu pentru implementarea SET UID și GID


De la terminal efectuăm următoarele sarcini:

Creăm un exemplu de director:

 [root @ root] mkdir EXEMPLU
Listăm directorul:
 [root @ root] vdir
Modificăm permisiunile directorului astfel încât doar utilizatorii grupului „programatori” să poată accesa, permisiunile sunt parametri ai comanda chmod și sunt următorii
+ s: pentru a activa modul suid
g + s: pentru a activa modul sgid
 [root @ root] # chown user.programmers
 [root @ root] # chmod g + s EXEMPLU 
 [root @ root] # vdir
Listăm directorul și vom vedea conținutul
 4 drwxrwxrwx 2 programatori de utilizatori EXEMPLU
În mod implicit, niciun utilizator care nu aparține grupului „programatori” nu va putea lucra cu fișierele din acel director. Pe de altă parte, utilizatorii grupului vor putea lucra cu fișierele în funcție de atributele pe care le au utilizatorii, dacă au permisiunile de citire sau scriere.

Unele programe și servicii precum Samba, FTP, HTTPAu caracteristici speciale care nu sunt guvernate de aceste reguli și le completează prin îmbogățirea acestora.

Acum că am creat SET UID și GID, dacă creăm un fișier sau un director în cadrul exemplului de la orice utilizator, acesta va moșteni caracteristicile pe care le-am definit anterior, indiferent de cine l-a creat și de permisiunile pe care le are.

De exemplu, putem spune dacă creăm un fișier report.txt în directorul EXAMPLE și utilizatorul care l-a creat este rădăcină și totuși grupul este programatori, grupul căruia îi va aparține fișierul vor fi programatori.
Deoarece directorul EXEMPLU are atributele: drwxrwsrwx, indicând faptul că directorul este SET GID, toate fișierele create în acesta vor aparține utilizatorului și grupului indicat de SET GID.

Dacă vedem o listă cu mai multe fișiere, ar arăta astfel:

 4 drwxr-Sr-x 2 programatori jose 4096 home.html 4 drwxr-Sr-x 2 programatori carlos 4096 dependencies.txt 4 drwxr-Sr-x 2 programatori rădăcină 4096 report-project.odf
Sper că acest tutorial vă va ajuta.

V-a plăcut și ați ajutat acest tutorial?Puteți recompensa autorul apăsând acest buton pentru a-i oferi un punct pozitiv
wave wave wave wave wave