Forum général.général Intégration d'un serveur de domaine samba.

Posté par  .
Étiquettes : aucune
0
21
mai
2008
Hello !
J'ai un "petit" soucis avec mon contrôleur de domaine samba que j'aimerai régler une fois pour toutes.
Mon serveur samba est configuré comme il faut, pour faire serveur de fichiers, contrôleur de domaine, et tout le toutim. Ça fait au moins 4 ans qu'il fonctionne ainsi, et tout (ou presque) va pour le mieux.
Là où le bat blesse, c'est pour la partie client. Je m'explique.
Lorsqu'on installe un nouveau PC sur le domaine, et que ce PC tourne sous windows (souvent XP), on se connecte sur ce poste en tant qu'Administrateur, on ouvre les boîtes de dialogues qui vont bien, et on choisit de joindre le domaine. On fournit le nom d'utilisateur et le mot de passe de l'administrateur de samba et on est gratifié d'un message windows "Bienvenue dans le domaine".
Jusque là, tout va bien. Mais ensuite, ce que je trouve lourd c'est qu'il faille créer sur le poste windows le ou les comptes d'utilisateurs qui vont utiliser ce poste.
Y aurait-il un moyen de faire en sorte que l'authentification windows ne se fasse plus en son sein, mais au niveau du contrôleur de domaine directement ?
J'ai évidement parcouru beaucoup de tutoriels et de FAQS, mais mes lectures ne m'ont pas apporté beaucoup de renseignements face à ce problème, alors je m'adresse à vous, pour savoir si je fabule complètement, ou si au contraire une solution à mon problème existe bel et bien.
Si jamais je trouvais une réponse dans l'intervalle, je la posterai ici, pour que d'autres puissent en profiter.
Merci par avance pour toute aide que vous pourrez me donner.
  • # OSEF

    Posté par  . Évalué à -2.

    Ta vie, on s'en fout.

    c'est quoi ton problème ? là, je ne vois qu'un sujet de réflexion.

    Tu as essayé quels manip', et quels sont les messages d'erreurs ?

    goto http://www.gnurou.org/writing/smartquestionsfr
    • [^] # Re: OSEF

      Posté par  . Évalué à 1.

      c'est quoi ton problème ? là, je ne vois qu'un sujet de réflexion.

      Ben tu as du lire en diagonale mon message initial, parce que la question, elle est là :

      Y aurait-il un moyen de faire en sorte que l'authentification windows ne se fasse plus en son sein, mais au niveau du contrôleur de domaine directement ?

      Alors si je me suis mal exprimé, je vais délayer un peu :

      J'intègre un PC windows au domaine comme décrit sur les différents tutos, puis je le redémarre.
      Je me connecte en local sur la machine en tant qu'administrateur, j'ajoute un utilisateur du domaine à cette machine ; je ferme ma session Administrateur et j'ouvre une session sur le domaine avec mon compte utilisateur créé précédement sous windows et là, ça fonctionne.
      Je veux brûler cette étape d'ajout d'un utilisateur du domaine en local ou au pire l'automatiser.

      Le problème ne se pose chez nous que sur une seule machine sur laquelle tout le monde veut travailler, et je ne veux pas me farcir la déclaration de l'ensemble des utilisateurs du PDC sur ce poste.
      Est-ce plus clair ainsi ?
  • # ???

    Posté par  (site web personnel) . Évalué à 2.

    Si la machine fait bien partie du domaine les comptes ne sont plus locaux mais réseaux cad déclarer dans le domaine.

    Système - Réseau - Sécurité Open Source

    • [^] # Re: ???

      Posté par  . Évalué à 1.

      Justement, c'est ce que je croyais aussi, mais il semblerait que non.
      J'ai fait le test ce matin sur une machine à nous. J'ai un compte d'utilisateur déclaré sur la machine comme suit : \\DOMAINE\user1
      qui fait partie du groupe administrateur.
      A l'invite de windows, et après le fatidique ctrl+alt+suppr, je fournit user1 et son mot de passe, et ça fonctionne, j'ai ma session.

      Par contre, j'ai un utilisateur du PDC, mettons user2 qui n'est pas déclaré sur la machine windows.
      Lorsque je fournit user2 comme nom d'utilisateur et le mot de passe associé, windows m'indique que le domaine n'est pas joignable. (complétement idiot comme message d'erreur, puisqu'avec user1 ça fonctionne).
      Sur d'autres machines testées (configuration identique), le compte d'user2 s'ouvre bien, mais au niveau de windows, il a un profil itinérant qui mappe le clavier en qwerty, et ne récupère pas le profil pourtant stocké sur le serveur samba. C'est gênant évidement pour travailler, car les sessions de putty sont enregistrées dans le profil de l'utilisateur sur le serveur samba, par exemple.
      Voilà, encore quelques précisions qui seront utiles à ceux qui veulent bien m'aider sur ce sujet.
      • [^] # Re: ???

        Posté par  . Évalué à 2.

        Lorsque la session de user1 est ouverte sur la machine à problème, user1 a-t-il accès aux partages réseaux ? Windows gardant les profils en caches, il permet d'ouvrir des sessions même déconnecté du domaine (ce qui expliquerait le message indiquant que le domaine n'est pas joignable).

        Le compte de machine est-il correctement créé sur le serveur ?
        • [^] # Re: ???

          Posté par  . Évalué à 2.

          Oui, tout ce que tu indiques est fait ou fonctionne : si j'ouvre une session avec un compte non déclaré sur la machine, mais déclaré sur le PDC, j'accède bien aux partages réseaux.
          Le coup du domaine pas joignable, c'était le processus nmbd qui était parti en sucette. Un kill dessus et c'est reparti comme en 42.
          De ce que j'ai pu lire sur les pages pointées par les liens utiles donnés dans d'autres commentaires, à l'ouverture de session, windows dispose de trois fonctionnalités lorsque le profil de l'utilisateur authentifié n'existe pas :
          - soit il fait une copie intégrale de c:\Documents And Settinds\Default User
          - si le répertoire source n'existe pas, il va le chercher sur le réseau (je ne me souviens plus de l'emplacement, mais c'est l'idée, il doit aussi s'appeler "Default User"
          - Enfin, on peut zapper tout ça avec un profil mandataire.

          Nulle part je n'ai vu que l'on pouvait charger par défaut le profil créé ou existant dans le partage samba adéquat [profile].

          Mais bon, j'ai réglé le problème pour l'instant, je vais donc en rester là, jusqu'à ce que notre serveur samba soit changé (dans quelques mois), et là, je prendrais plus de temps pour me pencher sur la question et compléter un peu plus la configuration de ce nouveau serveur, à l'aide des docs et des liens fournis ici.
  • # Une remarque bête

    Posté par  (site web personnel) . Évalué à 4.

    Je vais confirmer la chose :

    - un compte utilisateur déclaré au niveau d'un contrôleur de domaine (Samba ou non) n'a aucunement besoin d'être redéclaré sur les clients

    Par contre lorsque l'on se connecte sur un poste client, il faut bien afficher les options de la boîte de dialogue de connexion. On doit trouver au final :

    - l'identifiant
    - le mot de passe
    - le nom du domaine ou de la machine locale (via une liste déroulante)

    Et oui, par défaut, même après une intégration à un domaine, le système propose par défaut une authentification sur la machine locale.

    Par la suite, l'authentification se règle sur la dernière connexion utilisée (donc en règle générale sur le contrôleur de domaine).
    • [^] # Re: Une remarque bête

      Posté par  . Évalué à 1.

      Bon, j'aurais pu faire cette erreur, c'est à dire ne pas changer la valeur idoine dans la boîte de connexion de la machine windows, mais non, je te rassure, ce n'est pas le cas.
      J'ai bien l'impression que soit personne ne comprend ma question, soit personne n'a été confronté à ce problème.
      Je tente quand même d'éclaircir mes propos, au cas où...

      Imaginons que je vienne juste d'intégrer ma nouvelle machine flambant neuve au domaine samba et que je n'ai défini aucun utilisateur du domaine sur ce nouvel objet.
      Je ferme ma session administrateur, je prends mes plus beaux doigts pour appuyer sur ctrl+alt+suppr, je renseigne le nom d'utilisateur que mon administrateur samba m'a donné ainsi que le mot de passe assocé et je vérifie bien que je me connecte au domaine avant de valider cette foutue boîte de connexion.
      Tout se passe bien, ma session s'ouvre. Bon, le clavier est en anglais, je n'ai pas récupéré mon fond d'écran que j'avais avant, et les listes des derniers documents et programmes récements utilisés sont vides. Qu'importe. Je travaille, puis je ferme ma session.
      Plus tard, l'administrateur passe sur cette machine, et va fouiller dans c:\Documents and Settings.
      Là, il s'apperçoit qu'en plus du sous-dossier Administrateur, All Users, et Default User, il y a un dossier portant mon nom. Il vient me voir, on cause, etc.
      Ce petit malin m'explique que le dossier créé sur cette belle machine a été copié de Default User, et non depuis le partage "profile" du serveur samba.
      C'est pourquoi j'ai pu ouvrir ma session (l'authentification a bien été réalisée sur le domaine samba), mais qu'une partie des informations qui me sont normalement utiles avaient disparues.
      Comme cet administrateur n'a rien à faire, a du temps à perdre, et qu'il est sympa, il va dans le panneau de configuration, ouvre la gestion des utilisateurs, et va demander la liste des utilisateurs du domaine, choisit mon login et m'ajoute dans la catégorie 'Administrateurs".
      Il ferme sa session, je ré-ouvre la mienne, et je retrouve tous mes paramètres, comme par enchantement.
      Je ferme donc ma session, et lui ouvre la sienne pour me montrer ce qui s'est passé. Maintenant, le dossier "Documents and Settings" contient un sous-dossier avec mon nom de connexion point le nom du domaine (user.domain), dont le contenu a été copié depuis le serveur samba.
      Voilà, fin de l'histoire.
      Et finalement, c'est ce comportement que j'aimerai de base.

      J'ose à peine imaginer que dans un environnement purement microsoft il faille définir sur chaque poste client les utilisateurs du domaine. Ça me parraît surréaliste.
      A mon humble avis, il y a quelque chose à modifier sur les postes clients, et peut-être sur le poste serveur samba. J'ai déjà quelques pistes avec les notions de mappages de groupes, et les stratégies de sécurité utilisées par les postes windows.
      Le but est simple : avoir un PC sous windows connecté au domaine, et plusieurs utilisateurs du domaine potentiels.
      Voilà, j'espère que c'est plus clair comme demande.
      J'ai bien fouillé le web, et j'ai trouvé pas mal de choses intéressantes, notament la faq non officielle de samba qui donne quelques paramètres à changer dans la base de registres. Modifications que j'ai effectuées, en suivant le tuto, et testées (après moults reboots), mais sans succès au moment où je frappe ces quelques lignes.

      En bref, j'ai l'impression que ma question tout à fait sérieuse fait bien rire les utilisateurs de passage dans ces forums. Je me demande si je n'ai pas des problèmes à me faire comprendre, ou si tout le monde se moque de moi ici, ou encore si ce que je souhaite faire avec mes postes sous XP est du domaine de la SF (m'enfin, je n'ai jamais vu ce comportement sous NetWare, par exemple).

      Merci quand même pour les quelques réponses apportées ici par tous.
      • [^] # Re: Une remarque bête

        Posté par  . Évalué à 2.

        Ton problème est effectivement très bizarre ! Dans la boîte où je bossais avant, on avait comme toi un Samba PDC, et il me suffisait de déclarer les utilisateurs sur le PDC.

        Ensuite, au niveau client, après avoir (comme tu l'as fait) joint le PC au domaine, n'importe quel utilisateur pouvait se connecter sur le PC, si tant est qu'il déclarait vouloir s'authentifier sur le domaine dans la boite de login windows. Les utilisateurs retrouvaient leur bureau et autre joyeusetés sur n'importe quel PC où ils se loggaient : J'avais activé les roaming profiles sur le serveur samba.

        Seul inconvénient du truc : windows fait une copie locale du profil distant sur chaque machine ou un utilisateur donné s'est connecté :( Bon, ça fait des sauvegardes pas chères...

        Si ça peut faire avancer le schmilblick, voici le smb.conf utilisé pour faire ce genre de choses :


        #======================= Global Settings ========
        [global]

        # 1. Server Naming Options:
        # workgroup = NT-Domain-Name or Workgroup-Name
        workgroup = Mon_domaine
        server string = Samba Server %v
        unix charset = iso8859-15
        display charset = iso8859-15

        # 2. Printing Options:
        # CHANGES TO ENABLE PRINTING ON ALL CUPS PRINTERS IN THE NETWORK
        # (as cups is now used in linux-mandrake 7.2 by default)
        # if you want to automatically load your printer list rather
        # than setting them up individually then you'll need this
        printcap name = cups
        load printers = yes
        printcap cache time = 60
        printing = cups

        # 3. Logging Options:
        # this tells Samba to use a separate log file for each machine
        # that connects
        log file = /var/log/samba/%m.log
        max log size = 1024
        log level = 2

        # 4. Security and Domain Membership Options:
        # Allow users to map to guest:
        map to guest = bad user
        security = user
        encrypt passwords = yes
        smb passwd file = /etc/samba/smbpasswd
        username map = /etc/samba/smbusers

        # 5. Browser Control and Networking Options:
        # Most people will find that this option gives better performance.
        # See speed.txt and the manual pages for details
        socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
        local master = yes
        domain master = yes
        preferred master = yes

        # 6. Domain Control Options:
        domain logons = yes

        # Where to store roaming profiles for WinNT and Win2k
        # %L substitutes for this servers netbios name, %u is username
        # You must uncomment the [Profiles] share below
        logon path = \\%L\Profiles\%u\.winprofile

        # The add machine script is use by a samba server configured as a domain
        # controller to add local machine accounts when adding machines to the domain.
        # The script must work from the command line when replacing the macros,
        # or the operation will fail. Check that groups exist if forcing a group.
        # Script for domain controller for adding machines:
        add machine script = /usr/sbin/useradd -d /dev/null -g machines -c 'Machine Account' -s /bin/false -M '%u'

        enable privileges = yes

        # 7. Name Resolution Options:
        name resolve order = bcast
        dns proxy = no

        [Profiles]
        path = /home
        browseable = no
        guest ok = no
        writable = yes
        # This script can be enabled to create profile directories on the fly
        # You may want to turn off guest acces if you enable this, as it
        # hasn't been thoroughly tested.
        root preexec = PROFILE='/home/%u/.winprofile'; if [ ! -e $PROFILE ]; \
        then mkdir -pm700 $PROFILE; chown '%u':'%g' $PROFILE;fi

        [printers]
        comment = All Printers
        path = /var/spool/samba
        browseable = no
        # to allow user 'guest account' to print.
        guest ok = yes
        writable = no
        printable = yes
        create mode = 0700
        print command = lpr-cups -P %p -o raw %s -r # using client side printer drivers.
        use client driver = yes

        [print$]
        path = /var/lib/samba/printers
        browseable = yes
        write list = @adm root
        guest ok = yes
        inherit permissions = yes

        [Affaires]
        browseable = yes
        writeable = yes
        path = /var/files/Affaires
        write list = @catii
        force group = catii
        comment = Affaires en cours
        create mode = 0775
        directory mode = 0775

        [Mes partages]
        ...

        [homes]
        path =
        comment = Home Directories
        browseable = yes
        writable = yes
        • [^] # Re: Une remarque bête

          Posté par  . Évalué à 2.

          Hum... posté un peu trop vite...

          Si un modo qui passais par là pouvait effacer la définition du partage [Affaires], il serait bien gentil... :)

          Merci d'avance !
      • [^] # Re: Une remarque bête

        Posté par  (site web personnel) . Évalué à 3.

        Bon ça me rassure, ce n'est pas qu'un 'bête' problème de connexion :-)

        Tout se passe bien, ma session s'ouvre. Bon, le clavier est en anglais, je n'ai pas récupéré mon fond d'écran que j'avais avant, et les listes des derniers documents et programmes récements utilisés sont vides. Qu'importe. Je travaille, puis je ferme ma session.

        Problème de profil utilisateur (et encore le problème du clavier qwerty peut être causé par des applications tierces comme Symantec Antivirus).

        Plus tard, l'administrateur passe sur cette machine, et va fouiller dans c:\Documents and Settings.
        Là, il s'apperçoit qu'en plus du sous-dossier Administrateur, All Users, et Default User, il y a un dossier portant mon nom. Il vient me voir, on cause, etc.
        Ce petit malin m'explique que le dossier créé sur cette belle machine a été copié de Default User, et non depuis le partage "profile" du serveur samba.


        Normal ; sauf si un profil mandataire a été défini. Du moins, lors d'une première connexion. Pour les suivantes, le profil est normalement récupéré sur le serveur.

        Comme cet administrateur n'a rien à faire, a du temps à perdre, et qu'il est sympa, il va dans le panneau de configuration, ouvre la gestion des utilisateurs, et va demander la liste des utilisateurs du domaine, choisit mon login et m'ajoute dans la catégorie 'Administrateurs".
        Il ferme sa session, je ré-ouvre la mienne, et je retrouve tous mes paramètres, comme par enchantement.
        Je ferme donc ma session, et lui ouvre la sienne pour me montrer ce qui s'est passé. Maintenant, le dossier "Documents and Settings" contient un sous-dossier avec mon nom de connexion point le nom du domaine (user.domain), dont le contenu a été copié depuis le serveur samba.
        Voilà, fin de l'histoire.
        Et finalement, c'est ce comportement que j'aimerai de base.


        Ce que tu veux ce sont des profils itinérants (roaming profile) : cela conserve tous les réglages possibles, les fichiers déposés sur le bureau, le fond d'écran, etc. Et effectivement il faut paramétrer cela sur le serveur.

        La documentation de Samba sur le sujet est disponible à l'adresse suivante :

        http://us3.samba.org/samba/docs/man/Samba-HOWTO-Collection/P(...)

        Chose à vérifier rapidement sur ton serveur : est-ce que les partages de profils sont bien défini au niveau de Samba et aussi en termes de droits sur le système de fichier (c'est l'un des rares répertoires qui doit avoir des permissions 'larges').

        Je n'ai pas le temps d'expliquer plus en détail, mais si personne ne le fait, n'hésites pas à me contacter.
      • [^] # Change d'administrateur

        Posté par  . Évalué à 1.

        Si j'ai bien compris ton problème, c'est ton administrateur qui n'a pas de jugeotte. Et toi, il te manque un peu d'expérience aussi :-)

        Ce que tu souhaites c'est un "roaming profile". Ce n'est pas activé par défaut. Si tu te connectes sur 3 machines différentes, sans profils itinérants, tu auras 3 réglages différents (papier peint et tout ce que tu veux).

        Ton administrateur a probablement activé un profile itinérant lorsqu'on fait parti du groupe des administrateurs du domaine. Si j'ai bien compris hein. Si c'est le cas, c'est pire que méga beurk.

        En passant, ce n'est pas un problème à poster sur Linuxfr...
        • [^] # Re: Change d'administrateur

          Posté par  . Évalué à 0.

          Ah oui alors bien sûr, c'est déjà dit dans la réponse du dessus :-)

          Cela dit je confirme: ton administrateur est un vrai mauvais.
  • # Réponse groupée.

    Posté par  . Évalué à 0.

    D'abord merci à gronk34t, ptitchat et à Ellendhel pour leurs commentaires intéressants.
    J'ai bien regardé les liens fournis, ainsi que mon smb.conf, qui est bien conforme à ce qu'on pourrait attendre pour la déclaration d'un PDC.
    J'avoue sécher un peu sur le problème malgrès toute la doc officielle ou non lue sur le sujet.
    De ce que j'en ai compris, mon "problème" pourrait provenir du fait que je n'utilise ni d'annuaire ldap, ni des fonctionnalités active directory, et je n'ai pas mis en place de groupmapping.
    Tout ça, ça me parraît bien complexe juste finalement pour un seul poste qui est utilisé par plusieurs personnes. J'ai donc finalement ajouté les comptes en tant qu'administrateur sur la machine ciblée, mais je risque d'avoir les mêmes soucis si le besoin de cette fonctionalité devait s'étendre, ou le jour où la machine en question sera changée.
    Pourtant, les roamings profiles sont bien activés sur le serveur samba : j'ai bien un logon path, un partage netlogon (world writeable), des partages profiles par utilisateurs avec ce que je pense être les bons droits, etc.

    Bref, je vais clore le sujet, en remerciant ceux qui m'ont réellement aidé.

    Pour les autres, je tiens à signaler que non, pas plus ce matin qu'hier je n'ai pris ni le temps d'apprendre par coeur toutes les docs de tous les softs libres ni le temps de relire tout internet. J'espère qu'ils ne m'en voudront pas, j'ai d'autres choses à faire pour l'instant.
    Message personnel ensuite à l'intention de Kerro : merci pour les insultes, l'administrateur, c'est moi. Je suis seul à administrer ces machines, et je fais ce que je peux. Si aider ceux qui ont des problèmes te fait chier, ne prends plus la peine de répondre, tu gagneras du temps, et nous aussi. Ah, et tu as raison, samba n'est pas un logiciel libre, il est donc inutile d'en parler sur ce site.
    Enfin, je dois dire que l'ambiance ici se dégrade profondément, et donne de moins en moins envie de rester sur ce site. Heureusement que les news de patrick_g sont là pour relever le niveau.
    • [^] # Re: Réponse groupée.

      Posté par  . Évalué à 2.

      Samba est bel et bien un logiciel libre, mais ton problème vient de tes réglages "à la Windows". C'est comme si on demande "comment faire avec Apache pour que les pages s'affichent correctement sous MSIE": ce n'est pas un problème Apache, mais un problème MSIE.

      Si tu penses que c'est une insulte lorsqu'on te dit que tu ne connais pas le début du commencement de ton métier, il va t'être difficile d'évoluer. Ce que tu demandes est dû à une chose basique de l'environnement Microsoft. Si tu ne la connais pas c'est simplement que tu ne connais pas ton métier (lire les docs, tester, mettre en oeuvre, puis lire les docs, tester, mettre en oeuvre, encore et encore, pour chaque technologie utilisée). Ce que tu tentes de faire c'est "je teste sans comprendre les bases puis j'appelle au secours". Ca marche souvent, c'est pour ça qu'on a beaucoup de très mauvais informaticiens. Si tu souhaites faire partie du lot, tu as la bonne méthode en main. Le jour où tu auras une "vraie" infrastrucutre à gérer, cette méthode ne fonctionnera plus.

Suivre le flux des commentaires

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