[Debian squeeze] Serveur postfix + dovecot LDA avec OpenLdap

Un annuaire LDAP (avec le schéma misc) est déjà en place, nous souhaitons monter un serveur de mail SMTP/IMAPS en s’appuyant sur l’authentification de l’annuaire LDAP :

apt-get install postfix postfix-ldap dovecot-imapd

Postfix

Tout d’abord /etc/postfix/main.cf :

<br />
smtpd_banner = $myhostname<br />
biff = no<br />
append_dot_mydomain = no<br />
readme_directory = no<br />
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem<br />
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key<br />
smtpd_use_tls=yes<br />
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache<br />
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache<br />
myhostname = hostname.zici.fr<br />
myorigin = /etc/mailname<br />
relayhost =<br />
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128<br />
mailbox_command = /usr/lib/dovecot/deliver<br />
mailbox_size_limit = 0<br />
recipient_delimiter = +<br />
inet_interfaces = all<br />
luser_relay =<br />
alias_maps = hash:/etc/aliases<br />
virtual_mailbox_domains = zici.fr, mercereau.info, liencontrelien.zici.fr<br />
virtual_alias_maps = hash:/www/zici/emailPoubelle/virtual<br />
dovecot_destination_recipient_limit = 1<br />
virtual_transport = dovecot<br />
mailbox_transport = dovecot<br />
dovecot_destination_recipient_limit = 1

Dans le fichier master.cf il suffit de rajouter la ligne suivante à la fin du fichier:

# Dovecot LDA<br />
dovecot unix - n n - - pipe flags=DRhu user=vmail:mail argv=/usr/lib/dovecot/deliver -f ${sender} -d ${recipient} -d ${user}

Dovecot

Il n’y a que 2 fichiers de conf, d’abord, /etc/dovecot/dovecot.conf

protocols = imap imaps<br />
log_timestamp = &quot;%Y-%m-%d %H:%M:%S &quot;<br />
mail_location = maildir:/var/mail/%n<br />
mail_uid = 500<br />
mail_gid = 8<br />
mail_privileged_group = mail<br />
protocol imap {<br />
imap_client_workarounds = outlook-idle<br />
}</p>
<p>protocol pop3 {<br />
pop3_uidl_format = %08Xu%08Xv<br />
}<br />
protocol managesieve {<br />
}<br />
protocol lda {<br />
postmaster_address = postmaster@zici.fr<br />
auth_socket_path = /var/run/dovecot/auth-master<br />
}<br />
auth default {<br />
mechanisms = plain login<br />
passdb pam {<br />
}<br />
passdb ldap {<br />
args = /etc/dovecot/dovecot-ldap.conf<br />
}<br />
userdb ldap {<br />
args = /etc/dovecot/dovecot-ldap.conf<br />
}<br />
user = root<br />
socket listen {<br />
master {<br />
path = /var/run/dovecot/auth-master<br />
mode = 0600<br />
user = vmail<br />
group = mail<br />
}<br />
}<br />
}<br />
dict {<br />
}<br />
plugin {<br />
}

et enfin /etc/dovecot/dovecot-ldap.conf

hosts = 127.0.0.1<br />
auth_bind = yes<br />
ldap_version = 3<br />
base = ou=Utilisateur,dc=zici,dc=fr<br />
user_attrs = uidNumber=500,gidNumber=8<br />
user_filter = (&amp;(objectClass=posixAccount)(cn=%n))<br />
pass_filter = (&amp;(objectClass=posixAccount)(cn=%n))<br />
default_pass_scheme = SSHA

Astuce pour tester les filtres utiliser la commande

 ldapsearch -x -h localhost -b "ou=Utilisateur,dc=zici,dc=fr" '(&(objectClass=posixAccount)(cn=Utilisateur))'

Source :

  • http://www.404blog.net/?p=36
  • http://monblog.system-linux.net/blog/2011/05/12/ajouter-des-schemas-dans-votre-annuaire-openldap-avec-debian-squeeze/
  • http://www.rjsystems.nl/en/2100-d6-openldap-provider.php

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.