Vous êtes sur la page 1sur 26

Configurer un serveur NFS

Plan
Systme de fichiers virtuel Dfinitions NFS versions NFS Serveur NFS Client NFS Exemple pratique
2

Dfinitions
Network File System (ou NFS, systme de fichiers en rseau) Cest un protocole dvelopp par Sun Microsystems Il permet un ordinateur d'accder des fichiers via un rseau. Il fait partie de la couche application du modle OSI. Il permet de partager des donnes principalement entre systmes UNIX.

Des versions existent pour Macintosh ou Microsoft Windows.


NFS est compatible avec IPv6 sur la plupart des systmes
6

NFS versions
NFS versions 1, 2, 3 Les versions 1 et 2 (les annes 80) non scurises, prvues pour fonctionner sur UDP.

La version 3(les annes 90)


tendue pour prendre en charge TCP.

ce stade la gestion de la scurit reste lmentaire et


souffre d'importantes lacunes.
7

NFS versions
NFSv4 Inspire de AFS la version 4 du protocole marque une rupture totale avec les versions prcdentes. L'ensemble du protocole est repens, et les codes sont rcrits. Imagine pour rpondre aux besoins d'Internet, NFSv4 intgre :
Une gestion totale de la scurit :

Reprise sur incidents


Compatibilit : Unix, Windows, Mac
8

Cration dun serveur NFS


Installez sur le serveur NFS le paquet nfs-kernel-server Le serveur NFS ne doit pas voir son IP changer, essayez si vous le pouvez de fixer son IP. # This file describes the network interfaces available on your system # and how to activate them. iface eth0 inet static address 192.168.0.xxx

netmask 255.255.255.0
gateway 192.168.0.254
10

Cration dun serveur NFS


Sur Serveur, il faut modifier le fichier /etc/exports et y saisir cette ligne:

# Dossier partag :
/Dossier//partager/ 192.168.0.0/255.255.0.0(rw,all_squash,anonuid=1000,anongid=1000,sync)

Vous pouvez empcher client par client quel PC peut crire ou non dans le NFS. ajouter autant de dossiers partager quon veut de cette manire, vous n'tes pas limit un seul.

Aprs avoir modifi le fichier /etc/exports il suffit de lancer dans un terminal: sudo service nfs-kernel-server reload

11

Client NFS
Pour accder un NFS, il faut le "monter".

Il n'existe pas d'auto-configuration pour NFS, il faudra donc le faire


manuellement. Ubuntu GNU/Linux Le paquet ncessaire pour accder un NFS est nfs-common Modifier /etc/fstab Il faut tout d'abord crer un dossier dans lequel le NFS viendra se loger. sudo mkdir /media/NFS

12

Client NFS
Pour ce faire, il suffit de modifier le fichier /etc/fstab pour y ajouter la ligne:

192.168.1.10:/Dossier//partager/ /media/NFS nfs


defaults,user,auto,noatime,intr 0 0

192.168.1.10 :l'IP de votre serveur /Dossier//partager/ :le dossier sur votre serveur que vous voulez recevoir (doit correspondre celui que le serveur veut envoyer)

/media/NFS :le dossier que vous avez cr dans lequel vous souhaitez mettre le NFS

defaults,user,auto,noatime,intr : des options de montage, vous pouvez ajouter, ro la fin pour ne pas autoriser l'criture.

0 0 demande Linux de ne pas vrifier si le disque contient des erreurs.


13

Exemple Pratique
Deux ordinateurs fonctionnant avec GNU/Linux

Serveur : sur lequel se trouvent les fichiers partager,


Client : qui doit pouvoir accder aux fichiers de Serveur. 1- Connatre les adresses IP locales de Serveur et de Client on considrera que Serveur et Client ont une adresse locale fixe : Serveur : 192.168.1.1

Client : 192.168.1.2

14

Installer NFS
2-Installer NFS Installer les paquets : Pour Serveur, nfs-kernel-server et nfs-common. Pour Client, nfs-common.

15

tape 1 - Serveur donne Client le droit de lire et crire sur ses fichiers
Sur Serveur crer le fichier /etc/exports et y saisir cette ligne : # Dossier partag : /Fichiers__partager_sur_Serveur/ 192.168.1.2(rw,all_squash,anonuid=1000,anongid=1000,sync) Ceci donne l'accs complet aux fichiers de Serveur, Client peut supprimer dfinitivement ce qu'il veut.

Pour ne donner l'accs qu'en lecture seule, il suffit de supprimer


l'option rw de /etc/exports.
16

tape 1 - Serveur donne Client le droit de lire et crire sur ses fichiers
Il faut ensuite dmarrer le serveur NFS (toujours sur Serveur) : sudo /etc/init.d/nfs-kernel-server start

Si vous modifiez le fichier /etc/exports n'oubliez


pas de relancer le serveur NFS par la commande suivante : sudo /etc/init.d/nfs-kernel-server restart
17

tape 2 - Client se prpare recevoir les fichiers de Serveurs


1. D'abord crer un rpertoire sur Client o vont s'installer les fichiers de Serveur : sudo mkdir /Point_de_montage_sur_Client Par exemple : sudo mkdir /home/Nom_d'Utilisateur_sur_le_Client/Partage
18

tape 2 - Client se prpare recevoir les fichiers de Serveurs


2. Ensuite dterminer ce rpertoire comme point de montage sur Client : Ajoutez cette ligne au fichier /etc/fstab de Client :

192.168.1.1:/Fichiers__partager_sur_Serveur
/Point_de_montage_sur_Client nfs user,noauto 0 0 noauto : interdit le montage automatique. user : autorise tous les utilisateurs procder au montage.

19

tape 3 - Serveur rgle la scurit du partage


1. D'abord interdire tout : Sur Serveur donc, crez le fichier /etc/hosts.deny, et copiez-y ces lignes : # Tout interdire sur portmap, nfsd et mountd portmap:ALL nfsd:ALL mountd:ALL
20

tape 3 - Serveur rgle la scurit du partage


2. Ensuite autoriser les changes voulus :

Toujours sur Serveur, crez le fichier /etc/hosts.allow, et enregistrez-y ces lignes :


#Autoriser ce client se connecter aux services (essentiellement : portmap, nfsd et mountd) :

portmap: 192.168.1.2 lockd: 192.168.1.2 nfsd: 192.168.1.2 mountd: 192.168.1.2 rquotad: 192.168.1.2 statd: 192.168.1.2
21

tape 3 - Serveur rgle la scurit du partage


Il est possible d'autoriser plusieurs clients

En dfinissant une plage, par exemple : 192.168.0.0/192.168.0.20


En listant les IP locales autorises (spares par des espaces), comme par exemple : 192.168.0.1 192.168.0.3 192.168.0.8 Ou encore en utilisant la syntaxe 192.168. qui autorise toutes les machines dont l'IP locale commence par 192.168. se connecter.

22

tape 4 - Client automatise l'accs aux fichiers de Serveurs


Pour que le montage de /Point_de_montage_sur_Client fonctionne, il faut que

Serveur soit allum et que Client et Serveur soient connects.


Sur Client donc, crez le fichier /usr/bin/Monter_le_partage_NFS Enregistrez ces lignes : #!/bin/bash sleep 15 mount /Point_de_montage_sur_Client rendre ce fichier excutable, en ligne de commande dans un terminal: $ sudo chmod 755 /usr/bin/Monter_le_partage_NFS

23

tape 4 - Client automatise l'accs aux fichiers de Serveurs


Vrifier si Client a bien accs aux fichiers de Serveur. faire sur Client: showmount -e 192.168.1.1 Cette commande doit retourner : Export list for 192.168.1.1: /home/Fichiers__partager_sur_Serveur 192.168.1.2

Sinon vrifier tout particulirement les fichiers /etc/exports et


/etc/hosts.allow de Serveur.
24

hosts.allow et hosts.deny
Ces deux fichiers spcifient si les ordinateurs du rseau peuvent utiliser les services sur votre machine. Chaque ligne du fichier contient une seule entre l'inscription d'un service et un ensemble de machines. Lorsque le serveur reoit une requte d'une machine, il effectue les oprations suivantes: Il vrifie d'abord hosts.allow
pour voir si la machine correspond une des rgle numres. Si c'est le cas, alors la machine est autoris accder.

Si la machine ne correspond pas une entre dans hosts.allow le serveur vrifie alors hosts.deny pour voir si le client y correspond.
Si c'est le cas, la machine est refus l'accs.

Si le client ne correspond aucun des fichiers, alors il est autoris.


25

26

Vous aimerez peut-être aussi