Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
utilisateurs:qedinux:samba_ad_dc_nfs4_kerberized [Le 11/10/2015, 23:06]
Qedinux
utilisateurs:qedinux:samba_ad_dc_nfs4_kerberized [Le 11/09/2022, 13:15] (Version actuelle)
moths-art Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892)
Ligne 1: Ligne 1:
-{{tag>brouillon samba administration windows réseau}}+~~REDIRECT>tutoriel/​samba_ad_dc_nfs4_kerberized~~
 ====== Samba AD DC - Partage NFSv4 avec authentification Kerberos ====== ====== Samba AD DC - Partage NFSv4 avec authentification Kerberos ======
  
Ligne 62: Ligne 62:
 </​file>​ </​file>​
  
-La première ligne avec l'​option **//​fsid=0//​** (ou fsid=root) ​défint ​la racine virtuelle du système de fichier partagé. Ainsi, ​tout les fichiers et répertoires sous ///export// sont accessibles par le partage NFS.+La première ligne avec l'​option **//​fsid=0//​** (ou fsid=root) ​définit ​la racine virtuelle du système de fichiers partagés. Ainsi, ​tous les fichiers et répertoires sous ///export// sont accessibles par le partage NFS.
  
 L'​option **//​sec=krb5//​** définit le niveau de sécurité exigé. Il en existe 3: L'​option **//​sec=krb5//​** définit le niveau de sécurité exigé. Il en existe 3:
Ligne 82: Ligne 82:
 </​file>​ </​file>​
  
-Le service n'​arrive pas à démarrer parce qu'il ne trouve pas son SPN (Service Principal Name) dans le fichier keytab par défaut (/​etc/​krb5.keytab) qui, par défaut, serait //​nfs/​ubnfs01.example.com@EXAMPLE.COM//​. Plus clairement, le service ne trouve pas sa clé de chiffrement. Pour modifier le fichier //keytab//, il faut utiliser l'​outil //net// avec les commandes //ads keytab//. Il faut également avoir les droits super-utilisateurs. Pour rappel, vu l'​importance de ce fichier, les permissions sur celui-ci sont très restrictives //root:root 600//. Seul l'​utilisateur //root// peut y accéder en lecture et écriture. Il faut également interagir avec le serveur Kerberos présent sur le DC. Pour cela, la meilleure façon de procéder consiste à s'​authentifier avec un compte administrateur du domaine à chaque commande avec l'​option //-U Administrator//​. +Le service n'​arrive pas à démarrer parce qu'il ne trouve pas son SPN (Service Principal Name) dans le fichier keytab par défaut (/​etc/​krb5.keytab) qui, par défaut, serait //​nfs/​ubnfs01.example.com@EXAMPLE.COM//​. Plus clairement, le service ne trouve pas son identité afin de s'​authentifier. Pour modifier le fichier //keytab//, il faut utiliser l'​outil //net// avec les commandes //ads keytab//. Il faut également avoir les droits super-utilisateurs. Pour rappel, vu l'​importance de ce fichier, les permissions sur celui-ci sont très restrictives //root:root 600//. Seul l'​utilisateur //root// peut y accéder en lecture et écriture. Il faut également interagir avec le serveur Kerberos présent sur le DC. Pour cela, la meilleure façon de procéder consiste à s'​authentifier avec un compte administrateur du domaine à chaque commande avec l'​option //-U Administrator//​. 
-<​code>​sudo net ads keytab flush -U Administrator +<​code>​sudo net ads keytab add nfs -U Administrator
-Enter Administrator'​s password: +
- +
-sudo net ads keytab create -U Administrator +
-Enter Administrator'​s password: +
- +
-sudo net ads keytab add nfs -U Administrator+
 Enter Administrator'​s password: Enter Administrator'​s password:
  
Ligne 102: Ligne 96:
 </​code>​ </​code>​
  
-La commande //flush// vide le fichier //keytab// et supprime l'ensemble des SPN associés ​à la machine.+La commande //add <​service>​// ajoute deux SPN au fichier //keytab// (un pour le //hostname// et un pour le //fqdn//). Parallèlement,​ deux attributs ​'servicePrincipalName'​ sont ajoutés ​à l'​object Active Directory représentant l'​ordinateur (ubnfs01) ​ (<​service>/<​hostname>​ et <​service>/<​fqdn>​)..
  
-La commande //create// crée le fichier //​keytab// ​par défaut avec l'iUPN et l'​eUPN,​ si l'​attribut //​userPrincipalName//​ a été définit, et les SPN host/<​Hostname>​@<​Realm>​ et host/<​FQDN>​@<​Realm>​.+La commande //list// liste les UPN et SPN présents dans le fichier //keytab//.
  
-La commande //add <​service>​// ajoute deux SPN au fichier //keytab// (un pour le //hostname// et un pour le //fqdn//). Parallèlement,​ deux attributs ​'servicePrincipalName'​ sont ajoutés ​à l'​object Active Directory représentant l'​ordinateur (ubnfs01) ​ (<​service>/<​hostname>​ et <​service>/<​fqdn>​)..+La commande //flush// vide le fichier //keytab// et supprime l'ensemble des SPN associés ​à la machine.
  
-La commande //list// liste les UPN et SPN présents dans le fichier //keytab//.+La commande //create// crée le fichier //​keytab// ​par défaut avec l'iUPN et l'​eUPN,​ si l'​attribut //​userPrincipalName//​ a été définit, et les SPN host/<​hostname>​@<​REALM>​ et host/<​fqdn>​@<​REALM>​.
  
 ==== Conseils ==== ==== Conseils ====
-Le service //​nfs-kernel-server//​ lorsqu'​il démarre va lire le fichier de configuration ///​etc/​default/​nfs-kernel-server//​. Par défaut, il ne faut rien y changer. Cependant, si l'on veut augmenter la quantité d'​informations envoyées dans le fichier log. On peut ajouter l'​option très bavard au démon //​rpc.svcgssd//​ (responsable de l'​authentification de la machine vis-à-vis du serveur Kerberos)+Le service //​nfs-kernel-server//​ lorsqu'​il démarre va lire le fichier de configuration ///​etc/​default/​nfs-kernel-server//​. Par défaut, il ne faut rien y changer. Cependant, si l'on veut augmenter la quantité d'​informations envoyées dans le fichier log. On peut ajouter l'​option ​"très bavard" ​au démon //​rpc.svcgssd//​ (responsable de l'​authentification de la machine vis-à-vis du serveur Kerberos)
 <file - /​etc/​default/​nfs-kernel-server>​ <file - /​etc/​default/​nfs-kernel-server>​
 RPCSVCGSSDOPTS="​-vvv"​ RPCSVCGSSDOPTS="​-vvv"​
Ligne 136: Ligne 130:
 NEED_GSSD="​yes"​ NEED_GSSD="​yes"​
 </​file>​ </​file>​
-A la lecture du script Upstart du démon //​rpc.gssd//,​ on constate que ce démon va charger plusieurs modules dont //​rpcsec_gss_krb5//​ et que si le fichier ///​etc/​fstab//​ contient une ligne avec une option du type //​sec=krb5//,​ le démon sera automatiquement démarré. ​+A la lecture du script Upstart du démon //​rpc.gssd//,​ on constate que ce démon va charger plusieurs modules dont //​rpcsec_gss_krb5//​ et que si le fichier ///​etc/​fstab//​ contient une ligne avec une option du type //​sec=krb5//,​ le démon sera automatiquement démarré.
  
-Afin de faciliter le dépannage en cas de problème avec ce démon, il est possible d'​activer son mode très, très bavard avec l'​option "​-vvv"​.+Afin de faciliter le dépannage en cas de problème avec ce démon, il est possible d'​activer son mode "très, très bavard" ​avec l'​option "​-vvv"​.
 <​code>​sudo stop gssd <​code>​sudo stop gssd
 sudo rpc.gssd -vvv</​code>​ sudo rpc.gssd -vvv</​code>​
Ligne 166: Ligne 160:
 </​code>​ </​code>​
 === Absence d'​identité === === Absence d'​identité ===
-Le démon //​rpc.gssd//​ va chercher une identité dans le fichier ///​etc/​krb5.keytab//​ pour s'​authentifier vis-à-vis du serveur Kerberos. Il essaie premièrement l'UPN de l'​ordinateur <​FQDN$>​@<​REALM>​ et ensuite les SPN root/<​fqdn>​@<​REALM>,​ nfs/<​fqdn>​@<​REALM>​ et host/<​fqdn>​@<​REALM>​. ​+Le démon //​rpc.gssd//​ va chercher une identité dans le fichier ///​etc/​krb5.keytab//​ pour s'​authentifier vis-à-vis du serveur Kerberos. Il essaie premièrement l'UPN de l'​ordinateur <​FQDN$>​@<​REALM>​ et ensuite les SPN root/<​fqdn>​@<​REALM>,​ nfs/<​fqdn>​@<​REALM>​ et host/<​fqdn>​@<​REALM>​.
 <file - /​var/​log/​syslog>​ <file - /​var/​log/​syslog>​
 Oct  7 20:17:08 ubnws01 rpc.gssd[6173]:​ No key table entry found for UBNWS01.EXAMPLE.COM$@EXAMPLE.COM while getting keytab entry for '​UBNWS01.EXAMPLE.COM$@EXAMPLE.COM'​ Oct  7 20:17:08 ubnws01 rpc.gssd[6173]:​ No key table entry found for UBNWS01.EXAMPLE.COM$@EXAMPLE.COM while getting keytab entry for '​UBNWS01.EXAMPLE.COM$@EXAMPLE.COM'​
Ligne 181: Ligne 175:
 Oct  7 22:16:44 ubnws01 rpc.gssd[6173]:​ ERROR: No credentials found for connection to server ubnfs01.example.com Oct  7 22:16:44 ubnws01 rpc.gssd[6173]:​ ERROR: No credentials found for connection to server ubnfs01.example.com
 </​file>​ </​file>​
-Le démon //​rpc.gssd//​ est multi-usage. Dans le cas de NFSv4 avec Kerberos, il a besoin de l'UPN de l'​ordinateur (cfr [[utilisateurs:​qedinux:​samba_ad_dc_nfs4_kerberized#​quelques_notions_a_propos_de_kerberos|Notions Kerberos]]). Le fichier ///​etc/​krb5.keytab//​ possède déjà l' iUPN (<​HOSTNAME$>​@<​REALM>​) mais le démon //​rpc.gssd//​ recherche l'UPN <​FQDN$>​@<​REALM>​. Il faut donc ajouter l' eUPN équivalent à l'​objet Active Directory. Ceci consiste à ajouter l'​attribut '​userPrincipalName'​ avec la valeur <​FQDN$>​@<​REALM> ​à l'​objet '​Ordinateur'​ de Active Directory pour les ordinateurs client NFS. Il y a une multitude de façon de procéder :+Le démon //​rpc.gssd//​ est multi-usage. Dans le cas de NFSv4 avec Kerberos, il a besoin de l'UPN de l'​ordinateur (cfr [[utilisateurs:​qedinux:​samba_ad_dc_nfs4_kerberized#​quelques_notions_a_propos_de_kerberos|Notions Kerberos]]). Le fichier ///​etc/​krb5.keytab//​ possède déjà l' iUPN (<​HOSTNAME$>​@<​REALM>​) mais le démon //​rpc.gssd//​ recherche l'UPN <​FQDN$>​@<​REALM>​. Il faut donc ajouter l' eUPN équivalent à l'​objet ​représentant la machine cliente dans l'Active Directory. Ceci consiste à ajouter l'​attribut '​userPrincipalName'​ avec la valeur <​FQDN$>​@<​REALM>​. Il y a une multitude de façon de procéder :
   * Utiliser une machine Windows dans le domaine avec les outils d'​administrations pour Active Directory.   * Utiliser une machine Windows dans le domaine avec les outils d'​administrations pour Active Directory.
   * Utiliser un logiciel avec une interface graphique proche de ce que Windows propose, par exemple Apache Directory Studio, qui n'est pas inclus dans la distribution Ubuntu.   * Utiliser un logiciel avec une interface graphique proche de ce que Windows propose, par exemple Apache Directory Studio, qui n'est pas inclus dans la distribution Ubuntu.
-  * Utiliser les outils LDAP.+  * Utiliser les outils LDAP 
 +    <​code>​ldapmodify -H ldap://​ubndc01.example.com -U Administrator << EOF 
 +dn: cn=ubnws01,​cn=computers,​dc=example,​dc=com 
 +changetype: modify 
 +add: userPrincipalName 
 +userPrincipalName:​ UBNWS01.EXAMPLE.COM\$@EXAMPLE.COM 
 +EOF</​code>​ 
 +Cette méthode ne modifie pas les identités existantes de la machine. On peut alors ajouter la nouvelle identité (eUPN) au fichier keytab avec la commande 
 +<​code>​sudo net ads keytab add UBNWS01.EXAMPLE.COM\$ -U Administrator</​code>​
   * Utiliser la commande //net ads join// qui sert à joindre la machine au domaine.   * Utiliser la commande //net ads join// qui sert à joindre la machine au domaine.
 <​code>​sudo net ads join --createupn=UBNWS01.EXAMPLE.COM\$@EXAMPLE.COM -U Administrator</​code>​ <​code>​sudo net ads join --createupn=UBNWS01.EXAMPLE.COM\$@EXAMPLE.COM -U Administrator</​code>​
-<​note ​tip>Afin d'​éviter des erreurs de frappe, on peut utiliser +<​note ​important>Ceci va créer de nouvelles versions des identités liées à la machines (iUPN, eUPN et 2 SPN host/...). Ses nouvelles identités sont ajoutées au fichier ///​etc/​krb5.keytab//​ mais les anciennes ne sont pas automatiquement supprimées. On peut faire le ménage avec les commandes ​mais ceci risque d’interrompre les processus qui utilisaient les anciennes identités.
-<​code>​upn="​`hostname -f`\$@`hostname -d`" +
-sudo net ads join --createupn=${upn^^} -U Administrator</​code></​note>​ +
-Ceci va créer de nouvelles versions des identités liées à la machines (iUPN, eUPN et 2 SPN host/...). Ses nouvelles identités sont ajoutées au fichier ///​etc/​krb5.keytab//​ mais les anciennes ne sont pas automatiquement supprimées. On peut sans craintes ​faire le ménage avec les commandes+
 <​code>​sudo net ads keytab flush -U Administrator <​code>​sudo net ads keytab flush -U Administrator
-sudo net ads keytab create -U Administrator</​code>​+sudo net ads keytab create -U Administrator</​code></​note>
 === Eureka === === Eureka ===
 Après avoir résolu ces quelques problèmes, il est possible de monter le partage NFS et d'y accèder. Après avoir résolu ces quelques problèmes, il est possible de monter le partage NFS et d'y accèder.
 ==== Automatisation ==== ==== Automatisation ====
-Deux approches sont possibles pour l'​automatisation du montage des partages NFS. +Deux approches sont possibles pour l'​automatisation du montage des partages NFS.
   * Ajouter une ligne dans le fichier ///​etc/​fstab//​   * Ajouter une ligne dans le fichier ///​etc/​fstab//​
   * Utiliser //​[[:​autofs]]//​   * Utiliser //​[[:​autofs]]//​
Ligne 215: Ligne 214:
 *        -fstype=nfs4,​sec=krb5 ubnfs01.example.com:/​home/​example/&​ *        -fstype=nfs4,​sec=krb5 ubnfs01.example.com:/​home/​example/&​
 </​file>​ </​file>​
-=== Mise en oeuvre sur base de autofs définit dans Active Directory === 
-Le service //autofs// peut aller chercher ses définitions dans un annuaire LDAP, par exemple Active Directory. Ceci nécessite de modifier le schéma de Active Directory pour y ajouter les objets spécifiques à //​automount//​. 
-<​note>​Cette partie devrait se trouver sur la page [[:​autofs]]. En son absence et temporairement,​ en voici les explications et lignes de configurations</​note>​ 
-== Modification du schéma == 
-<note important>​La modification du schéma d'un annuaire LDAP est une opération à risque. Dans le sens que si la modification entraîne la corruption des objets de l'​annuaire,​ ceux-ci seront inutilisables. Il est donc préférable d'​avoir un backup et une procédure de restauration du backup de l'​annuaire LDAP (Active Directory dans ce cas).</​note>​ 
-Selon la documentation [[https://​wiki.samba.org/​index.php/​Samba_AD_schema_extensions|Samba AD schema exensions - Automounter]],​ le projet //samba// propose un fichier //ldif// de modification du schéma pour Active Directory. Ce fichier va ajouter au schéma 3 attributs (//​automountMapName//,​ //​automountKey//​ et //​automountInformation//​) et 2 classes utilisant ces attributs (//​automountMap//​ et //​automount//​). 
- 
-Se connecter au contrôleur de domaine ayant le rôle //Schema Master// 
-<​code>​ssh ubndc01.example.com</​code>​ 
- 
-Télécharger le fichier de modification du schéma fournit par le projet //Samba//. 
-<​code>​wget https://​wiki.samba.org/​images/​9/​91/​Automount_template.ldif.txt -O automount.ldif</​code>​ 
- 
-Remplacer "​DOMAIN_TOP_DN"​ par le //​Distinguished Name// de la forêt (DC=example,​DC=com) 
-<​code>​rootDN=`sudo ldbsearch -H /​var/​lib/​samba/​private/​sam.ldb -s base dn | sed -n '/​^dn:/​ { s/^dn: //p; q; }'` 
-sed -i "​s/​DOMAIN_TOP_DN/​$rootDN/​g"​ automount.ldif</​code>​ 
- 
-<note important>​Le projet //​Samba.org//​ recommande d'​arrêter le service //​samba-ad-dc//​ avant de procéder à la modification du schéma. Ceci peut avoir de gros impact sur l'​accès aux ressources s'il n'y a qu'un seul contrôleur de domaine. Dans un tel cas, il peut être préférable d'​essayer sans arrêter le service.</​note>​ 
-Appliquer la modification du schéma 
-<​code>​sudo ldbmodify -H /​var/​lib/​samba/​private/​sam.ldb automount.ldif --option="​dsdb:​schema update allowed"​=true</​code>​ 
- 
-<​note>​Si la commande //​ldbmodify//​ donne l'​erreure suivante: 
-<​code>​Unable to find attribute automountMapName in the schema 
-ERR: (Invalid attribute syntax) "​objectclass_attrs:​ attribute '​mustContain'​ on entry '​CN=automountMap,​CN=Schema,​CN=Configuration,​DC=example,​DC=com'​ contains at least one invalid value!"​ on DN CN=automountMap,​CN=Schema,​CN=Configuration,​DC=example,​DC=com at block before line 53 
-Modify failed after processing 3 records</​code>​ 
-La solution consiste à diviser le fichier de modification du schéma en 2 sous-fichiers,​ le premier contenant uniquement la création des attributs, le second, la création des classes. Cependant, pour l'​automatisation,​ le code qui suit divise en 5 sous-fichiers numérotés de 00 à 04 correspondant aux 3 attributs et 2 classes. Ensuite la modification du schéma est faite fichier par fichier dans le bon ordre, d'​abord les attributs et puis les classes. 
-<​code>​csplit -s -f automount_ -b %02d.ldif automount.ldif '/​^$/'​ '​{*}'​ 
-for file in `ls automount_*.ldif`;​ do sudo ldbmodify -H /​var/​lib/​samba/​private/​sam.ldb $file --option="​dsdb:​schema update allowed"​=true;​ done</​code>​ 
-</​note>​ 
-== Configuration de Autofs dans Active Directory == 
-Les commandes qui suivent peuvent être exécutées à partir de n'​importe quelle machine. 
- 
-Création d'un //​container//​ dédié à //​automount//​ pour garder une structure claire dans l'​annuaire Active Directory. 
-<​code>​ldapadd -H ldap://​ubndc01.example.com -U Administrator -W << EOF 
-dn: cn=automount,​cn=system,​dc=example,​dc=com 
-cn: automount 
-objectClass:​ top 
-objectClass:​ container 
-EOF</​code>​ 
- 
-Création d'un objet //​automountMap//​ pour accueillir les définitions maîtres de //autofs//. 
-<​code>​ldapadd -H ldap://​ubndc01.example.com -U Administrator -W << EOF 
-dn: cn=auto.master,​cn=automount,​cn=system,​dc=example,​dc=com 
-automountMapName:​ auto.master 
-objectClass:​ top 
-objectClass:​ automountMap 
-EOF</​code>​ 
-<​note>​Ceci est équivalent à créer un fichier ///​etc/​auto.master//</​note>​ 
-<note important>​La commande ci-dessus pourrait donner l'​erreur suivante: 
-<​code>​ldap_add:​ Naming violation (64) 
-        additional info: 00002037: structural objectClass automountMap is not a valid child class for ... 
-</​code>​ 
-Ceci vient du fait qu'un objet //​automountMap//​ ne peut pas être l'​enfant d'un objet //​organizationalUnit//​. Il ne faut pas utiliser des //OU// pour organiser les objets //​automountMap//​ dans l'​Active Directory. 
-</​note>​ 
- 
-Création d'un objet dans l'//​OU//​ '​auto.master'​ pour définir pour le répertoire ///​home/​example//​ . 
-<​code>​ldapadd -H ldap://​ubndc01.example.com -U Administrator -W << EOF 
-dn: cn=/​home/​example,​cn=auto.master,​cn=automount,​cn=system,​dc=example,​dc=com 
-automountKey:​ /​home/​example 
-objectClass:​ top 
-objectClass:​ automount 
-automountInformation:​ ldap:​cn=auto.home,​cn=automount,​cn=system,​dc=example,​dc=com 
-EOF</​code>​ 
-<​note>​Ceci est équivalent à ajouter une ligne dans le fichier ///​etc/​auto.master//​ 
-<file - /​etc/​master>​ 
-/​home/​example ​       ldap:​cn=auto.home,​ou=automount,​dc=example,​dc=com 
-</​file>​ 
-L'​attribut //​automountKey//​ définit le répertoire ///​home/​example//​ sur lequel autofs va traiter les demandes d'​accès. 
-L'​attribut //​automountInformation//​ donne le chemin (un objet dans l'​annuaire LDAP) vers les règles pour monter les sous-répertoires. 
-</​note>​ 
-<note important>​La commande ci-dessus pourrait donner l'​erreur suivante: 
-<​code>​ldap_add:​ Naming violation (64) 
-        additional info: 00002037: structural objectClass automountMap is not a valid child class for ... 
-</​code>​ 
-Ceci vient du fait qu'un objet //​automount//​ ne peut pas être l'​enfant d'un objet //​automountMap//​. Il me semble que se soit correct de définir un objet //​automount//​ comme étant l'​enfant d'un objet //​automountMap//​. La modification du schéma suivante va permettre cette opération: 
-<​code>​ssh ubndc01 
-... 
-sudo ldbmodify -H /​var/​lib/​samba/​private/​sam.ldb --option="​dsdb:​schema update allowed"​=true <<EOF 
-dn: cn=automount,​cn=schema,​cn=configuration,​dc=example,​dc=com 
-changetype: modify 
-add: possSuperiors 
-possSuperiors:​ automountMap 
-EOF</​code>​ 
-</​note>​ 
- 
-Création d'un //OU// pour accueillir les définitions //​auto.home//​ se rapportant au répertoire ///​home/​example//​. 
-<​code>​ldapadd -H ldap://​ubndc01.example.com -U Administrator -W << EOF 
-dn: cn=auto.home,​cn=automount,​cn=system,​dc=example,​dc=com 
-automountMapName:​ auto.home 
-objectClass:​ top 
-objectClass:​ automountMap 
-EOF</​code>​ 
-<​note>​Ceci est équivalent à créer un fichier ///​etc/​auto.home//</​note>​ 
- 
-Création d'un objet dans l'//​OU//​ //​auto.home//​ pour définir la règle d'​accès par défaut au sous-répertoire du répertoire ///​home/​example//​. 
-<​code>​ldapadd -H ldap://​ubndc01.example.com -U Administrator -W << EOF 
-dn: cn=*,​cn=auto.home,​cn=automount,​cn=system,​dc=example,​dc=com 
-automountKey:​ * 
-objectClass:​ top 
-objectClass:​ automount 
-automountInformation:​ -fstype=nfs4,​sec=krb5 ubnfs01.example.com:/​home/​example/&​ 
-EOF</​code>​ 
-<​note>​Ceci est équivalent à ajouter une ligne dans le fichier ///​etc/​auto.home//​ 
-<file - /​etc/​auto.home>​ 
-*        -fstype=nfs4,​sec=krb5 ubnfs01.example.com:/​home/​example/&​ 
-</​file>​ 
-L'​attribut //​automountKey//​ définit le sous-répertoire (*) sur lequel autofs va appliquer les paramètres qui suivent définis par l'​attribut //​automountInformation//​ 
-</​note>​ 
-== Configuration d'​autofs == 
-Prochainement ... 
- 
- 
 ===== En résumé ===== ===== En résumé =====
 ==== Sur le serveur DNS ==== ==== Sur le serveur DNS ====
Ligne 356: Ligne 243:
 <​code>​sudo service nfs-kernel-server start</​code>​ <​code>​sudo service nfs-kernel-server start</​code>​
 ==== Sur les clients NFS ==== ==== Sur les clients NFS ====
 +Installation du paquet NFS client
 +<​code>​sudo apt-get install nfs-common</​code>​
 +S'il n'est pas déjà définit dans l'​Active Directory, définir l'eUPN de l'​ordinateur
 +<​code>​ldapmodify -H ldap://​ubndc01.example.com -U Administrator << EOF
 +dn: cn=ubnws01,​cn=computers,​dc=example,​dc=com
 +changetype: modify
 +add: userPrincipalName
 +userPrincipalName:​ UBNWS01.EXAMPLE.COM\$@EXAMPLE.COM
 +EOF</​code>​
 +S'il n'est pas déjà présent dans le fichier ///​etc/​krb5.keytab//,​ ajouter l'eUPN au fichier
 +<​code>​sudo net ads keytab add UBNWS01.EXAMPLE.COM\$ -U Administrator</​code>​
 +Monter la ressource partagée manuellement
 +<​code>​sudo mount -t nfs4 -o sec=krb5 ubnfs01.example.com:/​home/​example /​home/​example</​code>​
 +__Ou__ automatiquement (cfr [[utilisateurs:​qedinux:​samba_ad_dc_nfs4_kerberized?​do=#​automatisation|Automatisation]])
  
 ===== Références ===== ===== Références =====
  • utilisateurs/qedinux/samba_ad_dc_nfs4_kerberized.1444597569.txt.gz
  • Dernière modification: Le 11/10/2015, 23:06
  • par Qedinux