Estou tentando fazer o dovecot 2.0.19 autenticar usuários via LDAP (OpenLDAP 2.4.28) e usando o Wireshark para depurar o processo. Parece que a configuração básica do dovecot é boa, mas não é possível enviar a solicitação correta para o servidor LDAP. Primeiro de tudo, é assim que minhas entradas LDAP aparecem:
# ht
dn: dc=ht
objectClass: top
objectClass: dcObject
objectClass: organization
o: ip
dc: ht
# admin, ht
dn: cn=admin,dc=ht
objectClass: simpleSecurityObject
objectClass: organizationalRole
cn: admin
description: LDAP administrator
userPassword:: e1NTSEF9cFY1b0ZZVUhack1aRTVvaUg1T3c2cytVWHV4aUNvaHI=
# people, ht
dn: ou=people,dc=ht
objectClass: organizationalUnit
objectClass: top
ou: people
# groups, ht
dn: ou=groups,dc=ht
objectClass: organizationalUnit
objectClass: top
ou: groups
# ipusers, groups, ht
dn: cn=ipusers,ou=groups,dc=ht
gidNumber: 500
cn: ipusers
objectClass: posixGroup
objectClass: top
# Max Mustermann, people, ht
dn: cn=Max Mustermann,ou=people,dc=ht
cn: Max Mustermann
givenName: Max
gidNumber: 500
homeDirectory: /home/users/mmustormann
sn: Mustermann
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: top
uidNumber: 1000
uid: mmustermann
userPassword:: e01ENX1ETUYxdWNEeHRxZ3h3NW5pYVhjbVlRPT0=
loginShell: /bin/bash
mail: [email protected]
Agora, eu uso a seguinte configuração para o dovecot:
hosts = 10.1.2.1
dn = cn=admin,dc=ht
dnpass = a
auth_bind = yes
auth_bind_userdn = uid=%u,ou=people,dc=ht
ldap_version = 3
scope = subtree
base = ou=people,dc=ht
user_attrs = homeDirectory=home,uidNumber=uid,gidNumber=gid
user_filter = (&(objectClass=posixAccount)(uid=%u))
pass_attrs = uid=user,userPassword=password
pass_filter = (&(objectClass=posixAccount)(uid=%u))
Agora o que vejo no Wireshark:
ODovecotnãopodeseautenticarporalgummotivo...
Seeualteraraconfiguraçãodaseguinteforma:
auth_bind=no#auth_bind_userdn=uid=%u,ou=people,dc=ht
Entãoeureceboaseguintefoto:
Elenãoselecionaaconfiguraçãobase=ou=people,dc=ht
.Masomaisimportanteéque,mesmoolhandoparaaárvoreinteira"<ROOT>" wholeSubTree
, ela não consegue encontrar a entrada necessária.
Estou realmente desesperada e não sei como fazer isso funcionar. Eu realmente só preciso fazer isso funcionar de alguma forma.