krimaka.net

Oikeudet

Linuxissa jokaisella tiedostolla ja hakemistolla on määritelty käyttöoikeudet, kuka saa käyttää, ja mitä saa tehdä. Rootin oikeudet ovat luokkaa ylijumala, joka voi tehdä aivan mitä vain. Seuraavassa paneudutaan normaalikäyttäjien oikeuksiin.

Kun luot uuden tiedoston, sinä ja ryhmäsi saatte siihen automaattisesti luku- ja kirjoitusoikeudet, muut saavat vain lukuoikeudet, esimerkki:

mara@kone:~$ nano esimerkki.txt
Kirjoitetaan tähänkin tiedostoon jotain sisältöä, näin...
mara@kone:~$ ls -l esimerkki.txt
-rw-r--r-- 1 mara mara 2 2007-08-24 08:11 esimerkki.txt

10 ensimmäisestä merkistä ensimmäinen ilmoittaa tiedoston tyypin, viiva on tiedosto, d tarkoittaisi hakemistoa. Seuraavat kolme merkkiä rw- kertovat käyttäjän oikeudet. Seuraavat kolme merkkiä r-- kertovat ryhmän oikeudet. Viimeiset kolme merkkiä r-- kertovat muiden oikeudet.

Oikeuksien määrittäminen

Oikeuksien määrittämiseen on käytössä käskyt chmod, chgrp ja chown. Lisäksi oikeuksia voidaan tietysti määrittää myös graafisesti resurssien- ja/tai tiedostonhallinnasta käsin.

chmod käskyn määritykset ovat:

+ Lisää oikeuden
- Vähentää oikeuden
r Tiedostolle lukuoikeuden ja hakemistolle listausoikeuden.
w Tiedostoa voidaan kirjoittaa, voidaan myös poistaa koko tiedosto, hakemiston poisto oikeus.
x Tiedosto voidaan suorittaa ohjelmana, hakemistoon voidaan siirtyä.
u Määritetään oikeus tiedoston omistajalle eli käyttäjälle.
g Määritetään oikeudet tiedostoon tai hakemistoon määritellylle ryhmälle.
o Määritetään kaikkien muiden oikeudet
a Määrittää saman oikeuden kaikille (u, g, o) kerralla (a tarkoittaa all).
s Asettaa SUID ja SGID oikeudet.
t Jättää ohjelman muistiin suorituksen jälkeen (sticky bit -oikeus)

Käyttäjä oikeuksia voidaan muuttaa graafisesti tiedostonhallinassa, tai komentotulkilla käskyllä chown.
chown mara:make /home/mara/esimerkki.txt määrittelisi maran kotikansiossa olevan tiedoston esimerkki.txt käyttäjäksi maran ja ryhmäksi maken. Käskyllä chown voidaan siis määrittää käyttäjä ja ryhmä samalla kertaa.

chgrp mara /home/mara/esimerkki.txt määrittelisi maran kotikansiossa olevan tiedoston esimerkki.txt ryhmäksi takaisin mara. Käskyllä chgrp voidaan siis määrittää tiedostolle tai hakemistolle ryhmä.

Seuraavaksi määritellään mitä käyttäjä ja ryhmä saavat tehdä.

Jälleen näitä oikeuksia voidaan muuttaa graafisesti tiedostonhallinassa, tai komentotulkilla nyt käskyllä chmod.
chmod u+rwx /home/mara/esimerkki.txt määrittelisi maran kotikansiossa olevan tiedoston esimerkki.txt käyttäjän (User) mara oikeuksiksi luku (r), kirjoitus (w), ja suoritus (x).

Annetaan vielä ryhmälle (Group) make joka oli jo aiemmin määritelty käskyllä chown, lukuoikeus eli käskytetään:
chmod g+r /home/mara/esimerkki.txt.

Kielletään muilta (Other) tiedoston käyttö kokonaan:
chmod o-rwx /home/mara/esimerkki.txt

Oikeuksia numeroiden avulla

Oikeuksia voidaan määrittää myös numeroiden avulla.

0   000   ---  
1   001   --x  
2   010   -w-  
3   011   -wx  
4   100   r--  
5   101   r-x  
6   110   rw-  
7   111   rwx

Helpoin tapa laskea oikeus on: luku=4, kirjoitus=2 ja suoritus=1. Esimerkki: Jos haluat mahdollistaa muille luku- ja suoritus- oikeudet tiedostoosi, niin komento on: chmod 775 esimerkki.txt

Lisätään käyttäjiä tiettyyn ryhmään

Käskyllä groupadd testi luotaisiin uusi testi -niminen ryhmä (man groupadd, kertoo lisää)..
Käskyllä gpasswd -a mara testi lisättäisiin käyttäjä mara ryhmään testi (man gpasswd, kertoo lisää).

Erikoisempia oikeuksia

setuid ja setgid eivät toimi shell-skripteillä. Syy tähän on turvallisuus, shell-skriptiä olisi liian helppo väärinkäyttää.

setuid

Setuid on vaarallinen, käytännössä setuid-oikeutta käyttää lähinnä root. Esimerkiksi tiedostoihin /etc/passwd ja /etc/shadow pääsee kirjoittamaan vain root, mutta käyttäjienhän pitää päästä vaihtamaan oma salasanansa. Se onnistuu, sillä passwd-ohjelmalla on setuid-oikeus päällä.

setgid

setgid-oikeus hakemistolla tarkoittaa, että hakemistoon luotavat tiedostot saavat saman ryhmän kuin hakemistolla on. Käskyllä: chmod g+s jokukansio saataisiin setgid päälle jokukansio nimiselle hakemistolle.

sticky bit

Lopuksi on vielä sticky bit, epävirallisesti suomennettuna tahmabitti, hakemistoille. Se tarkoittaa, että vain tiedoston omistaja saa poistaa tiedoston - normaalistihan kirjoitusoikeus hakemistolle antaa oikeuden poistaa hakemistosta kaikkia tiedostoja.

Valid CSS! Valid html5!

Torstai 28.3.2024 viikko 13

Powered by:

Powered by Rocky Linux
Powered by Apache Powered by PHP
Nimipäivät: Armas ja Sune

Put the fun back into computin, use linux!
ylös 2006-2024 © krimaka.net ylös