Bonjour à tous !
J'ai mis en place un serveur AD sous Win2008 R2, dans lequel j'ai créé des utilisateurs.
Pour le serveur de mails, je fais confiance à cette bonne vielle Debian 6, avec Postfix et Dovecot.
Mais voila, j'ai un problème d'authentification sous Dovecot.
Je précise que j'ai "dédié" un utilisateur (vmail) pour la connection à l'annuaire AD.
En premier lieu, voilà mon fichier dovecot-ldap.conf :
hosts = dc.domaineinterne.lan:389
ldap_version = 3
auth_bind = yes
dn = DOMAINEINTERNE\vmail
dnpass = mdp_vmail
base = dc=domaineinterne,dc=lan
scope = subtree
deref = never
user_filter = (&(userPrincipalName=%u)(objectClass=person)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))
pass_filter = (&(userPrincipalName=%u)(objectClass=person)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))
user_attrs = =home=/home/mail/%Ld/%Ln/Maildir/,=mail=maildir:/home/mail/%Ld/%Ln/Maildir/
pass_attrs = userPassword=password
default_pass_scheme = CRYPT'''
Que l'utilisateur AD soit dans le groupe Users ou dans une Unité d'Organisation (UO), lors d'une tentative de login à Dovecot en Telnet, cela ne passe pas.
Alors que, lorsque je fais la même tentative sur un utilisateur qui se trouve dans le groupe Users, cela fonctionne, si, et seulement si, dans le dovecot-ldap.conf, la base est remplacée par base = cn=users,domaineinterne,dc=lan. Lors d'une telle configuration de Dovecot, la recherche de l'utilisateur se trouvant dans une UO est un echec.
En revanche, si je met base = cn=nomdemaUO,dc=domaineinterne,dc=lan, il ne trouvera, évidemment que l'utilisateur se trouvant dans l'UO.
Ce que je recherche ici, c'est la "possibilité" pour Dovecot de faire une recherche "récursive" à partir de la racine de mon domaine interne en ne mettant que base= dc=domaineinterne,dc=lan et de ce fait, qu'il aille rechercher les utilisateurs dans l'arborescence, quelque soit le dossier où il puisse se trouver.
A noter que la recherche dans l'annuaire avec cette commande fonctionne parfaitement, quelque soit l'emplacement de mon utilisateur :
ldapsearch -x -b 'dc=domaineinterne,dc=lan' -D 'DOMAINEINTERNE\vmail' -h dc.domaineinterne.lan -p 389 -W "(&(userPrincipalName=user@domainepublique.fr)(objectClass=person)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))"
Merci de m'avoir lu jusqu'ici :)
Et merci par avance de vos réponses.
Nicolas
# OU n'existe pas, cn=Users si
Posté par NeoX . Évalué à 2.
je dis peut-etre une betise mais
une OU (Organizational Unit) est une pseudo branche.
les utilisateurs sont reellement dans cn=Users
de plus dans la config dovecot-ldap.conf
tu filtres l'utilisateur, soit, mais tu filtres sont mot de passe avec le meme filtre
du coup, c'est peut-etre ca qui ne marche pas et qui refuse du coup la connexion.
[^] # Re: OU n'existe pas, cn=Users si
Posté par nicoalsfo . Évalué à 1. Dernière modification le 23 avril 2012 à 16:20.
Tu m'as fait penser à je ne sais pas quoi, du coup, j'ai testé un truc :
A la racine de mon domaine, j'ai une OU (OU1), dans cette OU, j'ai fait une seconde OU (OU2), j'ai placé mon utilisateur vmail dans cette OU, et un autre utilisateur dans chaqune des OU. Un schéma vaut mieux qu'un long discours :
Je configure Dovecot comme ceci : base = ou=OU1,dc=domaineinterne,dc=lan .
Tous les utilisateurs passent l'authentification. Cela voudrait dire que, si base est configuré à la racine du domaine, aucune recherche n'est faite.. Y aurait-il une restriction de ce côté ?
Faut-il que je mette mon domaine dans une OU pour commencer à travailler ? genre :
Merci :)
[^] # Re: OU n'existe pas, cn=Users si
Posté par NeoX . Évalué à 2.
une histoire de scope (de portée de la recherche)
d'apres : http://www.zytrax.com/books/ldap/apd/
toi apparemment dans ton dovecot-ldap tu utilise le scope "subtree"
peut-etre une piste à suivre…
# Ca ne fonctionne pas :/
Posté par nicoalsfo . Évalué à 1.
J'ai modifié le paramètre scope avec ce que tu donnes ou même avec ce que le site donne, et Dovecot ne les reconnait pas.
Après recherches, il semblerait que l'option du paramètre adaptée à ce que je recherche est en fait bel et bien subtree.
J'ai fait un test, et créé une OU qui a un nom "général" (le nom de ma boite) et derrière, j'ai glissé/déposé mes OU que j'avais à la racine de mon domaine dedans : cela fonctionne…
Il doit commencer sa recherche subtree à partir du moment où dans base, je précise une OU, comme ceci : base = ou=monentreprise,dc=domaineinterne,dc=lan. Je ne trouve pas cette solution très propre…
N'y a-t-il pas possibilité de commencer le subtree avec une base comme base=domaineinterne,dc=lan ??
Voila, je pleure :)
Merci à vous :)
[^] # Re: Ca ne fonctionne pas :/
Posté par nicoalsfo . Évalué à 0.
Enfin, c'est pas un test que j'ai fait, vu que c'était ma piste précédente, juste que pour le moment, il n'y à que cela qui fonctionne…
Problème de concentration ^
# Debian Lenny avec PAM
Posté par Floris DUBREUIL . Évalué à 1.
J'utilise ce type de script avec Dovecot :
J'en ai créé un second pour Postfix, formaté différemment, pour chercher les alias dans les groupes AD d'une OU définie.
[^] # Re: Debian Lenny avec PAM
Posté par NeoX . Évalué à 2.
c'est vrai qu'utiliser PAM peut aussi simplifier la vie de ce coté là.
configurer PAM_LDAP pour aller chercher les utilisateurs/passe dans le ldap
configurer (ou laisser par defaut) dovecot pour lui dire d'utiliser PAM
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.