Konfigurace NFS serveru

nfs4_smPro konfiguraci serveru NFS jsou nezbytné dva základní kroky:
1) vytvoření souboru /etc/exports
Zde se definuje, které části disku serveru budou sdíleny s ostatními uživateli sítě a jsou zde také stanovena pravidla tohoto sdílení. Je zde například uvedeno, zda má určitý uživatel právo z disku číst nebo / a na disk také zapisovat.

2) Spuštění procesů serveru NFS, který se řídí instrukcemi zapsanými v souboru /etc/exports.

KROK ZA KROKEM
1) Konfigurační soubor /etc/exports

Servery NFS mají jediný konfigurační soubor, kterým je /etc/exports. V tomto souboru je uveden seznam diskových oddílů, které lze sdílet, seznam uživatelů, kteří je smí sdílet a jejich přísupová práva. Zde je příklad:

/dir/to/export    client1 (permissions)   client2 (permissions) \ client3 (permissions)

kde jednotlivé výrazy znamenají:
/dir/to/export je adresář, který chceme sdílet s ostatními uživateli (např. /export/home
client1, client2 atd., jsou jména stanic klientů NFS
permissions jsou přístupová práva příslušná k dané klientské stanici

Příklad kompletního konfiguračního souboru NFS /etc/exports:
#
#/etc/exports for nfsserver.domain.com
#
/export/home   denon (rw) technics (rw) vestax (rw) \
unixadmin (rw,no_root_squash)
/export/usr/local denon (rw,no_root_squash) \
technics /rw,no_root_squash) \
bertax (rw,no_root_squash) \
unixadmin (rw,no_root_squash)
/export/anonftp ftpserver (ro,no_root_squash)

Parametr Význam
secure Číslo, po kterém klient požaduje připojení musí být menší než 1024 (standardní nastavení)
ro Přístupová práva k diskovému oddílu pouze pro čtení
noaccess Klientovi bude odepřen přístup do všech podadresářů adresáře dir/to/mount. Tímto parametrem umožníte klientovi připojit např. adresář /dir, přičemž např. přístup do /dir/to zakážete, ale přístup do dir/from povolíte.
no_root_squash Standní bezpečnostní opatření způsobuje, že server ignoruje požadavky na diskový oddíl superuživatele přes síťový souborový systém NFS. Chcete – li povovlit superuživateli přístup z klientské stanice k adresářům připojeným přes NFS, musíte dané adresáře připojit s tímto parametrem.
squash_uids=uid-list Je – li vygenerován požadavek na NFS, obsahuje UID uživatele, od kterého požadavek vzešel. Tato informace dovoluje NFS rozlišit práva jednotlivých uživatelů. Parametr squash_uids=uid-list použijte v případě, kdy chcete omezit přístup některých uživatelů, reprezentovanýc jejich UID k určitým diskovým oddílům. Proměnná uid-list představuje čárkami oddělený seznam UID, které chcete zakázat. Je možné oužít i rozsahy. Např. squash_uids=5,10-15,20,23
squash_gids=gid-list Funguje stejně jako squash_uids, pracuje však s ide skupin (GID)
rw Obvyklá práva pro čtení a zápis.

2) Příkaz k načtení souboru /etc/exports
Je – li soubor /etc/exports vytvořen, musíme použít příkaz exportfs na jehož základě načte server NFS konfigurační data. příkaz exportfs má následující parametry:

Parametr Popis
-a Exportuje všechny záznamy v souboru /etc/exports
-r Opakovaně exportuje všechny záznamy v souboru /etc/exports
-u client:/dir/to/mount Neexportuje adresář /dir/to/mount pro klienta client
-o options Zde je možné zadávat stejné parametry jako parametry uvedené v přechozí tabulce. Budou se však vztahovat k souborovému systému určenému v příkazovém řádku exportfs
-v Získáme tak průběžné informace o procesu.

Příklady použití příkazu exportfs:

Chceme -li exportovat všechny souborové systémy:
# exportfs -a
Chceme -li exportovat např. adresář /exporrt/stuff pro klientskou stanici lenovo s právy pro čtení a zápis a_no_root_squash:
# exportfs – o rw,no_root_squash lenovo:/export/stuff
Ve většině prípadů stačí jednoduchý příkaz
exportfs -r

3) Kontrola nastavení – příkaz showmount
se používá k ověření toho, zda vše funguje správně. Po nastavení souboru /etc/exoprts a exportu všech souborových systémů za použití příkazu exportfs můžeme zadat příkaz showmount -e Tím se zobrazí seznam exportovaných souborových systémů. Parametr -e říká příkazu showmount, aby vypsal exportované adresáře. Spustíte – li showmount bez parametrů, vypíše klienty připojené k serveru. Použitím příkazu showmount můžete rychle zjistit, zda jste nfsd natavili správně. Tentýž příkaz můžete spustit na klientech předáním názvu serveru jako posledního parametru:
# showmount -e backup

4) Připojení stanice ke sdílenému adresáři skriptem
Pokud je vše správně nakonfigurováno, lze se připojit k exportovanému adresáři jednoduchým skriptem.
Jmenuje -li se nfs server backup a je vyexportovaný adresář /mnt/zaloha, vypadá skript následovně:
mount -t nfs backup:/mnt/zaloha /mnt/zalohamistni

Poznámka1: Samozřejmě musíme na klientské stanici mít vytvořený adresář, kte kterému připojíme vzdálený adresář. V tomto případě je to /mnt/zalohamistni

Poznámka2: POZOR! S použitím NFS4 se mění příkaz pro připojení souborového systému na nfs4. Příkaz tedy vypadá takto:
mount -t nfs4 backup:/mnt/zaloha /mnt/zalohamistni

5) Časté problémy:
a) Při exportu souborových systémů se Vám může stát, že server odmítne přístup určitému klientovi, přestože je uveden v souboru /etc/exports. Je to obvykle způsobeno tím, že server zaznamená adresu IP klienta, který se pokouší o připojení a doplní ji na plně kvalifikované doménové jméno (FQDN), které však neodpovídá jménu, pod kterým je klient uveden v souboru /etc/exports. Server se např. domnívá, že se klient jmenuje denon.domain.com, ale v /etc/exports je uvedeno pouze denon.

b) Dalším častým problémem je, že server určí IP adresu klientské stanice špatně. K této situaci může dojít, je – li chyba v souboru /etc/hosts nebo v tabulce DNS. Budete muset ověřit, zda IP adresy opdpovídají příslušným klientským stanicm.

Konfigurace NFS serveru