Generowanie map użytkowników programu Postfix z katalogu LDAP

Serwer pocztowy Postfix może korzystać z map katalogowych udostępnianych przez usługę katalogową LDAP. Dzięki temu w jednym miejscu możemy trzymać informacje o naszych użytkownikach, domenach itp.

Instalacja oprogramowania

Debian

Z względów praktyczno-leniwych polecam używanie dystrybucji umożliwiających instalację oprogramowania z pakietów. Przykładem takiej dystrybucji jest Debian . W tej dystrybucji musimy zainstalować pakiet o nazwie postfix-ldap, po jego instalacji program będzie już wspierał pobieranie map z serwerów LDAP

Centos 6

Standardowy pakiet postfix „postfix”

Mapa virutal  z katalogu LDAP

Spis domen obsługiwanych z katalogu LDAP można odczytywać w Postfix następująco:

#cat /etc/postfix/ldap_domains.cf
server_host=ldap://127.0.0.1
server_port=389
search_base = ou=Domains,dc=linuxexpert,dc=pl
query_filter = (&(ObjectClass=dNSDomain)(dc=%s))
result_attribute=dc
debuglevel=0
version=3
bind=yes
bind_dn="cn=Manager,dc=linuxexpert,dc=pl"
bind_pw=XXX

Nastomiast informacje o użytkownikach:

[root@vz13505 postfix]# cat ldap_users.cf
server_host=ldap://127.0.0.1
server_port=389
search_base = dc=linuxexpert,dc=pl
query_filter=(mail=%s)
result_attribute=uid
debuglevel=0
version=3
bind=yes
bind_dn="cn=Manager,dc=unix4you,dc=net"
bind_pw=XXX

Testowanie pobierania danych z katalogu LDAP

Polecenie postmap z przełącznikiem -q (query) umożliwia sprawdzanie czy w podanej mapie istnieje podany podany wpis.

postmap -q "krzysztof.jozwiak@linuxexpert.pl" ldap:/etc/postfix/ldap/local_recipents.cf

Testowanie poleceniem ldapsearch 

Testować można również sam katalog ldap, czy mamy poprawne dane:

ldapsearch -x -h localhost -b "dc=pracownicy,dc=linuxexpert,dc=pl" "(&(objectclass=CourierMailAccount)(mail=alexandra.jozwiak@linuxexpert.pl))"

ldapsearch -x  -h localhost -b "ou=workers,dc=lab2,dc=linuxexpert,dc=pl" -LLL  "mail=*" mail

W Internecie

Dodaj komentarz