[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Probleme bei Auslagerung von LDAP Konfiguration für Postfix



Hi.

Ich bin gerade dabei einen neuen Mailserver aufzusetzen. Ich möchte
diesen wieder mit Postfix als Mailserver
und LDAP für die Userbasis nutzen. Soweit kein Problem, wenn ich nicht
versuchen würde die LDAP spezifischen
Konfigurationen aus Platz- und Lesbarkeitsgründen in eigene
Konfigurationsdateien zu packen.

Zum System:
* Debian 5.0 64bit stable
* Postfix 2.5.5-1.1
* dspam 3.6.8-9
* slapd 2.4.11-1

Konfiguration:
In der main.cf habe referenziere ich das virutelle Mapping via:
-- snip --
virtual_mailbox_maps = ldap:/etc/postfix/ldap-virtual-maps.cf
-- snap --

Die referenzierte ldap-virtual-map.cf enthält in etwas folgendes (hab
die Bind-Werte mal etwas anonymisiert):
-- snip --
server_host = ldap://127.0.0.1
server_port = 389
version = 3
bind = yes
bind_dn = cn=mail,ou=some-group,dc=my-server,dc=org
bind_pw = secr3tP4ss
search_base = ou=Users,dc=my-server,dc=org
query_filter =
(&(|(mail=%s)(mailAlternateAddress=%s))(|(AccountStatus=active)(accountStatus=shared)))
result_attribute = mailMessageStore
-- snap --

OK. Wenn ich nun mit ldapsearch die Angaben mit folgender Befehlszeile
prüfe (wieder etwas anonymisiert):
-- snip --
ldapsearch -x -H ldap://127.0.0.1 -D
"cn=mail,ou=some-group,dc=my-server,dc=org" -W -b
"ou=Users,dc=my-server,dc=org"
"(&(|(mail=mail@example.com)(mailAlternateAddress=mail@example.com))(|(AccountStatus=active)(accountStatus=shared)))"
mailMessageStore
-- snap --

... erhalte ich auch das erwartete Ergebnis:
-- snip --
[...]
# search result
search: 2
result: 0 Success

# numResponses: 2
# numEntries: 1
-- snap --

Bedeutet, es wurde exakt ein Eintrag gefunden.

Wenn ich nun mit postmap prüfe, ob Postfix das auch so sieht, erhalte ich:
-- snip --
host:/etc/postfix# postmap -q mail@example.com ldap:ldap-virtual-maps.cf
postmap: warning: dict_ldap_lookup: ldap-virtual-maps.cf: Search base ''
not found: 32: No such object
-- snap --

Aber die Search-Base ist angegeben?! Und die restlichen Daten passen ja
auch, habe diese ja kopiert und mittels ldapsearch verifiziet.

Und wenn ich die Konfiguration so in die main.cf baue (also ohne externe
Konfigurationsdatei), funktioniert es:
-- snip --
virtual_mailbox_maps = ldap:ldap-virtual-maps
ldap-virtual-maps_server_host = ldap://127.0.0.1
ldap-virtual-maps_server_port = 389
ldap-virtual-maps_version = 3
ldap-virtual-maps_bind = yes
ldap-virtual-maps_bind_dn = cn=mail,ou=some-group,dc=my-server,dc=org
ldap-virtual-maps_bind_pw = secr3tP4ss
ldap-virtual-maps_search_base = u=Users,dc=my-server,dc=org
ldap-virtual-maps_query_filter =
(&(|(mail=%s)(mailAlternateAddress=%s))(|(AccountStatus=active)(accountStatus=shared)))
ldap-virtual-maps_result_attribute = mailMessageStore
-- snap --

-- snip --
host:/etc/postfix# postmap -q mail@example.com
/vmail/mailuser/Maildir/
-- snap --

Hat jemand eine Idee, woran das liegen kann?

So long,
Holger

Attachment: signature.asc
Description: OpenPGP digital signature


Reply to: