Académique Documents
Professionnel Documents
Culture Documents
Service NFS
Service NFS
1. Introduction
NFS (Network File System) est un protocole cr par SUN vers 1980. Comme sont nom
lindique, ce protocole est conu pour permettre le partage de fichier entre systme
UNIX/LINUX. Il permet d'organiser les fichiers dans un emplacement central, tout en offrant
la possibilit de laisser des utilisateurs autoriss y accder. Grce NFS, les utilisateurs
peuvent partager des fichiers sur un rseau avec une transparence totale.
Il y a une machine qui joue le rle de serveur de fichiers (appele serveur NFS).
Elle
exporte tout (arborescence racine /) ou partie de son systme de fichiers pour une
L'utilisateur peut monter cette arborescence exporte par le serveur NFS, sur un point
de montage de la machine cliente, de faon tout--fait semblable au montage de
systmes de fichiers des divers priphriques (mount).
Mais dans un cadre de travail stable, o le serveur est ddi, il est souhaitable de
monter les ressources NFS au dmarrage. Il suffit pour cela d'inclure la description du
montage sur une ligne du fichier /etc/fstab.
il cre tout un tas de problmes de scurit bien connus des crackers qui peuvent
facilement les exploiter pour obtenir l'accs (lecture, criture et effacement) tous vos
fichiers.
Chapitre 2
Service NFS
Comme les autres services Linux, NFS se gre avec un script plac dans
/etc/rc.d/init.d/. Pour lancer NFS, la commande suivante doit tre excute :
# service nfs start
Starting NFS services: [ OK ]
Starting NFS quotas: [ OK ]
Starting NFS mountd: [ OK ]
Starting NFS daemon: [ OK ]
Ou bien
# /etc/rc.d/init.d/nfs
start
# /etc/rc.d/init.d/nfs
stop
computer1(options1)
computer2(options2)
SALIM
Chapitre 2
Service NFS
*.ucan.ac.ma,
jaber.ucam.ac.ma
193.201.109.0/255.255.255.0,
193.201.109.1
rw : partage en lecture/criture
ro : partage en lecture
root_squash : spcifie que le root de la machine local (sur laquelle le rpertoire est
mont) n'a pas les droits de root sur le rpertoire partag de la machine distante
(l'option no_root_squash spcifie que le root de la machine sur laquelle le rpertoire
est mont a les droits de root sur le rpertoire). L'option root_squash est l'option par
dfaut.
Afin de limiter le champ d'action de chaque utilisateur distant, y compris le superutilisateur, utilisez l'option all_squash.
sync : le serveur NFS naffiche les changements sur le client quaprs leur criture
relle sur le disque. Ce paramtre peut avoir un impact significatif sur les
performances mais plus scuris.
async : le serveur NFS affiche les changements sur le client avant que ceux ci soient
rellement effectus sur le disque. le transfert est plus rapide mais constitue un risque
en cas de disfonctionnement lectrique sur le serveur NFS.
noaccess : permet d'exclure une partie de l'arborescence pour des clients donns
Exemples :
/home/Ali 192.168.0.0/255.255.255.0(ro,sync)
SALIM
Chapitre 2
Service NFS
/nfs/export 192.168.0.2(rw,sync,all_squash)
Le rpertoire /nfs/unix est export en lecture-criture pour tout le monde. Tandis que le
sous rpertoire /nfs/unix/exam est interdit d'accs par le paramtre noaccess.
/nfs/unix *(rw)
/nfs/unix/exam *( noaccess)
-o options permet l'utilisateur de spcifier les rpertoires devant tre exports qui ne
sont pas inclus dans la liste de /etc/exports. Ces systmes de fichiers partags
supplmentaires doivent tre crits de la mme faon qu'ils sont spcifis dans
/etc/exports. Cette option est utilise pour tester un systme de fichiers avant de
l'ajouter de faon permanente la liste des systmes de fichiers exporter.
SALIM
Chapitre 2
Service NFS
-a fait en sorte que tous les rpertoires soient exports ou non, selon les autres options
passes exportfs.
-i indique exportfs d'ignorer /etc/exports ; seules les options donnes depuis la ligne
de commande sont utilises pour dfinir les systmes de fichiers exports.
-u annule l'exportation de rpertoires pouvant tre monts par des utilisateurs distants.
La commande exportfs -ua suspend le partage de fichiers NFS tout en conservant les
divers dmons NFS en marche. Pour permettre au partage de fichiers NFS de se
poursuivre, entrez exportfs -r.
-v opration prolixe, o les systmes de fichiers exports et non exports sont affichs
de faon plus dtaille lorsque la commande exportfs est excute.
Si aucune option n'est passe la commande exportfs, une liste de systmes de fichiers
actuellement exports s'affiche.
Exemple :
Dsactive le partage /:
# exportfs -u "192.168.0.42:/"
-
# exportfs -ua
SALIM
lister tous les partages disponible sur le serveur on utilise exportfs sans arguments :
Chapitre 2
Service NFS
# exportfs
/home/tito 192.168.0.42
/share 192.168.0.*
2.4 Les dmons NFS
Dmon
Portmap
Ct
serveur
Rpc.mountd
Rpc.nfsd
serveur
serveur
Ncssaire
Utilit
Oui
Traduit un n de programme RPC en
Oui
Oui
port
Initie le montage ct serveur
Gre les requtes daccs aux fichiers
SALIM
-t nfs
ns1:/usr/local/man
/doc
Chapitre 2
Service NFS
/doc
Le fichier /etc/mtab
Ce fichier est modifi chaque fois que l'utilisateur "monte" ou "dmonte" un systme de
fichier. Le systme tient jour une table des volumes monts.
Liste des dossiers monts
La commande mount sans paramtres, donne la liste des volumes monts. La commande
consulte la table maintenue jour dans le fichier mtab.
Attention:
L'accs la commande "mount" est, par dfaut, autoris juste pour root. Il faut rajouter
l'option "user" dans le fichier /etc/fstab, afin qu'un utilisateur puisse accder cette
commande.
Exemple:
/dev/cdrom
/mnt/cdrom
iso9660
noauto,ro
Devient
/dev/cdrom
/mnt/cdrom
iso9660
user,noauto,ro
ext2
defaults
11
/dev/hda2
swap
swap
defaults
00
/dev/fd0
/mnt/floppy
ext2
noauto
00
/dev/cdrom
/mnt/cdrom
iso9660 user,noauto,ro
ns1:/usr/local/man
/doc
nfs rsize=8192,wsize=8192,timeo=14,intr
00
La dernire ligne indique que le volume /usr/local/man, situ sur le serveur "ns1", et qui
contient les pages du manuel est un volume nfs, mont sous le nom local /doc. Ce fichier
/etc/fstab vite d'avoir "monter" manuellement des systmes de fichiers
SALIM
Chapitre 2
Service NFS
description
systme de fichier mont
point de montage
type du systme de fichier
option de montage
indique les systmes de fichiers sauvegarder (0 pas de sauvegarde)
ordre de vrification des systmes de fichier au dmarrage
Les options
Options
defaults
auto
noauto
user
nouser
rw
ro
atime
noatime
exec
noexec
setuid
nosuid
async
sync
rsize=8192
wsize=8192
Intr
Timeo
Description
Correspond a rw,suid,dev,exec,auto,nouser et async
Montage automatique lors d'un appel mount -a
Pas de montage automatique
Autorise l'utilisateur courant monter/dmonter le systme de fichier
Seul le compte root peut monter/dmonter le systme de fichier
Montage en lecture/criture
Montage en lecture seule
Met a jour la date chaque manipulation
Pas de mise jour de la date
Autorise l'excution des programmes
Pas d'xecution
Les bits SUID et SGID sont pris en compte
Ne sont pas pris en compte
Montage asynchrone
Montage synchrone
peuvent acclrer les communications NFS en lecture (rsize) et criture
et
Chapitre 2
Service NFS
Options de showmount :
showmount -a machine : Affiche la fois le nom du client et le rpertoire mont
sous la forme machine:rpertoire.
showmount -d machine : Affiche seulement les rpertoires monts par un client.
showmount -e machine : Affiche la liste des rpertoires exports par le serveur
NFS.
showmount -h : Fournit un court rsum de l'aide.
showmount -v : Renvoie le numro de version du programme.
3.4. Montage automatique des systmes de fichiers NFS au
moyen de autofs
L'un des dsavantages lorsque l'on utilise /etc/fstab est que, peu importe le temps
consacr utiliser le systme de fichiers mont, le systme doit y ddier des ressources pour
le maintenir en place. Cela n'est pas problmatique si l'on parle de quelques montages, mais
peut le devenir lorsque le systme maintient les montages d'une douzaine d'autres systmes en
mme temps car les performances d'ensemble du systme peuvent en souffrir. Donc, au lieu
d'avoir recours /etc/fstab, vous pouvez vous servir de l'utilitaire automount, qui monte et
dmonte des systmes de fichiers NFS automatiquement et permet de limiter les ressources
employes.
Le montage automatique d'un partage NFS prvoit l'utilisation d'autofs. Autofs utilise
les dmons automount pour grer les points de montage en les montants de faon dynamique
lorsqu'on y accde.
Autofs consulte le fichier de configuration matre /etc/auto.master pour dterminer
quels points de montage sont dfinis. Il amorce ensuite un processus de montage
automatique avec les paramtres adquats pour chaque point de montage. Chaque ligne du
fichier de configuration matre dfinit un point de montage et un fichier de configuration
SALIM
Chapitre 2
Service NFS
<options>
Exemple :
/doc
/etc/auto.doc
--timeout 60
Exemple:
Doc-unix
-rw
192.168.1.1:/partage
REMARQUE: Autofs cr pour vous les points de montages. Inutile de crer les
rpertoires correspondants.
Exemple :
SALIM
10
Chapitre 2
Service NFS
3. Scuriser NFS
NFS fonctionne bien pour partager des systmes de fichiers entiers avec de nombreux
htes connus et de faon trs transparente. Nombre d'utilisateurs ont accs des fichiers sur
un montage NFS sans mme s'apercevoir que le systme de fichiers qu'ils utilisent
n'appartient pas leur systme local. Cependant, la facilit d'utilisation va de paire avec toute
une srie de problmes potentiels de scurit.
Vous devriez tenir compte des informations suivantes lorsque vous exportez des
systmes de fichiers NFS sur un serveur ou les montez sur un client. Ainsi, vous minimiserez
les risques de scurit NFS et protgerez mieux vos donnes et votre quipement.
SALIM
11
Chapitre 2
Service NFS
SALIM
12
Chapitre 2
Service NFS
Le comportement par dfaut lors de l'exportation d'un systme de fichiers via NFS est
d'utiliser root squashing. Cela a pour effet de paramtrer sur une valeur du compte nobody du
serveur l'ID utilisateur de tout utilisateur se servant du partage NFS en tant que superutilisateur sur son ordinateur local. Vous ne devriez pas dsactiver la rduction du superutilisateur, moins que la prsence de nombreux super-utilisateurs sur votre systme ne vous
drange pas.
Si vous n'autorisez les utilisateurs qu' lire les fichiers via votre partage NFS, vous
pourriez utiliser l'option all_squash, qui fait en sorte que tous les utilisateurs accdant votre
systme de fichiers export aient l'ID utilisateur de l'utilisateur nobody.
SALIM
13