Protocoles des partages : NFS
Tableau 12-7 Protocoles des partages : propriétés NFS
|
|
|
Mode de partage
|
off/ro/rw
|
Détermine si le partage est disponible uniquement pour la lecture, pour la lecture et l'écriture ou aucun des deux. Dans la CLI, "on" est un alias de "rw".
|
Désactiver la création de fichiers setuid/setgid
|
nosuid
|
Si cette option est sélectionnée, les clients ne pourront pas créer de fichiers avec les bits setuid (S_ISUID) et setgid (S_ISGID) définis, ni activer ces bits sur des fichiers existants via l'appel système chmod(2).
|
Prevent clients from mounting subdirectories
|
nosub
|
Si cette option est sélectionnée, les clients ne pourront pas monter directement les sous-répertoires. Ils seront obligés de commencer par monter la racine du partage. Remarque : cela s'applique uniquement aux protocoles NFSv2 and NFSv3 et non aux protocoles NFSv4.
|
Mappage d'utilisateur anonyme
|
anon
|
A moins que l'option "root" soit active pour un client spécifique, l'utilisateur root sur ce client est traité comme un utilisateur inconnu. Toutes ses tentatives d'accès aux fichiers du partage sont considérées comme venant d'un utilisateur possédant cet UID. Les bits d'accès et les ACL du fichier sont alors évalués normalement.
|
Character encoding
|
Voir ci-dessous
|
Cette propriété définit le jeu de caractères par défaut de tous les clients. Pour plus d'informations, reportez-vous à la section relative aux codages de jeux de caractères.
|
Security mode
|
Voir ci-dessous
|
Cette propriété définit le mode de sécurité de tous les clients.
|
|
Des exceptions à l'ensemble des modes de partage peuvent être définies pour les clients ou les collections de clients. En cas de tentative d'accès de la part d'un client, cet accès sera accepté ou non en fonction de la première exception de la liste qui correspond au client ou, si aucune exception de ce type n'existe, en fonction des modes de partage globaux définis ci-dessus. Ces collections de clients doivent être définies à l'aide d'un des trois types suivants :
Tableau 12-8 Types de collections de client
|
|
|
|
Hôte (FQDN) ou Netgroup
|
none
|
Client unique dont l'adresse IP est résolue en nom complet spécifié ou groupe réseau qui contient les noms complets vers lesquels est résolue l'adresse IP d'un client.
|
caji.sf.example.com
|
Domaine DNS
|
.
|
Tous les clients dont l'adresse IP est résolue en nom complet qui se termine par ce suffixe
|
sf.example.com
|
Réseau
|
@
|
Tous les clients dont l'adresse IP est comprise dans le sous-réseau IP spécifié, en notation CIDR.
|
192.168.20.0/22
|
|
Pour chaque client ou collection de clients, vous définissez ensuite deux paramètres : vous déterminez si le client possède un accès en lecture seule ou en lecture-écriture au partage, puis si l'utilisateur root sur le client doit être traité en tant qu'utilisateur root (si défini) ou inconnu.
Si les groupes réseau sont utilisés, ils seront résolus à partir du service NIS (s'il est activé) puis à partir du serviceLDAP (s'il est activé). Si le service LDAP est utilisé, les groupes de réseau doivent être présents à l'emplacement par défaut, ou=Netgroup,(Base DN) et utiliser le schéma standard. En général, le composant nom d'utilisateur d'une entrée de groupe réseau n'a aucune conséquence sur NFS, contrairement au composant nom d'hôte. Les noms d'hôte contenus dans les groupes réseau doivent être canoniques et, s'ils ont été choisis à l'aide de DNS, ils doivent être complets. Concrètement, le sous-système NFS tente de vérifier que l'adresse IP du client qui a fait la demande soit résolue en nom d'hôte canonique qui correspond soit au nom de domaine complet (FQDN), soit à un membre d'un des groupes réseau spécifiés. Cette correspondance doit être exacte, y compris concernant les composants de domaine. Dans le cas contraire, l'exception n'est pas valide et on passe à l'exception suivante. Pour plus d'informations sur la résolution du nom d'hôte, consultez la section DNS. Il peut être difficile de gérer les groupes réseau. Suivez plutôt les règles de sous-réseau IP ou les règles de domaines DNS quand c'est possible.
Depuis la version logicielle 2013.1.0, les utilisateurs de clients Unix peuvent appartenir à un maximum de 1 024 groupes sans aucune perte de performance. Les versions précédentes prenaient en charge jusqu'à 16 groupes par utilisateur de client Unix.
Protocoles des partages : CLI
Dans la CLI, tous les modes de partage NFS et les exceptions sont spécifiés à l'aide d'une chaîne d'options unique pour la propriété "sharenfs". Cette chaîne est une liste séparée par des virgules contenant les valeurs présentées dans les tableaux ci-dessus. Elle doit commencer par "ro", "rw" ou "off", de la même manière que pour les modes de partage globaux décrits dans la BUI. Par exemple,
set sharenfs=ro
définit le mode de partage de tous les clients sur lecture seule. Les utilisateurs root sur tous les clients accèdent aux fichiers du partage comme s'ils étaient l'utilisateur générique "nobody".
Il est possible d'ajouter l'une ou l'autre des deux options "nosuid", "anon" ou les deux en même temps. Rappelez-vous que, dans la CLI, il faut indiquer entre guillemets les valeurs de propriété qui contiennent le symbole égal "=". Par conséquent, pour définir le mappage de tous les utilisateurs inconnus sur l'UID 153762, vous devez spécifier :
set sharenfs="ro,anon=153762"
Il est possible de spécifier des exceptions supplémentaires en ajoutant du texte sous la forme "option=collection" où "option" peut être "ro", "rw" ou "root" et définit le type d'accès à octroyer à la collection de clients. La collection est spécifiée par le caractère de préfixe à partir de la table ci-dessus et par un nom d'hôte/domaine DNS ou un numéro de réseau CIDR. Par exemple, pour octroyer l'accès en lecture-écriture à tous les hôtes du domaine sf.example.com et l'accès root aux hôtes du réseau 192.168.44.0/24, vous devez utiliser :
set sharenfs="ro,anon=153762,rw=.sf.example.com,root=@192.168.44.0/24"
Les noms de groupe réseau peuvent être utilisés à tous les endroits où un nom d'hôte complet peut être utilisé. Par exemple, vous pouvez autoriser l'accès en lecture-écriture au groupe réseau "engineering" comme suit :
set sharenfs="ro,rw=engineering"
Les modes de sécurité sont spécifiés en ajoutant du texte sous la forme "option=mode" où l'option est "sec" et le mode peut être "sys", "krb5", "krb5:krb5i" ou "krb5:krb5i:krb5p".
set sharenfs="sec=krb5"
Modes de sécurité
Les modes de sécurité sont définis par partage et peuvent avoir des conséquences sur les performances. Le tableau suivant décrit les paramètres de sécurité Kerberos.
Tableau 12-9 Paramètres de sécurité Kerberos
|
|
krb5
|
Authentification d'utilisateur final via Kerberos V5
|
krb5i
|
krb5 plus préservation de l'intégrité (les paquets de données résistent aux dégradations)
|
krb5p
|
krb5 plus préservation de la confidentialité (les paquets de données résistent aux dégradations et sont chiffrés)
|
|
Les combinaisons de saveurs Kerberos peuvent être spécifiées dans le paramètre du mode de sécurité. La combinaison de modes de sécurité permet aux clients de monter n'importe quelle saveur Kerberos répertoriée.
Tableau 12-10 Paramètres des modes de sécurité
|
|
sys
|
Authentification système
|
krb5
|
Kerberos v5 uniquement : les clients doivent monter à l'aide de cette saveur.
|
krb5:krb5i
|
Kerberos v5, avec intégrité : les clients peuvent monter avec n'importe quelle saveur répertoriée.
|
krb5i
|
Kerberos v5 intégrité uniquement : les clients doivent monter à l'aide de cette saveur.
|
krb5:krb5i:krb5p
|
Kerberos v5, avec intégrité ou confidentialité : les clients peuvent monter avec n'importe quelle saveur répertoriée.
|
krb5p
|
Kerberos v5 confidentialité uniquement : les clients doivent monter à l'aide de cette saveur.
|
|
Pour plus d'informations sur NFS et Kerberos, voir :
Codages de jeu de caractères
Normalement, le codage de jeu de caractères utilisé pour le nom de fichier n'est pas spécifié. Les protocoles NFSv3 et NFSv2 ne spécifient pas le jeu de caractères. NFSv4 est censé utiliser UTF-8 mais ce n'est pas le cas de tous les clients et cette restriction n'est pas appliquée par le serveur. Si l'option UTF-8 uniquement est désactivée pour un partage, ces noms de fichiers sont écrits in extenso dans les systèmes de fichiers sans aucune connaissance de leurs codages. Cela signifie qu'ils peuvent être interprétés uniquement par les clients qui utilisent le même codage. En revanche, SMB nécessite que les noms de fichiers soient stockés en UTF-8 afin qu'ils puissent être interprétés côté serveur. Il est donc impossible de prendre en charge des codages client arbitraires tout en autorisant l'accès sur SMB.
Pour prendre en charge des configurations de ce type, le codage de jeu de caractère peut être défini au niveau de tout le partage ou par client. Les codages de jeu de caractères suivants sont pris en charge :
-
cp932
-
euc-cn
-
euc-jp
-
euc-jpms
-
euc-kr
-
euc-tw
-
iso8859-1
-
iso8859-2
-
iso8859-5
-
iso8859-6
-
iso8859-7
-
iso8859-8
-
iso8859-9
-
iso8859-13
-
iso8859-15
-
koi8-r
-
shift_jis
Le comportement par défaut est de ne pas spécifier le codage de jeu de caractères (intercommunication). La BUI permet de choisir le jeu de caractères via le mécanisme de liste d'exception standard. Dans la CLI, chaque jeu de caractère devient une option ayant ou plusieurs hôtes et où le symbole étoile "*" indique le paramétrage du partage. Par exemple :
set sharenfs="rw,euc-kr=*"
partage le système de fichiers avec le codage par défaut "euc-kr". Par exemple,
set sharenfs="rw,euc-kr=host1.domain.com,euc-jp=host2.domain.com"
utilise le codage par défaut pour tous les clients sauf "host1" et "host2" qui utilisent respectivement "euc-kr" et "euc-jp". Le format des listes hôtes est similaire à celui des autres options NFS de la CLI.
Notez que les clients NFS ne prennent pas correctement en charge les autres paramètres locaux. Consultez la documentation client NFS pour obtenir de plus amples détails.