Ceci est une ancienne révision du document !
partage NFS et Firewall (UFW )
Le serveur est celui qui propose l'accès à ses données. Le client celui qui y accède pour les lire ou les modifier.
Dans le cas de l'utilisation d'un partage NFS, tant qu' un pare-feu n'est pas actif, les données fournies par le PC serveur sont visible par le PC client.
Néanmoins, un pare-feu tel que UFW peut-être nécessaire sur le PC serveur bloquant alors l'accès aux données depuis les autres machines du réseau.
Il est alors nécessaire de fixer les ports qui sont utilisés pour autoriser un partage NFS.
Fixer les ports
Il s'agit de déterminer le port qui sera toujours utilisé pour le partage NFS. On appel celà «fixer un port».
pour mountd
Pour déterminer le port, ouvrez le fichier /etc/default/nfs-kernel-server
commentez  (mettre un # devant) RPCMOUNTDOPTS=–manage-gids  et mettez à la place:
RPCMOUNTDOPTS="--port 42002"
pour lockd
Pour éviter l'altération des données si plusieurs clients se connectent en même temps, il faut ouvrir le fichier /etc/modprobe.d/options et y mettre cette ligne:
lockd nlm_udpport=42010 nlm_tcpport=42010
 Si le blocage des ports ne semble pas effectif, d'après ce thread il s'agirait de modifier le fichier /etc/sysclt.conf
 Si le blocage des ports ne semble pas effectif, d'après ce thread il s'agirait de modifier le fichier /etc/sysclt.conf
Prise en compte des modifications
Afin de prendre en compte les modifications par le système, il faudra redémarrer votre machine.
 A tester: relancer le service nfs par
 A tester: relancer le service nfs par sudo invoke-rc.d nfs-kernel-server restart et peut-être aussi sudo invoke-rc.d nfs-common restart. Il doit aussi falloir relancer un/des modules avec modprobe
Vérification
Pour connaitre les ports de communication utilisés par le pc serveur, dans un terminal saisissez:
rpcinfo -p
La commande devrait vous donner un résultat proche de celui-ci:
program no_version protocole  no_port
    100000    2   tcp    111  portmapper
    100000    2   udp    111  portmapper
    100021    1   udp  42010  nlockmgr
    100021    3   udp  42010  nlockmgr
    100021    4   udp  42010  nlockmgr
    100021    1   tcp  42010  nlockmgr
    100021    3   tcp  42010  nlockmgr
    100021    4   tcp  42010  nlockmgr
    100003    2   udp   2049  nfs
    100003    3   udp   2049  nfs
    100003    4   udp   2049  nfs
    100003    2   tcp   2049  nfs
    100003    3   tcp   2049  nfs
    100003    4   tcp   2049  nfs
    100005    1   udp  42002  mountd
    100005    1   tcp  42002  mountd
    100005    2   udp  42002  mountd
    100005    2   tcp  42002  mountd
    100005    3   udp  42002  mountd
    100005    3   tcp  42002  mountd
On constate que les ports attribués pour nlockmgr et mountd (en tcp et udp) ne sont plus aléatoires mais bien ceux que nous avons fixés.
Paramétrer UFW
Pour se faire dans un terminal du PC client, saisissez:
ifconfig | grep inet
Vous devriez voir par exemple une adresse du type 192.168.0.10.
Il ne faut pas tenir compte de l'adresse particulière 127.0.0.1.
Il ne reste plus qu'à paramétrer UFW sur le PC serveur pour configurer Netfilter 1), et ce pour chacun des ports préalablement fixés à savoir 42002 et 42010.
autoriser les ports
Dans un terminal saisissez:
sudo ufw allow in 42002 sudo ufw allow in 42010
et si portmap et nfs ne sont pas déjà autorisé
sudo ufw allow sunrpc sudo ufw allow nfs
