You are on page 1of 8

Prístupové práva používateľov

Každý súbor v unixových systémoch obsahuje 2 základné prvky slúžiace k správe


prístupu k nemu. Na jednej strane každý súbor ma definovaného vlastníka a
skupinu. Na druhej strane, pre vlastníka a skupinu a „zvyšok sveta“ nastavujeme
prístupové práva. Nastavenie práv, vlastníka a skupiny zistíme z dlhého výpisu
obsahu stránky.
Každý súbor v systéme má jedného vlastníka - UID(User ID) a jedného skupinového vlastníka
- GID (Group ID).

Príkazom ls –l vieme zobraziť podrobnosti o adresároch a súboroch v pracovnom


adresari:

1. stĺpec – práva k súboru/adresáru (ďalej budem používať pre zjednodušenie len


súbor). d na začiatku znamená, že ide o adresár, - že ide o súbor. ďalej nasledujú
samotné práva k súboru. Ide o 9 znakov v poradí rwxrwxrwx. Tieto znaky sa delia
na trojice rwx. Prvá trojica je pre vlastníka súboru, druhá pre skupinu, do ktorej patrí
vlastník súboru a tretia pre všetkých ostatných používateľov.

rwx sa vždy píše v tomto poradí (Read, Write, eXecute).


r – read – práva pre čítanie súboru
w – write – práva pre zápis do súboru
x – executable – práva pre spustenie (vykonanie) súboru

Ak sa namiesto písmenka zobrazí znak pomlčky, znamená to, že toto právo nie je prístupné.
Napr.: ak má súbor práva -rwxrw---- znamená, že ide o súbor a nie adresár (-), vlastník
súboru má všetky práva k súboru (rwx), užívatelia patriaci do rovnakej skupiny ako vlastník
majú práva na čítanie a zápis ale nie na spúšťanie (rw-) a ostatní užívatelia nemajú k súboru
žiadne práva (---).
Na zmenu týchto práv slúži príkaz chmod. Jeho parametrom sú práva uvedené v bitoch
podľa nasledujúcej tabuľky:

Napr.: chmod 214 file.txt znamená, že k súboru file.txt bude mať vlastník práva na zápis, užívatelia z
rovnakej skupiny ako vlastník práva na spúšťanie a všetci ostatní na čítanie.

2. stĺpec – počet podadresárov a súborov v adresári. Ak ide o súbor, je tam vždy 1. Ak je tam
2, adresár je prázdny a obsahuje len aktuálny adresár (.) a nadradený adresár (..). Číslo 3
znamená, že adresári sa okrem odkazu na samotný adresár a nadradený adresár nachádza
ešte jeden podadresár alebo súbor. Pri vyšších číslach adresár obsahuje (číslo – 2)
podadresárov alebo súborov (napr. 4 => dva podadresáre alebo súbory, 10 => 8 podadresárov
alebo súborov).
3. stĺpec – vlastník súboru
4. stĺpec – skupina, do ktorej patrí vlastník súboru
5. stĺpec – veľkosť súboru. Pri prázdnom adresári je veľkosť 4096 bitov.
6. stĺpec – čas poslednej úpravy súboru alebo adresáru (podrobné údaje o čase: stat subor)
7. stĺpec – názov súboru alebo adresáru

Zmena prístupových práv k súborom


Zmenu prístupových práv k súboru môžeme riešiť dvojakým spôsobom. Jednou možnosťou
je nastavenie práv súboru pre vlastníka, skupinu, alebo ostatných. Druhou je zmeniť
vlastníka, alebo skupiny, alebo naraz oboje pre konkrétny súbor.
chmod

Príkaz slúžiaci na zmenu prístupových práv k súboru. Práva sa skladajú z trojice troch
prístupových práv a jedného po ukazujúceho na typ.
Zobrazíme si práva súborov, adresárov pomocou príkazu ls -l:

drwx---r-x 5 ferko users 4096 2009-11-12 09:15 subor

V nasledujúcej tabuľke sú vysvetlené všetky označenia, s ktorými sa môžete stretnúť.


Typ súboru Priradený znak Význam (anglický)
Obyčajný súbor -
Adresár d Directory
Odkaz l Link
Pomenovaná rúra p Pipe
Socket s Socket
Súbor blokového zariadenia b Block file
Súbor znakového c Charakter file
zariadenia

Ďalej sa nachádzajú tri skupiny znakov po tri znaky.

Označenie A
skupiny práv U G O
Symbolické r w x r w x r w x
vyjadrenie
Osmičkové vyjadrenie 4 2 1 4 2 1 4 2 1

Prístupové práva nastavujeme pre vlastníka súboru (user), pre skupinu (group) do ktorej súbor
patrí a pre ostatných užívateľov (other). Všetkým môžeme nastaviť práva buď pomocou
symbolického vyjadrenia, alebo pomocou osmičkového vyjadrenia.

Symbolické Osmičkové Pre súbor Pre adresár


vyjadrenie vyjadrenie
Read 4 Čítanie zo súboru Čítanie adresára (výpis obsahu
adresára)
Write 2 Zápis do súboru Zápis do adresára (vytváranie,
(zmena obsahu a mazanie, premenovanie súborov
dĺžky) i adresárov)
eXecute 1 Spúštanie Vstup do adresára
(programu alebo
skriptu)

V príklade je typ nastavený na adresár, vlastník, čiže ferko má všetky prístupové práva, má
neobmedzený prístup k svojmu adresáru. Ostatní užívatelia zo skupiny users nemajú žiadne
práva. Zvyšok systému môže čítať a prechádzať adresárom.

Zmena práv sa realizuje zápisom príkazu:

chmod <mod> <subor(y)>


Ak chcete pridať skupine právo na čítane napíšeme

chmod g+r subor

Ak chcete odobrať skupine právo na čítanie:

chmod g-r subor

Viaceré práva zadáte viac za sebou, napríklad pre odobratie čítania i zápisu pre užívateľa:

chmod u-rw subor

Pre nastavenie spúštania pre všetkých postačí jeden z týchto dvoch príkazov, obe sú si
rovnocenné:

chmod a+x subor

chmod +x subor

Jednotlivé práva môžeme nastaviť aj pomocou číselnej kombinácie. Pre jednotlivé skupiny
(užívateľ, skupina, ostatní) sa osmičkové práva spočítavaju a nastavujú už iba ako trojica naraz.

Symbolické Osmičkové vyjadrenie Nastavenie práv


vyjadrenie
rwxrwxrwx 421 421 421 777
rwx---rwx 421 000 421 707
r--r--r-- 400 400 400 444
rwxr---w- 421 400 020 742
rwx------ 421 000 000 700
rw-rwx--- 420 421 000 670

Príkazom chmod 644 subor.txt docielime, že vlastník bude môcť do súboru zapisovať, ale pre
všetkých ostatných bude k dispozícii len právo subor.txt čítať. Toto pravda možno nastaviť aj pre
adresár a výpis príkazom ls -l indikuje, že pre adresár platí právo 644 (t. j. rw- pre vlastníka, r--
pre skupinu a ostatných):
drw-r--r-- 2 juro wheel 512 Aug 21 16:38 obrazky

 chmod 400 file - pre seba máme právo čítať, skupine a ostatným ho odoberieme
 chmod 440 file - pre seba aj pre skupinu máme právo súbor čítať
 chmod 444 file - pre seba, skupinu a aj ostatných platí právo čítať súbor
 chmod 222 file - Súboru file pridelíme práva na zapisovanie pre všetkých (skupine aj
ostatným).
 chmod 444 adresar - Pridelíme práva na čítanie pre všetkých.
 chmod 111 file - Pridelíme práva na spustenie súborov pre všetkých.
 chmod 777 file - Aktivujeme všetky práva.
 chmod 000 file - Všetky práva sú zakázané.

chown

chown umožňuje zmenu vlastníka alebo skupiny alebo vlastníka a skupiny naraz, konkrétneho
súboru. Aby príkaz vedel či chceme zmenu užívateľa alebo skupiny, zaraďujeme medzi meno a
skupinu dvojbodku, v prípade, že meníme iba skupinu, pred skupinu zadávame vždy dvojbodku.

Použitie príkazu ilustrujú následujúce príkazy:

chown uzivatel subory

chown uzivatel:skupina subory

chown :skupina subory

Pre zmenu iba vlastníka:

chown ferko Plocha

chown ferko ~ferko/www/incoming/zadania.txt

Pre zmenu skupiny:

chown :users Plocha

chown :users ~ferko/www/incoming/zadania.txt

Pre zmenu vlastníka a skupiny:

chown ferko:users Plocha

Všetky tieto príklady sú funkčné, ale zmenia vlastníka alebo skupinu iba pre jeden súbor alebo
adresár. Ak chceme zmenu uplatniť aj na súbory umiestnené vnútri adresára, musíme meniť
oprávnenia rekurzívne, s parametrom -R. Istotne ste si všimli, ak ste boli na prechádzajúcich
hodinách pozorní, že rekurzívny prepínač sa označoval s malým písmenom r, v prípade príkazov
chown a chmod sa používa veľké písmeno R.

Ak chceme zmeniť vlastníka a skupinu rekurzívne, použijeme napríklad:

chown -R ferko:users Plocha

Správa užívateľov a skupín

passwd

Nástrojom passwd dokážeme zmeniť svoje vlastné heslo, prípadne užívateľ root môže zmeniť
heslo akémukoľvek inému užívateľovi. O zmenu vlastného hesla zažiadame príkazom:

passwd

Uchovanie hesla v unixových systémoch prebieha odlišným spôsobom oproti systému MS


Windows. Z hesla zadaného užívateľom pri registrácií alebo zmene hesla sa pomocou
hashovacej funkcie generuje „hash“ a iba tento sa prikladá k uloženým informáciám o
užívateľských účtoch. Heslo samotné sa z bezpečnostných dôvodov v systéme nezaznamenáva
a preto ak ho užívateľ zabudne, nedá sa opätovne obnoviť, iba vytvoriť nové.

Prihlasovanie do systému prebieha takymto spôsobom. Užívateľ je požiadaný o zadanie hesla.


Po zadaní hesla sa z neho vygeneruje „hash“, ktorý sa porovnáva s uloženým „hashom“ v
zozname užívateľov. Pokiaľ sa tieto obe hashe rovnajú, predpokladá sa, že by mali by sa
zhodovať aj pôvodné hesla a teda je užívateľ autentizovaný.

S pomocou tohto nástroja môžeme meniť heslá nie len pre lokálnych užívateľov. Vo väčšine
prípadov je ho môžné použiť aj pre zmenu hesla v distribuovaných autentizačných
mechanizmoch ako je NIS, Kerbeos, LDAP. Niekedy bolo potrebné pre zmenu hesiel v týchto
systémoch používať odlišné nástroje ale v súčastnosti má väčšina implementácií jediný príkaz
passwd, ktorý je schopný meniť heslo cez autentizačné moduly PAM 1).

Ako bolo už spomenuté, iným užívateľom dokáže zmeniť heslo užívateľ root. Je to z toho dôvodu,
že hocikto iný môže svoje vlastné heslo zabudnúť, alebo si ho zablokovať, potom môže
superužívateľ (root) zmeniť heslo príkazom:

passwd uzivatel

kde uzivatel je prihlasovacie meno užívateľa.


Pozor   Ak zadávate heslo, na obrazovku Vám nič nevypíše, ale v skutočnosti heslo zadávate,
len to nič neukazuje. Je to určitá forma ochrany, kde neukazuje ani hviezdičky, aby nikto nemohol
spočítať dĺžku hesla.

adduser

adduser uzivatel

Pokiaľ nie ste root, príkaz adduser v lokalizovanom systéme vráti následujúcu hlášku:

ferko@server:~$ adduser

adduser: Iba root môže pridať používateľa alebo skupinu do systému.

V prípade úspechu systém nevypíše žiadnu hlášku.

Ak vytvárate užívateľa spolu s ním sa vytvorí aj jeho domovský adresár. Pokiaľ ste nezmenili
konfiguráciu, objaví sa v adresári /home pod názvom nového užívateľa. Ak vytvoríte
užívateľa jozko, jeho domovský adresár bude /home/jozko.

Konfigurácia pre príkaz adduser sa nachádza v súbore /etc/adduser.conf, kde môžete


upravovať niektoré parametre, ako napríklad štandardnú skupinu pre užívateľa, alebo
umiestnenie /home adresára.

deluser

Ak užívateľský účet už nie je v systéme potrebný, alebo ho potrebujeme z iného dôvodu odstrániť
na trvalo zo systému, použijeme príkaz deluser. Pre zmazanie užívateľa jozko môžete použiť
príkaz :

deluser jozko

Mazanie užívateľa štandardne nevymaže aj jeho domovský adresár. Preto vždy po zmazaní
užívateľa skontrolujte aj jeho údaje v domovskom adresári. Ak pri vymazaní užívateľa chcete
automaticky mazať aj jeho domovský adresár, a jeho obsah, zmeňte konfiguráciu v
súbore /etc/deluser.conf.

groups

Podľa toho v akých skupinách sa nachádza užívateľ závisí aj to, k čomu všetkému má prístup.
Napríklad ak chceme umožniť užívateľovi prístup k CD alebo DVD mechanike, musí sa
nachádzať v skupine cdrom. Ak potrebujeme zistiť v ktorých skupinách sa nachádza užívateľ,
poslúži na to základný príkaz groups.
Základné použite príkazu groups môže byť buď samostatne, čiže iba groups bez parametrov. V
takomto prípade sa vypíšu skupiny v ktorých sa nachádza aktuálny užívateľ. Ak sa použije nejaký
parameter, najčastejšie to býva používateľské meno.

groups

groups ferko

Zoznam skupín v ktorých sa nachádzajú jednotlivý používatelia sa nachádza v


súbore /etc/group.

addgroup

V unixových systémoch sa rozsah právomoci voči systému (prístupové práva sú niečo iné) ako
napríklad prístup ku grafickému adaptéru, zvukovej karte, alebo možnosť inštalovať softvér volí
pomocou členstva v určitých skupinách.

Napríklad, pre možnosť spúšťať VirtualBox, ktorý teraz používate, musíte byť v
skupine vboxusers. Ak užívateľ ferko, ktorý bol iba nedávno vytvorený nemá ešte možnosť
spúšťať program VirtualBox, musíme ho zaradiť do skupiny vboxusers príkazom:

addgroup ferko vboxusers

Jedného užívateľa môžete pridať naraz len do jednej skupiny.

delgroup

Podobne ako pri adduser existuje opačný príkaz deluser, takisto aj k príkazu addgroup existuje


opačný príkaz delgroup. Tento príkaz umožňuje odstrániť užívateľa z rôznych skupín.

delgroup jozko vboxusers

delgroup jozko vboxusers admin

V prvom príklade uberieme užívateľovi s názvom jozko možnosť spúštať program VirtualBox,
lebo ho uberieme zo skupiny vboxusers. Podobne sa zachová príkaz v druhom príklade, ale
navyše uberie aj niektoré administrátorské oprávnenia, pre ktoré je nutné členstvo v
skupine admin.
Ak potrebujete automaticky mazať užívateľa aj s jeho domovským adresárom, použijete príkaz:

deluser -r uzivatel

You might also like