EXPORTS(5) EXPORTS(5)
JMENO
exports - souborove systemy exportovane pomoci NFS
SYTAXE
/etc/exports
POPIS
Soubor /etc/exports definuje pristupova prava pro souborove systemy,
ktere mohou byt exportovany NFS klientum. Je pouzivan jak NFS mount
demonem, (mountd(8)) tak i NFS server demonem (nfsd(8)).
Format souboru je podobny formatu souboru exports na SunOS, pricemz
definuje nektera rozsireni. Kazda radka obsahuje bod pripojeni (mount
point) a seznam pocitacu ci sitovych skupin, ktere maji pravo tento
souborovy system v tomto bode pripojit. Ke kazdemu jmenu pocitace je
mozno pripojit seznam pripojovacich parametru v zavorkach. Prazdne
radky jsou ignorovany a znak # uvozuje komentar az do konce radku.
Zakladni prepinace
secure Tento prepinac vyzaduje, aby pripojeni vychazelo z portu s
cislem mensim nez IPPORT_RESERVED (1024). Toto je standardni
nastaveni. Pro jeho zmenu zadejte insecure.
ro Povoluje pristup pouze pro cteni pro toto pripojeni. Standardne
je povolen pristup i pro zapis. Ten je mozno explicitne uvest
pomoci prepinace rw.
link_relative
Konvertuje absolutni symbolicke odkazy (tj. ty, ktere zacinaji
lomitkem) na relativni pridanim spravneho poctu ../ na zacatek,
abychom se posunuli z adresare s odkazem do korene serveru.
Tento prepinac ma vyznam pouze tehdy, neni-li souborovy system
pripojen jako koren.
link_absolute
Odkazum se ponechava jejich puvodni vyznam. Toto je standardni
nastaveni.
Mapovani uzivatelskych identifikaci
nfsd zaklada kontrolu pristupu k souborum na serveru na uid a gid,
ktere je soucasti kazdeho NFS RPC pozadavku. Logicky pozadavek, aby
uzivatel pristupoval na soubory na serveru stejne jako na lokalni
vyzaduje, aby uid a gid byla na klientu i serveru totozna. Toto vsak
neni vzdy pravda a nekdy je dokonce vyzadovano, aby tomu tak nebylo.
Velmi casto neni vhodne, aby uzivatel root na jednom pocitaci byl take
rootem, kdyz pristupuje na soubory na NFS serveru. Proto se uid 0
obvykle mapuje na jine uid zvane anonymni nebo nobody . Tento mod je
standardni (nazyva se root squashing) a lze jej vypnout pomoci
no_root_squash.
Nfsd standardne ziskava anonymni uid a gid hledanim uzivatele nobody v
souboru /etc/passwd pri startovani demona. Jestlize jej nenalezne,
pouzije -2 (65534) jako uid i gid. Tyto hodnoty mohou byt zmeneny
pomoci prepinacu anonuid a anongid.
Navic nfsd umoznuje nastavit mapovani dalsich uid a gid na uzivatele
nobody. Mapovani vsech na nobody lze nastavit prepinacem all_squash.
Aby bylo mozno dynamicky nastavit mapovani lokalnich a vzdalenych uid a
gid pouzijte nfsd prepinac map_daemon , ktery pouziva UGID RPC
protokol. Aby vse fungovalo, je treba spustit ugidd(8) mapovaci demon
na strane klienta.
Zde je kompletni seznam mapovacich prepinacu:
root_squash
Mapuje pozadavky uid/gid 0 na anonymni uid/gid. Vsimnete si, ze
se to netyka jinych stejne citlivych uzivatelu, jako je napr.
bin.
no_root_squash
Vypina root_squash. Obvykle je vhodny pro bezdiskove stanice.
squash_uids a squash_gids
Seznam uid/gid, ktere se maji take mapovat na anonymniho uziva-
tele. Spravny seznam vypada napr. takto:
squash_uids=0-15,20,25-50
Obvykle je vsak tento seznam jednodussi:
squash_uids=0-100
all_squash
Mapuje vsechny uzivatele na anonymniho. Lze jej s vyhodou pouzit
na NFS-export verejnych FTP stromu ci jinych verejne sdilenych
adresaru. Vypina se pomoci no_all_squash, coz je standardni
nastaveni.
map_daemon
Tento prepinac zapina dynamicke mapovani uid a gid. Kazdy
pozadavek je prelozen do odpovidajiciho serveroveho uid/gid a
kazda odpoved zase obracene. Vyzaduje, aby byl demon
rpc.ugidd(8) spusten na strane klienta. Standardne je nastaveno
map_identity, ktere ponechava vsechna uid beze zmeny. Pritom se
vsak v kazdem pripade pouzije nastaveni prepinacu sqash, ktere
maji prednost.
anonuid a anongid
Tyto prepinace explicitne nastavuji anonymni uid a gid. Primarni
pouziti je pro PC/NFS klienty, kde se muze kazdy pozadavek
jevit, jako byl prisel od jedineho klienta. Jako priklad uvedme
export pro /home/joe v prikladech dole, ktere mapuje kazdy
pozadavek na uid 150 (o kterem se predpoklada, ze patri uziva-
teli joe).
PRIKLAD
# priklad souboru /etc/exports
/ master(rw) trusty(rw,no_root_squash)
/projects proj*.local.domain(rw)
/usr *.local.domain(ro) @trusted(rw)
/home/joe pc001(rw,all_squash,anonuid=150,anongid=100)
/pub (ro,insecure,all_squash)
Prvni radka exportuje cely souborovy system pocitacum master a trusty.
Navic, veskery squashing je vypnut pro klienta trusty. Druhy a treti
priklad ukazuje, jak pouzit zastupne znaky pro jmena pocitacu a jmena
sitovych skupin (to je @trusted). Ctvrta radka ukazuje export pro kli-
enta PC/NFS (viz vyse). Posledni radka exportuje verejny FTP adresar
libovolnemu pocitaci, pricemz vsechny pozadavky jsou provadeny jako
uzivatel nobody. Prepinac insecure dovoluje pripojit klienty, kteri
nepouzivaji porty rezervovane pro NFS.
UPOZORNENI
Na rozdil od jinych implementaci NFS serveru tento nfsd demon dovoluje
exportovat adresar i podadresare temuz klientovi, napr. /usr a
/usr/X11R6. V tomto pripade se pouziji prepinace, ktere jsou nejblize.
Dejme tomu, ze klient pristupuje na soubor v /usr/X11R6, pak se uplatni
prepinace pro /usr/X11R6 . Toto plati v pripade, ze jsou tyto
prepinace definovany maskou nebo pro sitovou skupinu.
SOUBORY
/etc/exports
Konfiguracni soubor pro nfsd(8).
/etc/passwd
Soubor hesel.
DIAGNOSTIKA
Chyba v tomto souboru je hlasena pomoci syslogd(8) jako uroven NOTICE
az DAEMON kdykoli je nfsd(8) nebo mountd(8) spusten.
VIZ TEZ
mountd(8), nfsd(8), nfs(5), passwd(5).
4.2 Berkeley Distribution 2. kvetna 1998 EXPORTS(5)