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:quentin:samba_active_directory_domain_controller [Le 26/03/2014, 20:03]
Qedinux
utilisateurs:quentin:samba_active_directory_domain_controller [Le 11/09/2022, 13:12] (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 72: Ligne 72:
 getent group</​code>​ getent group</​code>​
  
-Les UID et GID, s'ils n'​existent pas dans l'AD, sont automatiquement généré par winbind mais ils ne sont pas écrits dans AD par winbind. Cette remarque est importante car d'​autres machines récupérant ces même informations de l'AD génèreront d'​autres UID et GID pour un même utilisateur. Ceci crée une incohérance dans le domaine. ​Afin d'​éviter ce problème, il est préférable de définir ces valeurs dans AD. Pour ce faire, il faut définir un range d'​identifiant réservé uniquement pour AD, par exemple de 100000 à 999999. De plus, afin de garantir que seuls les utilisateurs et groupes possèdant un UID et GID dans AD puissent s'​authentifier sur une machine Linux du domaine, il faut ajouter les options suivantes dans la partie globale du fichier de configuration de samba.+Les UID et GID, s'ils n'​existent pas dans l'AD, sont automatiquement généré ​(par winbind ​/ idmap) ​mais ils ne sont pas écrits dans AD par winbind. Cette remarque est importante car d'​autres machines récupérant ces même informations de l'AD génèreront d'​autres UID et GID pour un même utilisateur. Ceci crée une incohérance dans le domaine. 
 + 
 +Idmap écrit les données dans le fichier /​var/​lib/​samba/​private/​idmap.ldb. Le range prévu pour la création automatique des id's est définit dans dn: CN=CONFIG avec les valeurs lower et upperBound. 
 +<​code>​sudo ldbsearch -H /​var/​lib/​samba/​private/​idmap.ldb '​cn=config'​ 
 +# record 1 
 +dn: CN=CONFIG 
 +cn: CONFIG 
 +lowerBound: 3000000 
 +upperBound: 4000000 
 +xidNumber: 3000017 
 +distinguishedName:​ CN=CONFIG 
 +</​code>​ 
 + 
 +Le fichier //​idmap.ldb//​ n'est présent que sur les DC et pas sur les //member server//. Est-il bon de copier les valeurs des xidNumber vers les uidNumber et gidNumber des utilisateurs et groupes d'AD ? 
 + 
 +En tout cas, afin d'​éviter ce type de problème, il est préférable de définir ces valeurs dans AD. Pour ce faire, il faut définir un range d'​identifiant réservé uniquement pour AD, par exemple de 100000 à 999999. De plus, afin de garantir que seuls les utilisateurs et groupes possèdant un UID et GID dans AD puissent s'​authentifier sur une machine Linux du domaine, il faut ajouter les options suivantes dans la partie globale du fichier de configuration de samba.
 <file - /​etc/​samba/​smb.conf>​ <file - /​etc/​samba/​smb.conf>​
 ... ...
-   idmap config EXAMPLE:​backend = ad +    # Pas nécessaire sur un DC car les valeurs sont prises dans idmap.ldb si elles n'​existent pas dans AD 
-   ​idmap config EXAMPLE:​schema_mode = rfc2307 +    idmap config EXAMPLE:​backend = ad 
-   ​idmap config EXAMPLE:​range = 100000-999999+    idmap config EXAMPLE:​schema_mode = rfc2307 
 +    idmap config EXAMPLE:​range = 100000-999999
        
-   //?// winbind nss info = rfc2307 ​//?//+    # A ajouter sur les member servers mais pas sur les DC 
 +    #winbind nss info = rfc2307
 ... ...
 </​file>​ </​file>​
  
-Création du home directory ​pour l'​utilisateur ​du domaine.+== Création du home directory ​de l'​utilisateur ​== 
 + 
 +  * Cette première méthode est très générique et s'​applique à tous les utilisateurs de la machine (pas uniquement ceux d'AD)
 <file - /​usr/​share/​pam-configs/​mkhomedir>​ <file - /​usr/​share/​pam-configs/​mkhomedir>​
 Default: no Default: no
Ligne 92: Ligne 111:
 </​file>​ </​file>​
  
-Alternative en mofdifiant le fichier /​usr/​share/​pam-config/​winbind +  * Alternative en mofdifiant le fichier /​usr/​share/​pam-config/​winbind 
-<file - /​usr/​share/​pam-config/​winbind>​...+<file - /​usr/​share/​pam-configs/​winbind>​...
 Session: Session:
         optional ​                       pam_winbind.so mkhomedir         optional ​                       pam_winbind.so mkhomedir
 ...</​file>​ ...</​file>​
 +Cette alternative crée bien le home directory de l'​utilisateur. Les droits sur ce répertoire sont correctement définis (700 avec owner: uidNumber et group: gidNumber)
  
-Un autre alternative consiste à monter le home directory de l'​utilisateur lors du login. Une option du fichier de configuration /​etc/​samba/​smb.conf est //homedir map = auto.home//​. Ceci fait référence à autofs. Développement Ult. +  * Un autre alternative consiste à monter le home directory de l'​utilisateur lors du login. Une option du fichier de configuration /​etc/​samba/​smb.conf est //homedir map = auto.home//​. Ceci fait référence à autofs. Développement Ult. 
- +== Limitation ​de l'​accès à un ou plusieurs ​SID == 
-Possibilité ​de limiter ​l'​accès à un ou plusieurs ​groupes ou utilisateurs sur base du SID +Il est possible de limiter la possibilité l'​accès à certains ​utilisateurs ​ou certains groupes ​sur base de leur SID. Il faut ajouter //require_membership_of=<SID>// ​à la fin de la ligne pam_winbind.so de la section ​//Auth:// du fichier /​usr/​share/​pam-config/​winbind 
-Ajouter ​require_membership_of=SID à la fin de la ligne pam_winbind.so de la section Auth: du fichier /​usr/​share/​pam-config/​winbind +<file - /​usr/​share/​pam-configs/​winbind>​...
-<file - /​usr/​share/​pam-config/​winbind>​...+
 Auth: Auth:
         [success=end default=ignore] ​   pam_winbind.so krb5_auth krb5_ccache_type=FILE cached_login try_first_pass required_membership_of=S-1-5-21-5555555555-555555555-5555555555-512         [success=end default=ignore] ​   pam_winbind.so krb5_auth krb5_ccache_type=FILE cached_login try_first_pass required_membership_of=S-1-5-21-5555555555-555555555-5555555555-512
Ligne 108: Ligne 127:
 Le RID 512 représente le groupe //Domain Admins// Le RID 512 représente le groupe //Domain Admins//
  
-Activer cette nouvelle ​configuration :+== Appliquer les modifications des configurations PAM == 
 +Afin d'​appliquer les modifications faites aux différents fichiers de configuration ​de pam (/​usr/​share/​pam-configs/​*),​ il faut exécuter ​:
 <​code>​sudo pam-auth-update</​code>​ <​code>​sudo pam-auth-update</​code>​
  
Ligne 136: Ligne 156:
 } }
                                                                                                                                                                                               ​                                                                                                                                                                                               ​
-findMaxId() {                                                                                                                                                                                 ​+findMaxId() {
   ldbsearch -H $sam "​$regexp"​ $field | sed '/^# Referral/ { :loop; N; $! b loop; d; }; s/​^\([a-zA-Z0-9]*\):​ \(.*\)$/​\1="​\2"/​g;​ /​^$/​d;'​ | awk '/^# record/​{n++}{print > f n}' f=$tmpRecord ​       ldbsearch -H $sam "​$regexp"​ $field | sed '/^# Referral/ { :loop; N; $! b loop; d; }; s/​^\([a-zA-Z0-9]*\):​ \(.*\)$/​\1="​\2"/​g;​ /​^$/​d;'​ | awk '/^# record/​{n++}{print > f n}' f=$tmpRecord ​    
                                                                                                                                                                                               ​                                                                                                                                                                                               ​
  • utilisateurs/quentin/samba_active_directory_domain_controller.1395860629.txt.gz
  • Dernière modification: Le 26/03/2014, 20:03
  • par Qedinux