Profiles itinérants Samba sur Debian 6

Résolu
Bonjour à tous,

J'ai une petite question pour ceux qui connaissent un peu Samba.
J'ai couplé Samba à OpenLDAP, tous fonctionne à peu près, je peux joindre le domaine et me connecter avec un utilisateur sous Windows 7, le seul soucis c'est qu'il ne m'enregistre pas mes profiles itinérants.

Il me semble pourtant que ma conf est bonne:
-Dans smb.conf:
.
.
.
domain logons = Yes
domain master = Yes
local master = Yes
logon script = logon.bat
logon drive = H:
logon home = \\%L\%U
logon path = \\%L\profiles\%U
.
.
[profiles]
        comment = profils itinerants
        path = /home/profiles
        browseable = no
        writable = yes
        create mask = 0770
        directory mask = 0770


De plus j'ai créé mon répertoire profiles sous /home à coup de:
mkdir /home/profiles
chmod 777 /home/profiles
chown root:"Domain Users" /home/profiles


Et Windows me dit :
Windows ne peut pas trouver de copie serveur de votre profil itinérant et tente de vous ouvrir une session avec votre profil local. Les modifications apportées au profil ne seront pas copiées sur le serveur lorsque vous fermerez votre session. Ce problème peut être causé par des problèmes réseau ou des droits de sécurité insuffisants.

DÉTAIL - Le chemin d'accès spécifié est non valide.


Syslog de Samba:
Apr  9 07:18:20 LDAP1 init: Id "1" respawning too fast: disabled for 5 minutes
Apr  9 07:18:49 LDAP1 smbd[8222]: [2013/04/09 07:18:49.162351,  2] smbd/sesssetup.c:1391(setup_new_vc_session)
Apr  9 07:18:49 LDAP1 smbd[8222]:   setup_new_vc_session: New VC == 0, if NT4.x compatible we would close all old resources.
Apr  9 07:18:49 LDAP1 smbd[8222]: [2013/04/09 07:18:49.166208,  2] smbd/sesssetup.c:1391(setup_new_vc_session)
Apr  9 07:18:49 LDAP1 smbd[8222]:   setup_new_vc_session: New VC == 0, if NT4.x compatible we would close all old resources.
Apr  9 07:18:49 LDAP1 smbd[8222]: [2013/04/09 07:18:49.166858,  2] lib/smbldap.c:950(smbldap_open_connection)
Apr  9 07:18:49 LDAP1 smbd[8222]:   smbldap_open_connection: connection opened
Apr  9 07:18:49 LDAP1 smbd[8222]: [2013/04/09 07:18:49.640707,  2] passdb/pdb_ldap.c:2446(init_group_from_ldap)
Apr  9 07:18:49 LDAP1 smbd[8222]:   init_group_from_ldap: Entry found for group: 513
Apr  9 07:18:49 LDAP1 smbd[8222]: [2013/04/09 07:18:49.881253,  2] passdb/pdb_ldap.c:572(init_sam_from_ldap)
Apr  9 07:18:49 LDAP1 smbd[8222]:   init_sam_from_ldap: Entry found for user: pdupont
Apr  9 07:18:49 LDAP1 smbd[8222]: [2013/04/09 07:18:49.883279,  2] auth/auth.c:304(check_ntlm_password)
Apr  9 07:18:49 LDAP1 smbd[8222]:   check_ntlm_password:  authentication for user [pdupont] -> [pdupont] -> [pdupont] succeeded
Apr  9 07:18:50 LDAP1 smbd[8222]: [2013/04/09 07:18:50.568942,  2] passdb/pdb_ldap.c:572(init_sam_from_ldap)
Apr  9 07:18:50 LDAP1 smbd[8222]:   init_sam_from_ldap: Entry found for user: sch-think$
Apr  9 07:18:50 LDAP1 smbd[8222]: [2013/04/09 07:18:50.570138,  2] passdb/pdb_ldap.c:2446(init_group_from_ldap)
Apr  9 07:18:50 LDAP1 smbd[8222]:   init_group_from_ldap: Entry found for group: 515
Apr  9 07:18:50 LDAP1 smbd[8222]: [2013/04/09 07:18:50.570740,  2] passdb/pdb_ldap.c:2446(init_group_from_ldap)
Apr  9 07:18:50 LDAP1 smbd[8222]:   init_group_from_ldap: Entry found for group: 515
Apr  9 07:18:50 LDAP1 smbd[8222]: [2013/04/09 07:18:50.571911,  2] auth/auth.c:304(check_ntlm_password)
Apr  9 07:18:50 LDAP1 smbd[8222]:   check_ntlm_password:  authentication for user [SCH-THINK$] -> [SCH-THINK$] -> [sch-think$] succeeded
Apr  9 07:19:15 LDAP1 smbd[8222]: [2013/04/09 07:19:15.929185,  0] lib/util_sock.c:474(read_fd_with_timeout)
Apr  9 07:19:15 LDAP1 smbd[8222]: [2013/04/09 07:19:15.929263,  0] lib/util_sock.c:1441(get_peer_addr_internal)
Apr  9 07:19:15 LDAP1 smbd[8222]:   getpeername failed. Error was Transport endpoint is not connected
Apr  9 07:19:15 LDAP1 smbd[8222]:   read_fd_with_timeout: client 0.0.0.0 read error = Connection reset by peer.
Apr  9 07:19:20 LDAP1 smbd[8224]: [2013/04/09 07:19:20.941630,  2] smbd/sesssetup.c:1391(setup_new_vc_session)
Apr  9 07:19:20 LDAP1 smbd[8224]:   setup_new_vc_session: New VC == 0, if NT4.x compatible we would close all old resources.
Apr  9 07:19:20 LDAP1 smbd[8224]: [2013/04/09 07:19:20.943138,  2] smbd/sesssetup.c:1391(setup_new_vc_session)
Apr  9 07:19:20 LDAP1 smbd[8224]:   setup_new_vc_session: New VC == 0, if NT4.x compatible we would close all old resources.
Apr  9 07:19:20 LDAP1 smbd[8224]: [2013/04/09 07:19:20.943605,  2] lib/smbldap.c:950(smbldap_open_connection)
Apr  9 07:19:20 LDAP1 smbd[8224]:   smbldap_open_connection: connection opened
Apr  9 07:19:20 LDAP1 smbd[8224]: [2013/04/09 07:19:20.944635,  2] passdb/pdb_ldap.c:572(init_sam_from_ldap)
Apr  9 07:19:20 LDAP1 smbd[8224]:   init_sam_from_ldap: Entry found for user: pdupont
Apr  9 07:19:20 LDAP1 smbd[8224]: [2013/04/09 07:19:20.945548,  2] passdb/pdb_ldap.c:2446(init_group_from_ldap)
Apr  9 07:19:20 LDAP1 smbd[8224]:   init_group_from_ldap: Entry found for group: 513
Apr  9 07:19:20 LDAP1 smbd[8224]: [2013/04/09 07:19:20.946251,  2] auth/auth.c:304(check_ntlm_password)
Apr  9 07:19:20 LDAP1 smbd[8224]:   check_ntlm_password:  authentication for user [pdupont] -> [pdupont] -> [pdupont] succeeded
Apr  9 07:19:20 LDAP1 smbd[8224]: [2013/04/09 07:19:20.952773,  1] smbd/service.c:1070(make_connection_snum)
Apr  9 07:19:20 LDAP1 smbd[8224]:   sch-think (192.168.5.151) connect to service netlogon initially as user pdupont (uid=1010, gid=513) (pid 8224)
Apr  9 07:19:24 LDAP1 smbd[8224]: [2013/04/09 07:19:24.351298,  2] smbd/open.c:633(open_file)
Apr  9 07:19:24 LDAP1 smbd[8224]:   pdupont opened file logon.bat read=Yes write=No (numopen=1)
Apr  9 07:19:24 LDAP1 smbd[8224]: [2013/04/09 07:19:24.743149,  2] smbd/close.c:656(close_normal_file)
Apr  9 07:19:24 LDAP1 smbd[8224]:   pdupont closed file logon.bat (numopen=0) NT_STATUS_OK
Apr  9 07:19:24 LDAP1 smbd[8224]: [2013/04/09 07:19:24.744457,  2] smbd/open.c:633(open_file)
Apr  9 07:19:24 LDAP1 smbd[8224]:   pdupont opened file logon.bat read=Yes write=No (numopen=1)
Apr  9 07:19:24 LDAP1 smbd[8224]: [2013/04/09 07:19:24.813799,  2] smbd/close.c:656(close_normal_file)
Apr  9 07:19:24 LDAP1 smbd[8224]:   pdupont closed file logon.bat (numopen=0) NT_STATUS_OK
Apr  9 07:19:24 LDAP1 smbd[8224]: [2013/04/09 07:19:24.815707,  2] smbd/open.c:633(open_file)
Apr  9 07:19:24 LDAP1 smbd[8224]:   pdupont opened file logon.bat read=Yes write=No (numopen=1)
Apr  9 07:19:24 LDAP1 smbd[8224]: [2013/04/09 07:19:24.820163,  2] smbd/close.c:656(close_normal_file)
Apr  9 07:19:24 LDAP1 smbd[8224]:   pdupont closed file logon.bat (numopen=0) NT_STATUS_OK
Apr  9 07:19:24 LDAP1 smbd[8224]: [2013/04/09 07:19:24.821729,  2] smbd/open.c:633(open_file)
Apr  9 07:19:24 LDAP1 smbd[8224]:   pdupont opened file logon.bat read=Yes write=No (numopen=1)
Apr  9 07:19:24 LDAP1 smbd[8224]: [2013/04/09 07:19:24.844132,  2] smbd/close.c:656(close_normal_file)
Apr  9 07:19:24 LDAP1 smbd[8224]:   pdupont closed file logon.bat (numopen=0) NT_STATUS_OK
Apr  9 07:19:24 LDAP1 smbd[8224]: [2013/04/09 07:19:24.847755,  1] smbd/service.c:1070(make_connection_snum)
Apr  9 07:19:24 LDAP1 smbd[8224]:   sch-think (192.168.5.151) connect to service public initially as user pdupont (uid=1010, gid=513) (pid 8224)
Apr  9 07:19:25 LDAP1 smbd[8224]: [2013/04/09 07:19:25.271611,  2] smbd/open.c:633(open_file)
Apr  9 07:19:25 LDAP1 smbd[8224]:   pdupont opened file logon.bat read=Yes write=No (numopen=1)
Apr  9 07:19:39 LDAP1 smbd[8224]: [2013/04/09 07:19:39.943739,  2] smbd/close.c:656(close_normal_file)
Apr  9 07:19:39 LDAP1 smbd[8224]:   pdupont closed file logon.bat (numopen=0) NT_STATUS_OK
Apr  9 07:19:51 LDAP1 smbd[8224]: [2013/04/09 07:19:51.927809,  1] smbd/service.c:1251(close_cnum)
Apr  9 07:19:51 LDAP1 smbd[8224]:   sch-think (192.168.5.151) closed connection to service netlogon
Apr  9 07:21:21 LDAP1 smbd[8224]: [2013/04/09 07:21:21.927475,  1] smbd/service.c:1251(close_cnum)
Apr  9 07:21:21 LDAP1 smbd[8224]:   sch-think (192.168.5.151) closed connection to service public
Apr  9 07:21:21 LDAP1 smbd[8224]: [2013/04/09 07:21:21.930360,  0] lib/util_sock.c:474(read_fd_with_timeout)
Apr  9 07:21:21 LDAP1 smbd[8224]: [2013/04/09 07:21:21.930397,  0] lib/util_sock.c:1441(get_peer_addr_internal)
Apr  9 07:21:21 LDAP1 smbd[8224]:   getpeername failed. Error was Transport endpoint is not connected
Apr  9 07:21:21 LDAP1 smbd[8224]:   read_fd_with_timeout: client 0.0.0.0 read error = Connection reset by peer.
Apr  9 07:21:41 LDAP1 slapd[8024]: SASL [conn=1007] Failure: realm changed: authentication aborted


Si je comprend bien les logs, il me dit que pdupont s'est bien authentifié et qu'il a bien exécuté le fichier logon.bat (qui lui monte un lecteur réseau)... Après euu je sais pas trop ce qu'il me dit après...

Autre petit test avec pdbedit:
root@LDAP1:/home# pdbedit -ps pdupont
.
.
.
Unix username:        pdupont
NT username:          pdupont
Account Flags:        [U          ]
User SID:             S-1-5-21-3091653575-768054912-1803786876-3020
Primary Group SID:    S-1-5-21-3091653575-768054912-1803786876-513
Full Name:            pdupont
Home Directory:       \\%L\pdupont
HomeDir Drive:        H:
Logon Script:         logon.bat
.
.
.


Vous voyez dans le Home Directory, il ne me traduit pas la variable %L (qui est sensé retourner le netBios du serveur) alors qu'il traduit bien le %U en pdupont (enfin si toutefois Home Directory est bien la traduction de logon home dans smb.conf bien sur... ).
Du coup dans mon smb.conf, j'ai remplacé %L par le netBios du serveur, sans succès....

Un petit coup d'aide ferait plaisir, merci d'avance... :'(

3 réponses

  1. Résolu!

    En fait comme j'utilise samba couplé à openldap j'ai installé un module nommé smbldap-tools, or ce dernier contient un fichier de conf (smbldap.conf) qui prend le pas sur smb.conf pour certains truc... et évidement il prenait le pas pour le home directory et le login path avec la varible %L, apparemment il ne saurait pas la traduire en nom netbios et du coup j'ai juste du virer ce %L et remplacé par le netbios du serveur et ça roule!!!

    PS: bien penser à faire un pdbedit -p "" -h "" -u utilisateur sur tous les utilisateurs précédemment créés car leur home dir et login path ne seront pas mis à jour!
    1
    1. Contributeur
      Salut,

      Merci du retour, c'est sympa ;-))
      0
    2. No souci, j'ai galéré 2 jours la dessus ça pourra en aider plus d'un :p
      0
    3. OK super, merci pour la soluce
      0
  2. Salut,

    Pour le fait qu'il n'ouvre pas ton profil existant, c'est sûrement dû au fait que windows7 utilise <nomDUtilisateur>.v2 comme profil.
    Bon là il devrait te créer celui qui porte le nom de l'user, même s'il le fait il ne pourra pas le récupérer sous w7.

    Je pense que ça sera résolus en modifiant l'attribut sambaProfilePath de ton user dans le ldap pour les comptes existant et le "logon path" dans smb.conf...

    Pour ton %L, je ne sais pas trop... je sais plus où il va le chercher.
    Est-ce que tu as bien "netbios name = <tonServeur>" dans smb.conf ?

    Ivy
    0
    1. Pour ton %L, je ne sais pas trop... je sais plus où il va le chercher.    
      Est-ce que tu as bien "netbios name = <tonServeur>" dans smb.conf ?

      Oui ! :)

      Sinon j'ai résolu le problème avec pdbetdit -p "" -u pdupont.
      Le problème c'est que en regardant tous mes utilisateur avec pdedit je me suis rendu compte que les chemins étaient tous bien pris en compte pour les comptes machines (marqués machine$) mais pas pour les utilisateurs... En fait il transforme bien le %L en nom netbios pour les machines mais pas pour les utilisateurs...
      Une idée?

      Exemple:
      Compte utilisateur:
      init_sam_from_ldap: Entry found for user: test  
      ---------------  
      Unix username:        test  
      NT username:          test  
      Account Flags:        [U          ]  
      User SID:             S-1-5-21-3099663545-768056912-1803786076-3024  
      init_group_from_ldap: Entry found for group: 513  
      Primary Group SID:    S-1-5-21-3099663545-768056912-1803786076-513  
      Full Name:            test  
      Home Directory:       \\%L\test  
      HomeDir Drive:        H:  
      Logon Script:         logon.bat  
      Profile Path:         \\%L\profiles\test  
      Domain:               LOL  
      Account desc:  
      Workstations:  
      Munged dial:  
      Logon time:           0  
      Logoff time:          never  
      Kickoff time:         never  
      Password last set:    Tue, 09 Apr 2013 10:13:23 UTC  
      Password can change:  Tue, 09 Apr 2013 10:13:23 UTC  
      Password must change: never  
      Last bad password   : 0  
      Bad password count  : 0  
      Logon hours         : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF  
      


      Machines:
      init_sam_from_ldap: Entry found for user: mme$  
      ---------------  
      Unix username:        mme$  
      NT username:          mme$  
      Account Flags:        [W          ]  
      User SID:             S-1-5-21-3099663575-768456912-1803786076-1002  
      init_group_from_ldap: Entry found for group: 515  
      init_group_from_ldap: Entry found for group: 515  
      Primary Group SID:    S-1-5-21-3099663575-768456912-1803786076-515  
      Full Name:            MME$  
      Home Directory:       \\ldap1\mme_  
      HomeDir Drive:        H:  
      Logon Script:         logon.bat  
      Profile Path:         \\ldap1\profiles\mme_  
      Domain:               LOL  
      Account desc:         Computer  
      Workstations:  
      Munged dial:  
      Logon time:           0  
      Logoff time:          never  
      Kickoff time:         never  
      Password last set:    Mon, 08 Apr 2013 12:00:09 UTC  
      Password can change:  Mon, 08 Apr 2013 12:00:09 UTC  
      Password must change: never  
      Last bad password   : 0  
      Bad password count  : 0  
      Logon hours         : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF  
      
      0