Access Control List: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Line 64: Line 64:
|}
|}


getfacl võtmed
getfacl võtmeid


{| class="wikitable" border="1" style="border-style:solid; border-color:#EEEEEE;"
{| class="wikitable" border="1" style="border-style:solid; border-color:#EEEEEE;"
Line 72: Line 72:
|kuvab pääsukontrolli nimekirja  
|kuvab pääsukontrolli nimekirja  


|-
          
|'''-d'''
|'''--default'''
|kuvab vaikimisi pääsukontrolli nimekirja          


|-
|-
Line 81: Line 78:
|'''--omit-header'''
|'''--omit-header'''
|pääsukontrolli nimekirja kuvamine  kommentaarideta (kuvab pääsukontrollinimekirja ilma faili, omaniku ning grupi nimeta)       
|pääsukontrolli nimekirja kuvamine  kommentaarideta (kuvab pääsukontrollinimekirja ilma faili, omaniku ning grupi nimeta)       
|-
 
|'''-e'''
|'''--all-effective'''
|kuvab kehtivad õigused
|-  
|-  
|'''-n'''  
|'''-n'''  

Revision as of 17:13, 25 December 2014

Pääsupiiramisloend (ACL ehk Access Control List) on rida õigusi, mis on lisatud teatud objektile. Pääsupiiramisloend koosneb pääsupiiramiskirjetest, mis iseloomustab operatsioone, mis on kasutajal või grupil keelatud või lubatud. Pääsuloend täpsustab millised kasutajad või süsteemi protsessid on lubatud ligi pääseda teatud objektile ning millised operatsioonid on lubatud teha antud objektiga.

Autor

2014 teeb täiendusi Kadri Roasto AK21

2010 Arvi Alamaa

Kuidas pääsupiiramisloend toimib?

Tüüpilises pääsupiiramisloendis määratakse igas kirjes (ACE ehk Access Control Entrie) subjekt (näiteks User või Group) ja sellele kaasnevad õigused. Kui subjekt tahab sooritada mingeid operatsioone antud objektiga siis pääsupiiramisloendil põhinevas turvamudelis operatsioonisüsteem kõigepealt otsib loendist vastavad kirjed, et otsustada kas nõutud operatsioon on lubatud või mitte.

Pääsupiiramisloendi tüübid

System Access Control List (SACL)

SACL võimaldab administraatoritel pidada logi selle kohta, kes on üritanud ligipääseda kaitstud objektile ning milliseid operatsioone on seal sooritatud. Kuna iga kirje kajastab, mis tüüpi ligipääsuga on tegemist ning kes üritas ligi pääseda, salvestatakse need andmed logi faili (security event log), mida saab vaadata Event Viewer's. Pääsuloendi kirjed (Access Control Entries) SACL's saavad genereerida auditi salvestatud kirjeid, kui ligipääsu katse nurjub või õnnestub.

Discretionary Access Control List (DACL)

DACL ehk valikuline pääsupiiramisloend tähendab seda, et objekti omanikul või loojal on täielik õigus piirata ligipääsu antud objektile, samas ka niimoodi, et ligipääs lubatakse kõikidele teistele. Süsteemil on kohustuslik pääsupiirang siis, kui see allub üle terve süsteemi kehtivatele piirangutele, mis on pääsupiiramisloendis määratletud õigustest tähtsamad. Harilikud pääsupiiramisloendite süsteemid määravad õiguseid üksikutele kasutajatele, mis võib suure kasutajahulga puhul tülikaks osutuda. Uuemas, rollidel põhinevas pääsupiirangus, antakse õiguseid rollidele, ning rolle jaotatakse omakorda kasutajatele.


Network Access Control List

Networking ACL on pääsuloend, mis niiöelda filtreerib võrguliiklust. Ruuter vaatleb igat andmepaketti, et kindlaks teha, kas saata see edasi või jätta see maha, põhinedes pääsuloedisse määratud kriteeriumitest. Pääsuloednisse määratud kriteeriumid võivad olla näiteks kasutaja MAC aaddress, IP aadress ja pordi number.

Filesystem Access Control List

Failisüsteemides on peamiseks piiramise vahendiks kasutajatunnus või grupi nimi, kus määratakse nende õigused. Loend on andmestruktuur, harilikult tabel, mis sisaldab kirjeid üksikute kasutajate või rühmade õigustest kindlatele süsteemiobjektidele, nagu programmid, protsessid, või failid. Linux-is, Mac OS X-is, OpenVS-is, ning Windows-is nimetatakse neid kirjeid pääsupiiramiskirjeteks (ingl.k. Access Control Entries). Igal ligipääsetaval objektil on selle pääsupiiramisloendile suunav tunnus. Kindlaid ligipääsuõiguseid määravad õigused: näiteks kas kasutajal on lubatud objektist lugeda, sinna kirjutada, ning seda käivitada. Mõningad pääsupiiramisloendid on võimelised piirama seda, kas kasutajal või nende rühmal on lubatud objekti pääsupiiramisloendit muuta.

Sissejuhatus

Antud dokumendis kirjeldatakse Access Control Listi (ACL) ehk pääsupiiramisloendi kasutamist Linux operatsioonisüsteemis. Traditsiooniliselt määratakse Linux süsteemi failisüsteemides kolme tüüpi õiguseid (read- lugemine, write- kirjutamine, execute- käivitamine) kolmele kasutajagrupile (owner-omanik, group- grupp ja others- teised). ACL võimaldab pääsupiiramisõiguseid määrata paindlikumalt. Lisaks omanikule, grupile ja teistele saab ACLis määrata õigused nimeliselt lisa kasutajale või grupile. ACL käsklusi on võimalik kasutada nii juurkasutajal kui tavakasutajal. Alljärgenva dokumentatsiooni kasutamiseks on vajalik omada algteadmiseid UNIXi-laadsetest operatsioonisüsteemidest ja käsureast.

Kuidas kasutada pääsupiiramisloendit failisüsteemides?

ACL on kasutatav mitmes Linuxi failisüsteemis nt: EXT2, EXT3, EXT4, XFS, Btfrs, jne. Et kindel olla, kas kasutatav failisüsteem toetab ACLi tuleb lugeda dokumentatsiooni.


Käsu formaat

Peamiselt kasutatakse kahte käsku oma võtmetega.

getfacl  [võti] fail ...
setfacl  [võti] { -m|-M|-x|-X ... } fail ...
Võtmete kirjeldusi

Mõlemal käsul on võimalik kasutada järgnevaid võtmeid:

-h --help käsu info
-v --version versiooni info
getfacl võtmeid
-a --access kuvab pääsukontrolli nimekirja


-c --omit-header pääsukontrolli nimekirja kuvamine kommentaarideta (kuvab pääsukontrollinimekirja ilma faili, omaniku ning grupi nimeta)
-n --numeric kuvab kasutajate/gruppide numbrilised ID-d
-R --recursive kuvab ka alamkataloogide ACL õigused

settfacl võtmed

-m --modify=acl muudab kehtivat faili ACLi
-M --modify-file=file loeb ACLi kirjet failist ning muudab vastavalt loetule
-x --remove=acl eemaldab ACL kirjed faililt
-b --remove-all eemaldab kõik laiendatud õigused

Näited

Näited on teostatud tavakasutaja õigustes.


Näide 1
  • faili/kausta õiguste kuvamine
getfacl <faili/kausta_nimi>
  • Kuvame kausta nimega test õigused:
getfacl test
  • tulemus
# file: test
# owner: mari
# group: mari
user::rwx
group::rwx
other::r-x

Esimesed kolm rida väljastavad kausta nime, omaniku ning grupi, järgenvad kolm rida näitavad kasutaja, grupi ja teiste õiguseid. See on minimaalne ACL. Hetkel ei ole kuvatud infot, mida ei saaks mõne põhikäsuga.

  • lisame kasutajale jaan õiguse vaadata ja muuta kausta test:
setfacl -m u:jaan:rw- test
  • tulemus vaadatuna käsuga: getfacl test
# file: test
# owner: mari
# group: mari
user::rwx
user:jaan:rw-
group::rwx
mask::rwx
other::r-x

Näeme, et pääsupiiramisloendisse on lisandunud kasutaja jaan õigustega vaadata ja muuta kausta test.

  • tulemus vaadatuna käsuga ls -l
drwxrwxr-x+ 2 mari mari 4096 dets  25 14:55 test

Näeme, et kausta test õiguste lõpus on märk "+", see näitab, et kasutusel on ACL.


Näide 2
  • lisa kasutajale ja lisa grupile õiguste andmine
setfacl -m u:[kasutaja_nimi]:[õigused],g:[grupi_nimi]:[õigused] [kausta/faili nimi]
  • lisame kasutajale toomas ja grupile tudengid õiguse vaadata ja muuta kausta test
setfacl -m u:toomas:rw-,g:tudengid:rw- test
  • tulemus vaadatud käsuga: getfacl test
# file: test
# owner: mari
# group: mari
user::rwx
user:jaan:rw-
user:toomas:rw-
group::rwx
group:tudengid:rw-
mask::rwx
other::r-x

Näeme, et nii kasutaja toomas kui grupp tudengid on saanud lisandundu pääsupiiramisloendisse. Ning nad on saanud õigused r ja w kasutale test.

Näide 3

Mida tähendab pääsupiiramisloendis olev mask? Maskiga on võimalik piirata ACLiga loodud kasutaja ja grupi õiguseid (omaniku õiguseid mask ei muuda). Mask määrab maksimaalsed õigused.

  • Anname kasutajale jaan ja grupile tudengid nii vaatamise, muutmise kui käivitamsie õigused, kuid maskile määrame ainult vaatamise õigused
setfacl -m u:jaan:rwx,g:marjuline:rwx test
setfacl -m mask::r--  test
  • tulemus vaadatuna käsuga getfacl test
# file: test
# owner: mari
# group: mari
user::rwx
user:jaan:rwx			#effective:r--
user:toomas:rw-			#effective:r--
group::rwx			#effective:r--
group:tudengid:rwx		#effective:r--
mask::r--
other::r-x

Kuigi jaan sai õigused: rwx, on maski tõttu tal ainult õigus:r. effective näitab kehtivaid õiguseid

Kokkuvõte

ACL võimaldab paindlikumalt juurdepääsuõiguseid määrata ning lubab seda teha ka tavakasutajal.

Kasutatud kirjandus