POSIX õigused (ACL)

From ICO wiki
Revision as of 16:36, 31 May 2010 by Malakula (talk | contribs)
Jump to navigationJump to search

Autor: Mari-Liis Alaküla

Rühm : A21

POSIX õigused (ACL)

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 partitisiooni lahti ühendama ja hiljem uuesti ühendama koos ACL valikuga.

umount /home

Soovitud partitsiooni lahti ühendamine.

nano /etc/fstab

Kuvatakse:

/dev/sdb5              /home                    ext3    rw,acl        0 0

Partitsioonile /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 partitsioon 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 kasutajatele, traditsioonilised klassid Unix'i omanik, omav grupp 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

[1] http://www.suse.de/~agruen/acl/linux-acls/online

[2] http://www.vanemery.com/Linux/ACL/linux-acl.html

[3] http://www.computerhope.com/unix/usetfacl.htm

[4] http://www.computerhope.com/unix/ugetfacl.htm