Forum Linux.général Samba4 AD : SID au lieu du nom du groupe

Posté par . Licence CC by-sa.
0
12
mai
2015

Bonsoir,
j'ai un domaine AD sous Samba 4 qui comprend :
-2 DC sous Ubuntu 14.04 (4.2.1 compilé depuis les sources)
-1 serveur membre (pour les partages) Ubuntu 14.04 (version 4.2.0 compilé depuis les sources)
-1 machine windows7 pour administrer le bouzin :)

J'utilise bind9 DLZ comme backend DNS pour mes DC pour les enregistrements DNS dynamiques.
Le domaine a été compilé avec l'option RFC2307 qui permet d'utiliser des UID/GID unix (ceci afin d'harmoniser les uid entre les serveurs du domaine).
Sur le serveur membre qui contient les partages, j'utilise sssd pour justement pouvoir authentifier mes utilisateurs AD sur la machine.
Tout ceci fonctionnait plutôt pas mal, sauf que depuis dernièrement, quand je regarde les permissions sur mes partage depuis ma machine Windows je n'ai plus les noms des groupes mais les SID des groupes.
J'ai regardé sur le serveur membre et un getfacl sur le dossier ne me remonte pas les groupes (ni leur noms ni leurs sid).
Je ne comprend pas d'où peut venir le problème (la partition contenant les partages est en ext4 qui supporte par défaut les acl).

Un getent passwd ou getent group depuis le serveur membre m'affiche correctement les comptes utilisateurs et groupes de l'AD avec leur bon UID/GID (donc je pense que sssd fait bien son boulot).
La seule modification que j'ai faite sur les 3 serveurs est la suppression du paquet resolvconf pour pouvoir forcer /etc/resolv.conf avec les bons DNS (je ne comprend pas l'intérêt de resolvconf sur un serveur et je n'ai aucune idée de ce qui polluer sans arrêt ma conf avec des réglages erronées).

Si quelqu'un a des pistes pour savoir ce qui cloche je suis preneur car les logs me n'aident pas beaucoup.

  • # integration au domaine

    Posté par . Évalué à 3.

    Tout ceci fonctionnait plutôt pas mal, sauf que depuis dernièrement, quand je regarde les permissions sur mes partage depuis ma machine Windows je n'ai plus les noms des groupes mais les SID des groupes.
    J'ai regardé sur le serveur membre et un getfacl sur le dossier ne me remonte pas les groupes (ni leur noms ni leurs sid).
    Je ne comprend pas d'où peut venir le problème (la partition contenant les partages est en ext4 qui supporte par défaut les acl).

    et ta machine windows, elle est integrée au domaine pour pouvoir faire la correspondance entre le SID et le nom du groupe ?

  • # Un peu de conf

    Posté par . Évalué à 1. Dernière modification le 13/05/15 à 19:04.

    Salut Neox,
    oui elle est bien intégrée au domaine c'est depuis cette machine que j'administre l'AD.
    Je viens de reprendre toute ma conf, la partie DNS est OK à tous les niveaux.
    Je pense que mon problème doit venir soit de ma conf sssd soit de ma conf samba sur mon serveur de fichier.
    Je poste la conf à toute fin utile:

    /etc/sssd/sssd

        [sssd]
        config_file_version = 2
        domains = mydomain.example
        services = nss, pam
        reconnection_retries = 3
        debug_level = 7 
    
        [domain/mydomain.example]
        id_provider = ad
        access_provider = ad
        dyndns_update = false
        enumerate = true
        krb5_keytab = /etc/krb5.keytab
        ldap_id_mapping = false

    /srv/samba4/etc/smb.conf

    [global]   
        netbios name = admember-1
        workgroup = MYDOMAIN
        security = ADS
        realm = MYDOMAIN.EXAMPLE
        interfaces = lo eth0
        bind interfaces only = yes
        dedicated keytab file = /etc/krb5.keytab
        kerberos method = system keytab
        username map = /srv/samba4/etc/user.map
        idmap config *:backend = tdb
        idmap config *:range = 2000-9999
        idmap config MYDOMAIN:backend = ad
        idmap config MYDOMAIN:schema_mode = rfc2307
        idmap config MYDOMAIN:range = 10000-99999  
        vfs objects = acl_xattr
        map acl inherit = Yes
        store dos attributes = Yes
        [demoshare]
        path = /srv/shares/test
        read only = no

    Merci.

    • [^] # Re: Un peu de conf

      Posté par . Évalué à 2.

      et ton domaine DNS, c'est bien MYDOMAIN.EXAMPLE ?

      ton resolv.conf, il a bien une ligne
      search MYDOMAIN.EXAMPLE

      sinon pour repondre à quelqu'un il faut cliquer sur "repondre" en dessous de son post,
      et pas sur "envoyer un commentaire" qui va repondre au post d'origine.

      • [^] # Re: Un peu de conf

        Posté par . Évalué à 1.

        Oui MYDOMAIN.EXAMPLE est bien mon domaine DNS et mon resolv.conf est correct.
        Je pense que ma conf DNS est correcte (je résous toutes les entrées DNS de l'AD y compris les services ldap et Kerberos).
        En furetant un peu sur la mailing list Samba j'ai vu que la team Samba préconisait l'usage de winbind (qu'ils développent) plutôt que de sssd, mais je n'ai pas réussi à configurer correctement winbind pour ne serait qu'afficher mes utilisateur et groupes AD depuis mon serveur membre.

        • [^] # Re: Un peu de conf

          Posté par . Évalué à 2.

          mais je n'ai pas réussi à configurer correctement winbind pour ne serait qu'afficher mes utilisateur et groupes AD depuis mon serveur membre.

          pour le serveur membre, avec samba4 ne suffit-il pas de joindre le serveur au domaine en tant que membre
          plutot que de d'utiliser SSSD/winbind ?

          sauf si tu veux utiliser les comptes AD pour te connecter en ftp/ssh/grahique sur le serveur membre.

          sur mon installation, d'accord ce sont 2 controleurs de domaines samba4, il m'avait suffit de faire

          samba-tool domain provision --use-rfc2307 --interactive

          et sur la machine qui sera le controleur secondaire

          samba-tool domain join xxxx.yyyy DC -Uuser_with_adminrights

          ici l'option DC precise qu'il sera controlleur de domaine,
          mais tu dois pouvoir lui dire qu'il sera MEMBER

          • [^] # Re: Un peu de conf

            Posté par . Évalué à 1.

            Oui j'ai bien joint au domaine mon serveur membre par contre la commande est un peu différente que pour les DC, c'est:

            net join ads join -U administrator

            Pour sssd/winbind vu que j'utilise le RFC2307 avec les uid/gid pour mes comptes AD j'ai pensé que ça serait bien pratique de pouvoir avoir des comptes en local aussi sur le serveur membre, mais tu as raison ça n'a rien à voir avec mon problème de SID.

            Par contre si tu n'utilises pas winbind/sssd que devrait remonter alors un getfacl /share sur un partage avec des ACL Windows comprenant des comptes avec les Unix attributes?
            J'avoue que cette partie "ACL Windows qui s'affiche sur Linux" est un peu confuse pour moi.

            En relisant le wiki je me suis rendu compte que j'ai zappé cette étape:
            "You must also give the users default primary group, "Domain Users", a gidNumber attribute containing an id number within the range used in smb.conf"

            Pas sur que ça ait un impact mais je vais essayer.

            • [^] # Re: Un peu de conf

              Posté par . Évalué à 1.

              Bon j'ai relu attentivement le wiki et j'avais zappé pas mal de truc notamment dans la partie Partage de fichier.
              Lien
              J'ai donc tout refait en suivant la procédure, à savoir:
              -Ajout d'un GID pour les groupes admin de domain et user du domain (afin de les voir sur mon serveur membre).
              -Ajout du privilège SeDiskOperatorPrivilege pour le group Admin du domaine
              -Positionnement des acl sur le share pour le groupe Admin du domaine depuis le serveur membre
              -Depuis Windows: mettre les permissions sur le share et les ACL sur les répertoires.

              Le problème c'est que j'ai toujours l'affichage du SID à la place du nom du groupe sur les répertoire de mon partage.
              Et coté serveur membre je ne vois pas les acl Windows avec un getfacl, uniquement celui que j'ai positionné depuis le serveur membre, les permissions ajoutées coté Windows ne sont pas vues.
              Il y'a un problème entre les ACL Posix et les ACL Windows…

              • [^] # Re: Un peu de conf

                Posté par . Évalué à 1.

                Il semblerait que mon dernier message n'est pas été publié.
                Je donne la solution pour ceux qui aurait le problème:
                c'était un problème de synchro entre les deux DC (je n'avais pas répliqué le sysvol).
                J'ai coupé le second DC et le problème avait disparu.
                En recopiant la base tld depuis le DC principal et en mettant un place un rsync pour le partage sysvol ça a refonctionné.
                Pas mal de configuration manuelle à faire si on utilise plusieurs DC, heureusement le wiki aide beaucoup (à condition de le lire jusqu'au bout!).
                Bonne Samba à tous.

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.