GNU/Linux >> Tutoriels Linux >  >> Debian

Comment configurer le client et le serveur NFS sous Linux

NFS a été développé par Sun Microsystems pour partager des fichiers et des répertoires entre leurs systèmes. NFS permet aux systèmes d'un réseau de partager des fichiers via le réseau TCP/IP. Il fonctionne à la manière client-serveur où le système ayant le répertoire partagé est connu comme un serveur tandis que le système accédant au répertoire partagé est connu comme un client. Le client peut monter le répertoire partagé par le serveur NFS sur son propre système qui apparaît comme une partition de disque local. Un client peut alors lire/écrire des fichiers sur le serveur NFS distant en fonction des autorisations attribuées par le serveur NFS. Certaines des fonctionnalités de NFS sont les suivantes :

  • L'utilisateur peut accéder localement aux fichiers distants
  • Il n'est pas nécessaire que les deux machines aient le même système d'exploitation
  • Il offre une solution de stockage centralisée
  • L'utilisateur peut stocker ses données dans un emplacement central, ce qui permet d'économiser de l'espace de stockage local.

Dans cet article, nous vous montrerons comment installer le serveur et le client NFS, exporter des partages et monter/démonter le partage NFS sur le client.

Remarque :

Pour la démonstration, nous utiliserons les deux machines avec les détails suivants :

Hôte NFS (Debian 10)

  • Nom d'hôte :nfs
  • IP :192.168.72.158

Client NFS (Debian 10)

  • Nom d'hôte :client
  • IP :192.168.72.159

Remarque :les étapes mentionnées ici ont été testées sur Debian 10 (système Buster).

Installation et configuration du serveur NFS

Dans la section suivante, nous allons d'abord installer le serveur NFS sur notre machine hôte. Ensuite, nous allons configurer deux répertoires de partage qui sont /var/nfs-public et /var/nfs-docs pour le partage sur les machines clientes. Commençons.

Étape 1 :Installez le serveur NFS sur la machine hôte

Pour qu'un système soit configuré en tant que serveur NFS, vous devez installer nfs-kernel-server paquet dessus. Sur la machine hôte NFS, commencez par mettre à jour l'index du référentiel local à l'aide de la commande ci-dessous dans Terminal :

Mise à jour $ sudo apt

Ensuite, installez nfs-kernel-server en utilisant la commande ci-dessous :

$ sudo apt install nfs-kernel-server

Maintenant, vous pouvez recevoir le o/n possibilité de poursuivre l'installation. Tapez y pour continuer, après quoi le système commencera l'installation de nfs-kernel-server .

Une fois que le nfs-kernel-server est installé, vous pouvez vérifier l'installation à l'aide de la commande ci-dessous dans Terminal :

$ dpkg -l | grep nfs-kernel-server

Étape 2 :Créer un répertoire partagé sur l'hôte

Maintenant, créez un répertoire sur l'hôte que vous souhaitez définir pour le partage avec les clients. Nous avons créé deux répertoires /var/nfsdocuments et /var/nfs-public avec différents paramètres de configuration.

$ sudo mkdir -p /var/nfs-docs
$ sudo mkdir -p /var/nfs-public

Pour le /var/nfs-public répertoire, nous modifierons sa propriété en nobody:nogroup en utilisant la commande ci-dessous :

$ sudo chown personne:nogroup /var/nfs-public

Pour vérifier si le propriétaire a changé, utilisez la commande ci-dessous :

$ ls -la /var/nfs-public

Pour le /var/nfs-docs , nous ne changerons pas le propriétaire.

Étape 3 :Exporter les partages

Nous allons maintenant configurer le fichier d'exportation du serveur NFS pour le partage des ressources. Le fichier d'exportation NFS est /etc/exports qui peut être modifié comme suit :

$ sudo nano /etc/exports

Maintenant, dans ce fichier, nous allons spécifier les répertoires que nous voulons partager et le client qui peut y accéder. Vous pouvez ajouter des entrées dans le fichier d'exportation NFS en utilisant la syntaxe ci-dessous :

répertoire host1(options) host2(options)...hostN(options)...

  • répertoire est le répertoire que vous souhaitez partager avec les clients.
  • hôte est l'adresse IP/l'adresse de sous-réseau du client/sous-réseau avec lequel vous souhaitez partager. Pour trouver l'adresse IP de votre ordinateur client, vous pouvez consulter notre guide Comment trouver votre adresse IP .
  • options sont quelques-unes des options de configuration qui spécifient comment les ressources doivent être partagées.

Pour nos deux répertoires /var/nfs-docs et /var/nfs-public , nous avons ajouté les entrées suivantes dans le fichier /etc/exports fichier :

/var/nfs-public 192.168.72.159(rw,sync,no_subtree_check)/var/nfs-docs 192.168.72.159(rw,sync, no_root_squash,no_subtree_check)


Dans le fichier de configuration ci-dessus, les deux entrées indiquent au serveur NFS de partager le /var/nfs-public et /var/nfs-docs répertoires avec le client NFS 192.168.72.159 avec rw (lecture et écriture) autorisation. Dans la deuxième entrée, nous avons ajouté le no_root_squash qui permet au client d'avoir également des autorisations root sur le serveur NFS. Une fois que vous avez terminé avec les configurations d'exportation, enregistrez et fermez le fichier /etc/exports fichier.

Maintenant, pour exporter les partages, vous devrez redémarrer le serveur NFS. Voici la commande pour le faire :

$ sudo systemctl restart nfs-kernel-server

Chaque fois que vous apportez une modification dans le fichier /etc/exports fichier, assurez-vous de redémarrer le service pour appliquer les modifications de configuration.

Vous pouvez également utiliser cette commande pour exporter les partages :

$ sudo exportfs -a

Pour vérifier si le serveur NFS fonctionne sans aucun problème, vérifiez son état à l'aide de la commande ci-dessous dans Terminal :

$ sudo systemctl status nfs-kernel-server

Étape 4 :Configurer le pare-feu sur le serveur NFS

Si un pare-feu est activé sur le serveur NFS, vous devrez le configurer pour permettre aux clients de se connecter au port NFS 2049 . Pour vérifier si le pare-feu est activé sur le serveur NFS, lancez la commande ci-dessous dans Terminal :

État $ sudo ufw

Dans la sortie suivante, vous pouvez voir le actif statut indiquant que le pare-feu est activé.

Maintenant, pour autoriser les clients à utiliser le port NFS 2049 , vous devrez ajouter une règle dans le pare-feu. Exécutez la commande ci-dessous dans Terminal pour ce faire :

$ sudo ufw allow from client_ip/subnet_ID to any port nfs

Par exemple, pour autoriser tout le sous-réseau 192.168.72.0/24 accès au port NF 2049 , la commande serait :

$ sudo ufw autorise de 192.168.72.0/24 à n'importe quel port nfs

Ensuite, pour vérifier si la règle a été ajoutée avec succès, vérifiez l'état du pare-feu :

État $ sudo ufw

L'entrée en surbrillance dans la sortie suivante montre la connexion de 192.168.72.0/24 est autorisé vers le port 2049 .

Nous avons maintenant terminé les configurations sur le serveur NFS. Passons à l'installation et à la configuration du client NFS.

Installation et configuration du client NFS

Dans la section suivante, nous allons d'abord installer le client NFS sur notre machine cliente. Ensuite, nous allons configurer deux points de montage qui sont /media/public et /media/docs pour monter les partages NFS distants /var/nfs-public et /var/nfs-docs . Commençons.

Étape 1 :Installer le package client NFS sur la machine cliente

Pour qu'un système soit configuré en tant que client NFS, vous devez installer nfs-common paquet dessus. Sur la machine cliente NFS, commencez par mettre à jour l'index du référentiel local à l'aide de la commande ci-dessous dans Terminal :

Mise à jour $ sudo apt

Ensuite, installez nfs-common en utilisant la commande ci-dessous :

$ sudo apt install nfs-common

Maintenant, vous pouvez recevoir le o/n possibilité de poursuivre l'installation. Tapez y pour continuer, après quoi le système commencera l'installation de nfs-common paquet.

Étape 2 :Créer des points de montage

Sur le système client, vous devrez créer un point de montage pour monter les partages situés sur le serveur NFS. Sur notre client, nous avons créé les deux répertoires à /media pour nos points de montage :

$ sudo mkdir -p /media/docs$ sudo mkdir -p /media/public

Étape 3 :Monter manuellement les partages NFS sur le client

Nous allons maintenant monter les partages NFS sur les points de montage que nous avons créés à l'étape précédente. Voici la syntaxe pour le faire :

$ sudo mount NFS_server_IP:NFS_share client_mountpoint

Où :

NFS_server_IP est l'adresse IP du serveur NFS

NFS_share est le partage situé sur le serveur NFS

client_mountpoint est le point de montage où vous souhaitez monter le partage.

Depuis notre serveur NFS, nous avons exporté deux répertoires partagés qui étaient :/var/nfs-docs et /var/nfs-public . Sur notre machine cliente, nous monterons un partage /var/nfs-docs à un point de montage /media/docs tandis que l'autre partage /var/nfs-public sur le deuxième point de montage /media/public .

Nous avons utilisé les commandes suivantes pour monter les partages NFS sur le client NFS.

$ sudo mount 192.168.72.158:/var/nfs-docs /media/docs$ sudo mount 192.168.72.158:/var/nfs-public /media/public

Maintenant, pour vérifier si les répertoires partagés NFS ont été montés avec succès, lancez la commande "df –h" dans Terminal :

$ df -h

Voici la sortie de la commande "df -h" qui affiche deux partages NFS en bas.

Comme nous avons monté les partages sur le /media répertoire, vous pouvez également accéder aux répertoires montés à partir du gestionnaire de fichiers.

Étape 4 :Monter automatiquement les partages NFS sur le client au démarrage

Chaque fois que vous redémarrez le système client, vous devrez monter le partage NFS manuellement à l'aide de la commande mount. C'est correct pour une utilisation ponctuelle ou occasionnelle. Cependant, si vous souhaitez que les partages NFS aient accès en permanence, vous devrez rendre le montage permanent à l'aide de /etc/fstab fichier.

Modifiez le fichier /etc/fstab fichier :

$ sudo nano /etc/fstab

Ajoutez maintenant des entrées pour votre partage NFS que vous souhaitez monter automatiquement :

192.168.72.158:/var/nfs-docs /media/docs nfs rw,sync,hard,intr 0 0192.168.72.158:/nfs-public /media/public nfs rw,sync,hard,intr 0 0 

Puis enregistrez et fermez le /etc/fstab fichier.

La prochaine fois que vous redémarrerez le système, le client montera automatiquement les partages NFS.

Tester l'accès NFS

Nous allons maintenant tester l'accès aux répertoires partagés NFS en créant un nouveau fichier dans chaque répertoire.

Sur la machine cliente, commencez par créer un test1 fichier en tant que sudo dans le point de montage local /media/public :

$ sudo touch /media/public/test1

Vérifiez maintenant la propriété du nouveau fichier :

$ ls -l /media/public/test1

Vous verrez que la propriété du fichier est personne utilisateur et aucun groupe grouper. Bien que nous ayons créé le fichier en tant que sudo sur la machine cliente, mais le serveur NFS l'a traduit en propriété de l'hôte nobody:nogroup . Cela signifie qu'un utilisateur root sur le client ne peut pas effectuer la tâche administrative sur le répertoire partagé du serveur.

Créez maintenant un test1 fichier en tant que sudo dans le deuxième point de montage local /media/docs :

$ sudo touch /media/docs/test1

Si nous vérifions la propriété de ce fichier, vous verrez qu'il appartient à l'utilisateur root et au groupe root. C'est parce que nous avons défini le no_root_squash option qui permet à l'utilisateur root sur la machine cliente d'agir en tant que root sur le répertoire du serveur et peut effectuer des tâches administratives.

Maintenant, sur la machine du serveur NFS, vérifiez si vous pouvez afficher les deux fichiers.

Démonter le partage NFS de la machine cliente

Si vous n'avez plus besoin du partage NFS, vous pouvez le démonter du système client. Pour démonter les partages NFS, tapez umount suivi du nom du répertoire où le partage NFS est monté.

$ umount /media/docs$ umount /media/public

Voici comment configurer le serveur et le client NFS dans le système Debian 10. Dans cet article, nous avons expliqué comment installer le serveur et le client NFS, configurer les répertoires partagés NFS et monter/démonter les partages NFS sur le système client. Vous voudrez peut-être consulter notre article sur la configuration du serveur et du client NFS sur Linux Mint 20.


Debian
  1. Comment configurer le serveur et le client NTP sur Debian 9 Stretch Linux

  2. Configuration d'un serveur et d'un client NFS sur Scientific Linux 6.3

  3. Comment configurer le serveur et le client NFS sur Rocky/Alma Linux 8

  4. Comment configurer le serveur et le client NFS sur Ubuntu 20.04

  5. Comment installer et configurer le serveur et le client Linux NTP

Comment installer et configurer le serveur DHCP sous Linux

Comment configurer le serveur et le client NTP sur Debian 10

Comment configurer le serveur et le client NFS sur Debian 10

Comment installer et configurer un serveur NFS sur un système Linux

Comment installer et configurer un serveur Linux Ubuntu NFS

Comment installer et configurer le serveur DNS sous Linux