Magic Quadrant™ pour la gestion des accès privilégiés 2025 : Netwrix reconnue pour la quatrième année consécutive. Téléchargez le rapport.

Plateforme
Centre de ressourcesBlog
Guide pour monter des partages Unix avec un client NFS Windows

Guide pour monter des partages Unix avec un client NFS Windows

Nov 18, 2022

Les organisations modernes utilisent généralement un mélange de systèmes d'exploitation, y compris Unix, Linux, Windows et macOS. Network File System (NFS) est un protocole ouvert client/serveur qui permet aux organisations de centraliser leur stockage de données sur un ou plusieurs serveurs et d'activer le partage de fichiers transparent entre leurs différents systèmes d'exploitation.

Ce blog explique comment monter des clients NFS Windows afin que les utilisateurs puissent accéder aux fichiers partagés sur le réseau comme s'ils étaient stockés localement. Il fournit également les meilleures pratiques pour optimiser à la fois la sécurité et la performance.

Configuration de NFS sur Windows : Guide étape par étape

Pour permettre à un utilisateur d'accéder à des fichiers NFS distants, suivez ces étapes pour configurer le montage NFS de Windows.

Étape 1 : Installez la fonctionnalité ‘Client for NFS’ sur votre machine Windows pour configurer le client NFS pour Windows.

Dans Windows 10 ou Windows 11, ouvrez le Panneau de configuration et allez dans Windows Features. Développez Services for NFS et cochez la case à côté de Client for NFS, comme indiqué ci-dessous.

Image

Pour Windows Server 2012 et versions ultérieures, exécutez l'assistant Rôles et fonctionnalités et sélectionnez Client for NFS, comme indiqué ci-dessous.

Image

Alternativement, vous pouvez utiliser une session Windows PowerShell élevée pour installer le client NFS Windows :

  • Pour Windows 10 ou Windows 11, la commande est :

Enable-WindowsOptionalFeature -Online -FeatureName ServicesForNFS-ClientOnly

  • Pour Windows Server, la commande est :

Install-WindowsFeature -Name NFS-Client

Étape 2 : Vérifiez le client et la connectivité.

Vérifiez que le service NFS Client est en cours d'exécution sur votre machine, comme indiqué ci-dessous.

Image

Bien sûr, vous devez avoir une connectivité au serveur NFS désigné. Pour un montage NFS Windows réussi, assurez-vous que le service Client NFS est en cours d'exécution et que le pare-feu autorise le trafic NFS. Le port par défaut est 2049.

Étape 3 : Effectuez le mappage d'identité.

Pour permettre aux utilisateurs Windows de s'authentifier sur un serveur Unix fournissant des exportations NFS, nous devons mapper les utilisateurs Windows aux identifiants d'utilisateur Unix (UID) et aux identifiants de groupe (GID) utilisés par les systèmes d'exploitation de type Unix. Cette correspondance permet au serveur Unix de déterminer quel utilisateur a fait la demande d'exportation NFS.

La cartographie des identités peut être réalisée en utilisant l'une des méthodes suivantes :

  • Active Directory (si intégré à l'environnement NFS)
  • Fichiers de mappage des utilisateurs locaux
  • Paramètres du Registre Windows

La première option est préférée pour des raisons de sécurité et de scalabilité.

Méthode A (Préférée) : Effectuer le mappage d'identité dans Active Directory (AD)

Si le serveur NFS Unix et le client NFS Windows sont joints au même domaine Active Directory, alors nous pouvons utiliser la cartographie des identités dans Active Directory. C'est la méthode préférée dans la mesure du possible.

Par défaut, un client NFS ne recherchera pas la correspondance d'identité dans Active Directory. Cependant, nous pouvons modifier cela en exécutant la commande suivante dans une session PowerShell élevée sur le client NFS :

Set-NfsMappingStore -EnableADLookup $True -ADDomainName “yourdomain.com”

Vous pouvez ajouter ces options LDAP pour spécifier vos contrôleurs de domaine :

Set-NfsMappingStore -LdapServers “dc1.yourdomain.com”,“dc2.yourdomain.com”

Redémarrez le service client NFS.

Ensuite, nous devons configurer notre mappage d'identité. Nous pouvons le faire dans Active Directory Users and Computers comme suit :

  1. Activez les fonctionnalités avancées dans le menu déroulant Affichage, comme indiqué ci-dessous.
Image
  • Cliquez avec le bouton droit sur l'objet que vous souhaitez voir et sélectionnez Properties.
  • Dans l'onglet Éditeur d'attributs, sélectionnez l'attribut uidNumber ou gidNumber et cliquez sur Modifier.
  • Entrez une valeur et cliquez sur OK pour enregistrer vos modifications.

Alternativement, vous pouvez utiliser la commande PowerShell suivante :

Set-ADUser -Identity <UserPrincipalName> -Add @{uidNumber=”<user_unix_uid>”;gidNumber=”<user_unix_gid>”}

Remplacez ce qui suit :

  • UserPrincipalName — L'utilisateur à modifier (par exemple, user@domain.com)
  • @{ … } — Un tableau de hachage contenant les nouveaux attributs à ajouter
  • uidNumber — L'identifiant utilisateur Unix (UID) pour l'utilisateur
  • gidNumber — L'ID de groupe Unix (GID) pour le groupe principal de l'utilisateur

Pour effectuer cette tâche automatiquement, créez un fichier CSV contenant les données des utilisateurs et parcourez-le.

Méthode B : Effectuez le mappage d'identité en utilisant des fichiers de configuration locaux

L'utilisation de fichiers de mappage d'utilisateurs locaux est une approche directe pour établir une correspondance entre les utilisateurs Windows et les UID/GID Unix sans dépendre de Active Directory. Cette méthode utilise deux fichiers de configuration principaux :

  • passwd — Associe les utilisateurs Windows aux UID Unix
  • groupe — Associe les groupes Windows aux GID Unix

Les deux fichiers se trouvent généralement dans le répertoire C:\Windows\system32\drivers\etc\. Ils suivent un format spécifique, chaque ligne représentant une correspondance d'utilisateur ou de groupe. Lorsqu'un utilisateur Windows tente d'accéder à une ressource NFS, le service NFS consulte ces fichiers pour rechercher le nom de compte Windows de l'utilisateur et récupérer les UID et GID correspondants, qui sont ensuite utilisés pour les opérations NFS.

Cette méthode est simple à mettre en place et à gérer dans les petits environnements et est particulièrement utile pour les serveurs autonomes ou les groupes de travail. Cependant, parce qu'elle nécessite une maintenance manuelle des fichiers de mappage, elle ne passe pas bien à l'échelle pour les grands environnements. De plus, bien qu'elle offre une solution pour les environnements où l'intégration à Active Directory n'est pas réalisable, il est important de considérer les implications de sécurité et d'auditer régulièrement les mappages pour s'assurer qu'ils restent précis et sécurisés.

Méthode C : Effectuez le mappage d'identité en utilisant les paramètres du Registre Windows

Cette méthode implique la définition de valeurs de registre pour spécifier un UID et un GID par défaut que le client NFS Windows utilisera lors de l'accès aux partages NFS. C’est particulièrement utile lorsque vous souhaitez que tout accès NFS depuis le client Windows apparaisse comme un utilisateur Unix spécifique, indépendamment du compte utilisateur Windows.

Pour implémenter cette cartographie, utilisez les commandes PowerShell suivantes :

New-ItemProperty “HKLM:\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default” -Name AnonymousUID -Value <unix_export_owner_uid> -PropertyType “DWord”

New-ItemProperty “HKLM:\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default” -Name AnonymousGID -Value <unix_export_owner_gid> -PropertyType “DWord”

Vous devez redémarrer pour que les nouveaux paramètres prennent effet. Cette cartographie s'appliquera à tous les montages NFS effectués par le client Windows. Après avoir effectué la cartographie des identités, vous pouvez monter NFS dans Windows à l'aide de l'invite de commande.

Notez que cette méthode applique le même UID/GID à tous les accès NFS depuis le client Windows, ce qui peut ne pas fournir un contrôle d'accès suffisant dans des environnements multi-utilisateurs. De plus, la modification du registre nécessite des privilèges administratifs, ce qui pourrait être une préoccupation de sécurité. Pour ces raisons et d'autres, cette méthode est considérée comme une approche non sécurisée et n'est pas recommandée.

Étape 4 : Monter le partage NFS Windows

Monter en NFS signifie attacher un système de fichiers distant (exporté par un serveur NFS) à un répertoire sur le système de fichiers local d'une machine cliente. Lorsqu'un client monte un partage NFS, il se connecte au système de fichiers distant et le fait apparaître comme si le partage NFS faisait partie de la structure de répertoires locale.

Pour monter NFS sur Windows, associez-le à une lettre de lecteur disponible en utilisant l'invite de commande, comme suit :

montez \\<nfs_server_ip_address>\<pathtonfsexport> Z:

Remplacez ce qui suit :

  • <nfs_server_ip_address> — L'adresse IP de votre serveur NFS
  • <pathtonfsexport> — Le chemin d'exportation sur le serveur
  • Z — La lettre de lecteur à laquelle le partage NFS sera monté sur votre ordinateur Windows.

Vous pouvez ajouter des options supplémentaires ; par exemple, mount -o anon indique que la connexion doit être établie de manière anonyme, et mount -o nolock remplace le verrouillage de fichier par défaut utilisé par NFS.

Après avoir exécuté la commande mount ou mount o, vérifiez si le partage NFS a été monté avec succès en exécutant la commande net use pour afficher tous les lecteurs réseau mappés.

Conseils de dépannage

Voici certaines erreurs qui peuvent survenir pendant le processus de montage et leurs causes sous-jacentes typiques :

  • Permission refusée — Paramètres d'exportation incorrects sur le serveur NFS ou règle NFS bloquante
  • Accès refusé par le serveur — UID/GID non concordants entre le client et le serveur
  • Incompatibilité de version — Le client et le serveur utilisent des versions NFS incompatibles
  • Point de montage déjà utilisé — Tentative de montage sur un répertoire qui est déjà utilisé comme point de montage
  • Aucun fichier ou répertoire de ce type — Le chemin d'exportation sur le serveur n'existe pas

Meilleures pratiques pour le montage NFS sur Windows

Les meilleures pratiques suivantes peuvent vous aider à optimiser la sécurité et les performances lors de l'utilisation du montage NFS sur Windows.

Sécurité

  • Utilisez des protocoles d'authentification forts tels que Kerberos.
  • Configurez les pare-feu pour segmenter le réseau et restreindre l'accès NFS depuis les réseaux non fiables, en autorisant uniquement les ports nécessaires (port TCP et UDP 2049).
  • Chiffrez les données en transit en utilisant des protocoles sécurisés pour protéger les données contre l'écoute clandestine et la falsification.
  • Limitez les permissions d'exportation NFS en accordant l'accès minimal requis et en restreignant les connexions clients à des adresses IP ou noms d'hôte spécifiques.
  • Mettez régulièrement à jour et appliquez des correctifs à la fois sur le client Windows et le serveur NFS pour vous protéger contre les vulnérabilités connues.
  • Activez la journalisation détaillée sur le serveur NFS et surveillez les activités suspectes.
  • Utilisez des mesures de sécurité réseau supplémentaires telles que les VPN pour l'accès à distance.

Performance

  • Si possible, utilisez NFSv4 ou NFSv4.1 plutôt que NFSv3.
  • Activez la mise en cache en lecture et en écriture côté client pour améliorer les performances des données fréquemment accédées. Vous pouvez le faire en utilisant la commande suivante : mount –o readcache,writecache.
  • Si la sécurité n'est pas une préoccupation dans votre environnement, envisagez d'utiliser l'option nolock pour désactiver le verrouillage des fichiers.
  • Maintenez le logiciel client NFS Windows à jour pour bénéficier des dernières améliorations de performance et corrections de bugs.

Surveillez les modifications des partages Unix avec Netwrix

Netwrix Change Tracker assure la sécurité en surveillant les modifications de fichiers et en maintenant une piste d'audit

FAQ

Windows 11 prend-il en charge les clients NFS ?

Oui, Windows 11 prend en charge les clients NFS.

Comment puis-je utiliser NFS dans Windows ?

Voici quelques manières d'utiliser NFS dans Windows :

  • Vous pouvez fournir l'accès au même partage de fichiers en utilisant à la fois les protocoles SMB et NFS en utilisant un serveur de fichiers NFS Windows.
  • Vous pouvez déployer un système d'exploitation non-Windows pour fournir des partages de fichiers NFS accessibles aux clients non-Windows en utilisant le protocole NFS.
  • Pour permettre la migration des applications d'un système d'exploitation à un autre, vous pouvez stocker des données sur des partages de fichiers accessibles en utilisant à la fois les protocoles SMB et NFS.

Quelles améliorations sont incluses dans la version 4.1 de NFS ?

Pour plus de détails, visitez la Microsoft NFS page. Les principales améliorations de la version 4.1 comprennent :

  • Infrastructure de transport Remote Procedure Call (RPC)/External Data Representation (XDR), qui offre un meilleur soutien et assure une meilleure évolutivité
  • Multiplexeur de port RPC
  • Caches et pools de threads auto-ajustés
  • Nouvelle implémentation de la confidentialité Kerberos et options d'authentification

Comment puis-je ajouter le service de rôle pour le serveur NFS ?

Dans le Gestionnaire de serveur ou Windows Admin Center, utilisez l'assistant Ajout de rôles et fonctionnalités.

Quels outils d'administration en ligne de commande Windows le Server for NFS contient-il ?

  • Mount fournit un montage NFS sur les clients Windows qui se mappe à un lecteur local.
  • Nfsadmin gère les paramètres de configuration du serveur pour les composants NFS et du client pour NFS.
  • Nfsshare configure les paramètres de partage NFS pour les dossiers partagés via Server for NFS.
  • Nfsstat affiche ou réinitialise les statistiques sur les appels reçus par Server for NFS.
  • Showmount liste les systèmes de fichiers qui ont été exportés par Server for NFS.

Partager sur

En savoir plus

À propos de l'auteur

Asset Not Found

Joe Dibley

Chercheur en sécurité

Chercheur en sécurité chez Netwrix et membre de l'équipe de recherche en sécurité de Netwrix. Joe est un expert en Active Directory, Windows et une grande variété de plateformes logicielles d'entreprise et de technologies, Joe étudie les nouveaux risques de sécurité, les techniques d'attaque complexes, ainsi que les atténuations et détections associées.