Rechercher : dans
Par :

Samba/ldap

Dernière réponse le 22 jun 2007 à 11:54:07 emilie, le 20 jun 2007 à 15:18:29 
 Signaler ce message aux modérateurs

Bonjour à tous.

Je souhaite depuis un PC windows accéder à un répertoire d'un serveur linux via samba.
L'utilisateur windows doit non pas avoir un compte unix correspondant mais un "compte ldap" correspondant.
Je souhaite de plus synchroniser les changements de mot de passe Windows / LDAP.
Ma question est la suivante : au niveau du fichier ldif permettant de déclarer cet utilisateur windows, mis à part le mot de passe NT, quelles données sont obligatoires pour que cela fonctionne?
Dans quel attributtype dois-je mettre le login de la machine windows?
Par ailleurs comment est-ce possible que lorsque je change mon mot de passe windows, cela fasse appel au fichier smb.conf afin de changer de manière synchrone le mot de passe dans ldap?
Je ne suis peut être pas très claire mais c'est parce que j'ai du mal à comprendre le fonctionnement de samba/ldap.
Quelqu'un aurait-il déjà effectué le même genre de configuration et pourrait-il m'aider?
Pour info, je suis sous windows XP pro 2002 et sous redhat.
Merci d'avance.

Emilie

Meilleures réponses pour « samba/ldap » dans :
Installation serveur Samba VoirInstallation et configuration d'un serveur Samba version 3.0.2a Linux Mandrake version 10.0 Prérequis Introduction 1.Architecture de Samba 2.Installation des paquetages nécessaires au serveur samba Premier démarrage de Samba Les commandes...
PHP - Connexion à un annuaire LDAP VoirIntroduction à LDAP PHP permet la connexion et l'envoi de requêtes sur un annuaire LDAP, c'est-à-dire un serveur permettant de stocker des informations de manière hiérarchique. Un serveur LDAP est conçu pour être capable de gérer les opérations...
Le protocole LDAP VoirIntroduction à LDAP LDAP (Lightweight Directory Access Protocol, traduisez Protocole d'accès aux annuaires léger et prononcez "èl-dap") est un protocole standard permettant de gérer des annuaires, c'est-à-dire d'accèder à des bases d'informations...
Configuration du serveur LDAP (OpenLDAP) VoirIntroduction à LDAP Avant de commencer la configuration, il est conseillé d'établir l'inventaire des objets et des informations à stocker dans l'annuaire. Dans le cadre de cet article, nous nous intéresserons à une gestion centralisée des carnets...

1

emilie, le 20 jun 2007 à 15:55:24

Afin de réaliser ce que j'ai décrit dans le post ci-dessus, j'ai effectué ceci :

Configuration du client windows :

Pour créer le compte machine, le login du compte doit être le nom de machine avec un $ à la fin.

le fichier LDIF est de la forme suivante:

dn: cn=adrastee$,ou=machines,o=free-4ever,dc=net
objectClass: top
objectClass: person
objectClass: posixAccount
cn: adrastee$
sn: adrastee$
uid: adrastee$
uidNumber: 20002
gidNumber: 20000
loginShell: /bin/false
homeDirectory: /dev/null

Puis on le rend compatible avec Samba grâce à la commande smbpasswd en tapant la commande suivante:

smbpasswd -a -m adrastee$

A ce moment-là, j'ai :
connection to LDAP Server failed
smbldap_search: LDAP server is down!

Pourtant mon serveur tourne!!!

Je ne comprends pas.

Emilie

Répondre à emilie

2

Maillon, le 20 jun 2007 à 16:15:23

Donc tu as ton problème quand tu ajoute la machine a samba c'est ça ?
Dans ton smb.conf est ce que tu précise bien que tu utilise un serveur ldap ?
As tu essayer de faire un ldapsearch pour voir si tu avais des entrées déjà dans ta base ldap ?

Tiens va voir la dessus c'est un lien que j'aime bien ya pas mal de chose expliqué :
http://villar.m.free.fr/mp.htm#_Toc99421773
http://www.supinfo-projects.com/en/2003/sambaldap/6/

Répondre à Maillon

3

emilie, le 20 jun 2007 à 16:30:46

Bonjour Maillon.

Voici mon fichier smb.conf :

[global]
workgroup = domaine_Info
server string = Samba Server LDAP
hosts allow = adresse IP du PC windows
log file = /var/log/samba/%m.log
max log size = 50
security = share
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
local master = yes
os level = 35
domain master = yes
preferred master = yes
domain logons = yes
logon script = %m.bat
logon script = %U.bat
logon path = \\%L\Profiles\%U
name resolve order = wins lmhosts bcast
dns proxy = no

passdb backend = ldapsam:ldap://localhost
ldap admin dn = cn=root,dc=toto,dc=fr
ldap suffix = dc=toto,dc=fr
ldap machine suffix = ou=machines
ldap user suffix = ou=utilisateurs
ldap ssl = no
ldap passwd sync = yes

#============================ Share Definitions ==============================
[homes]
comment = Repertoire personnel
browseable = no
writable = yes

[LDAP]
path = /var/lib/ldap
comment = base de données de l'annuaire LDAP
browseable = yes
read only = yes
valid users = emilie
allow hosts = adresse IP PC windows


[partage]
path = /home/share/
public = no
writable = yes
browseable = yes
valid users = emilie,inf-15,administrateur


Le ldapsearch fonctionne parfaitement. Il me renvoie des données correctes.

Emilie

Répondre à emilie

4

emilie, le 21 jun 2007 à 08:56:58

Dans mon fichier smb.conf, j'ai changé la ligne :
passdb backend = ldapsam:ldap://localhost
et l'ai remplacée par :
passdb backend = ldapsam:ldap://adresse IP serveur ldap

A partir de ce moment, lorsuq'ne ligne de commande je tape :

smbpasswd -a -m inf-15$

je n'ai plus les lignes serveur ldap mais j'ai uniquement les lignes d'erreur suivantes :

failed initialise SAM_ACCOUNT for user inf-15¤
failed to modify password entry for user inf-15$

Avez-vous une idée?
D'avance merci.

Emilie

Répondre à emilie

5

jipicy, le 21 jun 2007 à 09:37:25

Avec quel utilisateur tapes-tu ta commande ?
Si "root", est-il déclaré comme utilisateur Samba (smbpasswd –a root;) ?
Z'@+...che.

JP : Zen, my Nuggets ! ;-)
Le savoir n'est bon que s'il est partagé.

Répondre à jipicy

6

emilie, le 21 jun 2007 à 09:41:49

J'ai trouvé l'erreur !!!

Dans mon fichier /etc/ldap.conf, mes nss_base_passwd, nss_base_shadow et nss_base_group étaient trop restrictifs par rapport à mon arborescence d'annuaire (le groue machine n'était pas compris dedans).
En revanche, malgré cela, je n'arrive toujours pas à me connecter depuis mon PC windows au partage samba...
Il doit encore manquer des informations...

Emilie

Répondre à emilie

7

jipicy, le 21 jun 2007 à 09:45:12

T'as essayé la commande :

testparm
...
Z'@+...che.
JP : Zen, my Nuggets ! ;-)
Le savoir n'est bon que s'il est partagé.

Répondre à jipicy

8

emilie, le 21 jun 2007 à 10:02:13

Oui.
A priori c'est ok, il me met :
loaded services file OK.
Server role: ROLE_DOMAIN_PDC
Press enter to see a dump of your service definitions.


J'ai configuré dans smb.conf le serveur en tant que PDC car c'était apparemment obligatoire pour synchroniser les mots de passe par contre, nul part ailleurs je n'ai défini ce serveur comme PDC. Est-ce que cela pourrait être la cause du problème?

Emilie

Répondre à emilie

9

emilie, le 21 jun 2007 à 13:01:23

J'ai trouvé !!!

C'est mon sambaSID qui était incorrect dans les attributs de mon utilisateur windows entré dans ldap.
Je parviens maintenant à accéder à mon partage.
En revanche, si je change mon mot de passe windows je n'accède plus au partage et ce malgré le ldap password sync de mon fichier smb.conf
Ce n'est donc pas encore terminé mais je progresse.

Emilie

Répondre à emilie

10

emilie, le 21 jun 2007 à 13:50:37

Lorsque l'on souhaite joindre un PC Windows à un domaine d'un contrôleur de domaine linux basé sur samba et ldap, quel est le nom d'utilisateur que l'on doit entrer.
Est-ce celui de la machine ou celui d'un utilisateur?
(pour l'instant aucun des deux ne fonctionne, on me dit : utilisateur ou mot de passe incorrect...).
Merci.

Emilie

Répondre à emilie

11

emilie, le 21 jun 2007 à 16:49:39

J'ai maintenant réussi à rattacher ma machine windows au domaine (il fallait pour cela que l'utilisateur de ma machine windows soit admin du domaine : dans smb.conf mettre admin users = cn_utilisateur_windows).
J'ai redémarré la machine windows pour que les modifs soient prises en compte.
Le problème est que quand je veux me connecter au domaine, j'ai le message suivant :
impossible de se connecter au domaine car un périphérique rattaché au domaine ne fonctionne pas correctement.

Quelqu'un a-t-il une idée?

D'avance merci.

Emilie qui galère

Répondre à emilie

12

emilie, le 22 jun 2007 à 09:50:46

J'aurais besoin d'une confirmation.
Pour connaître le nom netbios d'une machine, il faut bien taper la commande hostname?
Merci.

Emilie

Répondre à emilie

13

emilie, le 22 jun 2007 à 10:11:23

Quand dans mon fichier smb.conf, j'active la ligne :
netbios name = résultat_de_la_cmde_hostname,

Mon domaine n'est plus joignable depuis la machine windows.
Quand j'enlève cette ligne et que je veux joindre ma machine windows au domaine, on me dit "bienvenu dans le domaine domaine_info", veuillez redémarrer la machine.
Lorsque la machine redémarre et que je tente de me logger au domaine, on me dit que c'est impossible car un périphérique attaché au domaine ne fonctionne pas correctement...

Please, help.

Emilie

Répondre à emilie

14

poumiZ, le 22 jun 2007 à 10:23:44
  • +1

Bonjour,
sous windows, tape la commande

nbtstat -a <@IP_de_ton_serveur>

Ca devrait t'indiquer le nom NetBIOS

Répondre à poumiZ

15

emilie, le 22 jun 2007 à 10:36:28

Merci poumiZ !

J'ai le résultat suivant :

Nom Type Etat

LDAP <00> UNIQUE INSCRIT
LDAP <03> UNIQUE INSCRIT
LDAP <20> UNIQUE INSCRIT
.._MSBROWSE_. <01> GROUPE INSCRIT
DOMAINE_INFO <00> GROUPE INSCRIT
DOMAINE_INFO <1B> UNIQUE INSCRIT
DOMAINE_INFO <1C> GROUPE INSCRIT
DOMAINE_INFO <1D> UNIQUE INSCRIT
DOMAINE_INFO <1E> GROUPE INSCRIT

Est-ce normal d'avoir toutes ces lignes?
Le nom netbios est-il ldap ou domaine_info?

Encore merci en tous cas.

Emilie

Répondre à emilie

17

emilie, le 22 jun 2007 à 11:01:45

J'ai pris ldap comme nom netbios et c'est ok, il a trouvé le domaine.
Par contre ça n'a rien changé, j'ai toujours le même message (message erreur 31 de windows XP : un périphérique attaché au domaine ne fonctionne pas correctement

Pas clair...

Emilie

Répondre à emilie

16

poumiZ, le 22 jun 2007 à 11:01:42

C'est normal d'avoir ttes ces lignes:
le nom netBIOS de ta machine est LDAP, le nom de ton domaine est DOMAINE_INFO.
<1B> unique signifie que ton serveur est Maître Explorateur du Domaine
<1C> unique signifie que ton serveur est un des Contrôleurs de Domaine

Répondre à poumiZ

18

poumiZ, le 22 jun 2007 à 11:46:45

Où en es-tu exactement. As-tu joint ta machine windows à ton domaine . Quel est ton PDC ?

Répondre à poumiZ

19

emilie, le 22 jun 2007 à 11:50:34

Mon PDC est la machine samba/ldap (je l'ai définie comme PDC seulement au niveau de smb.conf, y a-t-il un autre endroit où il faut le définir comme PDC)?
Je viens juste de poster un autre message à ce sujet qui reprend tout depuis le début afin d'être plus clair.
On y trouve notamment mon smb.conf actuel.
Je n'ai toujours pas réussi à me connecter à mon domaine depuis mon PC windows hélas.

Emilie

Répondre à emilie

20

 emilie, le 22 jun 2007 à 11:54:07

Oui je pense avoir joint ma machine à mon domaine(dans l'annuaire ldap j'ai créer une entrée du genre :

dn: cn=inf-15$,ou=machines,o=free-4ever,dc=net
objectClass: top
objectClass: person
objectClass: posixAccount
cn: inf-15$
sn: inf-15$
uid: inf-15$
uidNumber: 20002
gidNumber: 20000
loginShell: /bin/false
homeDirectory: /dev/null

inf-15 étant le nom de ma machine windows.

Est-ce suffisant?

Emilie

Répondre à emilie
Collection CommentÇaMarche.net