Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
nfs-ufw [Le 16/01/2011, 13:09] 0ol |
nfs-ufw [Le 01/09/2022, 00:08] (Version actuelle) moths-art Passage de http à https sur les liens externes (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892) |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag> Lucid réseau pare-feu ufw partage nfs tutoriel }} | + | {{tag> Trusty xenial réseau partage nfs sécurité tutoriel }} |
---- | ---- | ||
- | ====== partage NFS et Firewall (UFW ) ====== | + | ====== Fixer les ports pour un partage NFS ====== |
- | {{nfs-ufw.png}} | + | Vous pouvez avoir besoin de fixer les [[wpfr>Port_(logiciel)|ports]] utilisés par [[:NFS]] , lorsque votre [[:partage]] doit se faire à travers un [[:Firewall|pare-feu]] matériel ou logiciel ou un autre équipement filtrant. |
- | Tant qu' un [[:pare-feu]] n'est pas actif, les données sur PC1 sont visible par PC2 via le système [[:NFS]].\\ | + | {{/nfs-ufw.png}} |
- | Néanmoins, un [[:pare-feu]] tel que [[:UFW]] peut-être nécessaire sur PC1 bloquant dans ce cas 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]]. | + | |
- | <note> | + | |
- | les manips se font sur PC1 | + | <note tip>Pour sécuriser votre [[:partage]] [[:NFS]] à l'aide d'un [[:firewall|pare-feu]] vous pouvez suivre ce [[https://wiki.debian.org/SecuringNFS|tutoriel debian]] en utilisant [[:ufw]] plutôt que [[:Shorewall]]. |
</note> | </note> | ||
+ | |||
+ | |||
+ | ===== Partage NFS ===== | ||
+ | |||
+ | Le principe de partage fonctionne sur la notion de serveur/client.\\ | ||
+ | Le serveur est celui qui propose l'accès à ses données.\\ | ||
+ | Le client est celui qui y accède pour les lire ou les modifier. \\ | ||
+ | |||
+ | <note important>Toutes les manipulations indiquées dans cette page se font sur le serveur.</note> | ||
===== Fixer les ports ===== | ===== Fixer les ports ===== | ||
+ | |||
+ | Il s'agit de déterminer le port qui sera toujours utilisé pour le [[:partage]] [[:NFS]]. On appel cela <<fixer un port>>. | ||
+ | |||
==== pour mountd ==== | ==== pour mountd ==== | ||
+ | Pour déterminer le port, [[:tutoriel:comment_modifier_un_fichier|ouvrez le fichier]] **/etc/default/nfs-kernel-server**\\ | ||
+ | commentez (mettre un # devant) ''RPCMOUNTDOPTS=--manage-gids'' et mettez à la place: | ||
+ | <file> RPCMOUNTDOPTS="--port 42002" </file> | ||
- | [[:tutoriel:comment_modifier_un_fichier|Ouvrez le fichier]] **/etc/default/nfs-kernel-server ** | + | ==== Pour STATD ==== |
- | commentez RPCMOUNTDOPTS=--manage-gids et mettez à la place <code> RPCMOUNTDOPTS="--port 42002" </code> | + | [[:tutoriel:comment_modifier_un_fichier|Ouvrez le fichier]] ** /etc/default/nfs-common **\\ |
+ | <file> STATDOPTS="--port 42000" </file> | ||
+ | vous pouvez aussi fixer le port de sortie pour STATD en modifiant la ligne précédente par celle-ci: | ||
+ | <file> STATDOPTS="--port 42000 --outgoing-port 42001" </file> | ||
- | ==== pour lockd ==== | + | ==== Pour QUOTAD ==== |
- | [[:tutoriel:comment_modifier_un_fichier|Ouvrez le fichier]] **/etc/modprobe.d/options ** | + | La gestion des [[:quota|quotas]] n'est pas activée par défaut. Fixer ce port est donc optionnel. |
- | mettez options <code> lockd nlm_udpport=42010 nlm_tcpport=42010 </code> | + | [[:tutoriel:comment_modifier_un_fichier|Ouvrez le fichier]] ** /etc/default/quota **\\ |
+ | <file> RPCRQUOTADOPTS="-p 42769" </file> | ||
- | ===== rebootez votre machine ===== | + | ==== pour LOCKD ==== |
- | <note tip> | + | Pour éviter l'altération des données si plusieurs //clients// se connectent en même temps\\ [[:tutoriel:comment_modifier_un_fichier|Ouvrez le fichier]] **/etc/modprobe.d/options.conf** et y mettre cette ligne: |
- | [[:utilisateurs:fabux]] me souffle qu'il suffit de relancer le service nfs par sudo invoke-rc.d nfs-kernel-server restart | + | <file> options lockd nlm_udpport=42010 nlm_tcpport=42010 </file> |
- | et de décharger les modules avec modprobe -r | + | <note> Si le nom de fichier options.conf ne vous conviens pas, vous pouvez le nommer comme bon vous semble tant qu'il fini par **.conf**</note> |
- | </note> | + | ==== si LOCKSD prend toujours des ports aléatoires apres reboot ==== |
+ | Voir [[https://www.ens-lyon.fr/PSI/technique/doku.php?id=debian:security|ici]] | ||
- | ===== vérifiez ====== | + | [[:tutoriel:comment_modifier_un_fichier|Ouvrez le fichier]] **/etc/sysctl.conf** |
- | dans un [[:terminal]] | + | <file> |
+ | fs.nfs.nlm_tcpport=42010 | ||
+ | fs.nfs.nlm_udpport=42010 | ||
+ | </file> | ||
- | <code>:~$ rpcinfo -p | + | en fixant les mêmes ports pour UDP et TCP, **cela peut servir pour le parefeu UFW**. |
- | program no_version protocole no_port | + | |
+ | ===== Prise en compte des modifications ===== | ||
+ | Afin de prendre en compte les modifications par le système, il faudra redémarrer votre machine. | ||
+ | |||
+ | Sinon vous pouvez essayer les étapes suivantes : | ||
+ | * Relancer le serveur NFS : <code>sudo invoke-rc.d nfs-kernel-server restart</code> | ||
+ | * Relancer portmap : <code>sudo invoke-rc.d portmap restart</code> | ||
+ | * Relancer le service rpc : <code>sudo rmmod sunrpc | ||
+ | sudo modprobe sunrpc</code> | ||
+ | ===== Vérification ====== | ||
+ | |||
+ | Pour connaitre les ports de communication utilisés par le **PC1**, dans un [[:terminal]] saisissez: | ||
+ | <code>rpcinfo -p</code> | ||
+ | La commande devrait vous donner un résultat proche de celui-ci: | ||
+ | <code>program no_version protocole no_port | ||
100000 2 tcp 111 portmapper | 100000 2 tcp 111 portmapper | ||
100000 2 udp 111 portmapper | 100000 2 udp 111 portmapper | ||
Ligne 56: | Ligne 92: | ||
100005 3 udp 42002 mountd | 100005 3 udp 42002 mountd | ||
100005 3 tcp 42002 mountd</code> | 100005 3 tcp 42002 mountd</code> | ||
- | enfin les ports nlockmgr et mountd en tcp et udp ne sont plus aléatoires mais bien ce que nous souhaitions. | + | |
+ | On constate que les ports ne sont plus attribués aléatoirement mais bien comme nous les avons [[#fixer les ports|fixé]]. | ||
+ | Il sera alors possible de configurer votre [[:firewall]] en utilisant ces ports. | ||
- | ===== configurer Netfilter avec UFW ===== | + | =====Voir aussi===== |
- | nous pouvons désormais pour chaqu'un des ports | + | * https://www.ens-lyon.fr/PSI/technique/doku.php?id=debian:security |
- | **[42002 , 42010]** | + | * [[wpfr>Network_File_System|NFS]] |
- | + | ||
- | ==== autoriser les paquets ==== | + | |
- | <code> | + | |
- | sudo ufw allow in to any port 42002 from <IP_de_PC2> | + | |
- | sudo ufw allow in to any port 42010 from <IP_de_PC2> | + | |
- | </code> | + | |
- | + | ||
- | et si portmap et nfs ne sont pas déjà autorisé | + | |
- | <code> | + | |
- | sudo ufw allow in to any port 111 from <IP_de_PC2> | + | |
- | sudo ufw allow in to any port 2049 from <IP_de_PC2> | + | |
- | </code> | + | |
- | + | ||
- | ==== et l'activer ==== | + | |
- | <code>sudo ufw enable</code> | + | |
- | + | ||
- | //Contributeurs principaux : [[:utilisateurs:0ol]].// | + | |
+ | ---- | ||
+ | //Contributeurs :[[utilisateurs:ool]]// |