POSIX õigused (ACL)
Autor: Mari-Liis Alaküla
Rühm : A21
Testitud: Ubuntu serveri peal
POSIX õigused (ACL)
POSIX (Portable Operating System Interface for Unix ) on IEEE poolt sätestatud standardite kogum, mis määrab ära aplikatsioonide programmeerimise liidese (application programming interface) (API) koos shelli ja utiliitide liidestega kõikide Unix operatsiooni süsteemidega ühilduva tarkvaraga. POSIX standardeid toetavad Unix suguvõsa süsteemid omavad lihtsat kuid võimsat failisüsteemi õiguste mudelit: iga failisüsteemi objekt on seotud kolme komplekti õigustega, mis määravad ligipääsu objekti omanikule, omavale rühmale ja teistele. Iga komplekt võib sisaldada lugemis (R), kirjutamis (W) ja käsu täitmise (X) õigust. See skeem kasutab ainult 9't bitti iga objekti jaoks. Lisaks neile kasutatakse erilistel juhtudel ka Set User Id, Set Group Id, and Sticky bitte. Kui tahetakse objektile seada keerulisemad ja mitmekesisemad õigused võetakse appi ACL (Access Control List), mis on nimekiri ühe objektiga seotud õigustest. Selle abil saab kindlale kasutajale ja grupile teha juurde lisaõigusi.
Kasutamine
ACL'i kasutatakse peamiselt õiguste seadmiseks ühele failisüsteemi objektile. ls -l käsk kuvab omaniku, grupi ja teiste klasside õigused, setfacl muudab objekti ACL õigusi ning getfacl kuvab objekti spetsiifilised ACL õigused.
ACL konfigureermine
Selleks, et ACL õiguste nimekiri oleks konfigureeritav peab kõigepealt vastava failisüsteemi kettajao lahti ühendama ja hiljem uuesti ühendama koos ACL valikuga.
umount /home
Soovitud kettajao lahti ühendamine.
nano /etc/fstab
Kuvatakse:
/dev/sdb5 /home ext3 rw,acl 0 0
Kettajaole /dev/sdb5 kirjutamine ja lugemise (rw)õigused ning acl valiku lisamine
mount -v -o remount /home
Kuvatakse:
/dev/sdb5 on /home type ext3 (rw,acl)
Uuesti ühendamine käib lihtsalt remount käsuga, mis töötab ka siis kui kettajagu on parajasti kasutuses.
Failiõiguste kuvamine ja ls -l
ls -l käsk kuvab omaniku, grupi ja teiste klasside õigused.
ls -l testacl
Kuvatakse:
-rw-rw---- 1 student students 168 May 30 09:41 testacl
testacl omab lugemis (r) ja kirjutamis (w) õigusi omaniku (student) klassile, lugemis (r) õigust grupi (students) klassile ning teistel õigused puuduvad.
Failiõiguste kuvamine ja getfacl
getfacl kuvab objekti acl õiguste nimekirja.
getfacl testacl
Kuvatakse:
# file: testacl # owner: student # group: student user::rw- group::r-- other::---
Kuvatakse faili nimi, omanik, omav grupp, lisakasutaja, lisagrupi ja teiste õigused.
ACL õigused ja setfacl
setfacl käsk võimaldab muuta objekti ACL õigusi.
setfacl -m u:teacher:rw-g:teachers:r-x testacl getfacl testacl
Kuvatakse:
# file: testacl # owner: student # group: student user::rw- user:teacher:rw- group::r-- group:teachers:r-x #effective:r-- mask::rw- other::---
getfacl kuvab muudetud ACL õigused ja mask'i mis näitab hetkel kasutusel olevaid õiguseid. Mask mõjutab õigusi mis on antud kõigile ACL gruppidele ja lisatud kasutajatele, Unix'i omanik ja teised pole mõjutatud. Kui mask'il on väiksemad õigused, siis need on tähtsamad (teachers grupp ei saa käivitada).
setfacl -m mask::r-- testacl
mask'i muutmine.
ls -l testacl
Kuvatakse:
-rw-rw----+ 1 student students 168 May 30 09:41 testacl
+ märk failiõiguste lõpus näitab, et failile on lisatud ACL õigused.
Allikad
[2] http://www.suse.de/~agruen/acl/linux-acls/online
[3] http://www.vanemery.com/Linux/ACL/linux-acl.html