April 18, 2013

Courier IMAP und LDAP

Courier IMAP und LDAP

Einleitung

Manch einer mag sich gewundert haben, wie es nach der Einrichtung unseres Mailservers wohl weitergehen könnte. Nun, nachdem wir erfolgreich unseren Mailserver mit einem LDAP Dienst verheiratet und erfolgreich eMails für unsere Benutzer empfangen können wird es Zeit, die empfangenen Mails auch dem Benutzer zum Lesen zur Verfügung zu stellen. In diesem Follow Up widmen wir uns also der Einrichtung eines IMAP Servers. Als Software kommt Courier IMAP zum Einsatz, dessen Kommunikation wir mittels SSL absichern werden.

Installation

Wie gewohnt ist die Installation von Courier IMAP unter Debian bzw. Ubuntu und Derivaten schnell erledigt.

aptitude install courier-imap-ssl courier-authlib-ldap

Sie werden gefragt, ob Sie die Verzeichnisse für die Web-Administration erstellen lassen möchten. Sagen Sie „Nein„.

Konfiguration

Zur besseren Lesbarkeit werde ich in den folgenden Listings nur die Optionen beschreiben die angepasst werden müssen. Die Details zur LDAP Konfiguration basieren auf dem Artikel Postfix und LDAP – Part 2: Struktur erstellen und müssen an Ihr System angepasst werden.

/etc/courier/authdaemonrc
authmodulelist="authldap"
/etc/courier/authldaprc
LDAP_URI                ldap://127.0.0.1:389
LDAP_PROTOCOL_VERSION   3
LDAP_BASEDN             dc=testlab,dc=local
LDAP_TIMEOUT            5
LDAP_AUTHBIND           1
LDAP_MAIL               uid
LDAP_GLOB_UID           vmail
LDAP_GLOB_GID           vmail
LDAP_HOMEDIR            mailMessageStore
LDAP_MAILDIR            mailMessageStore
LDAP_FULLNAME           cn
LDAP_CRYPTPW            userPassword
LDAP_UID                qmailUID
LDAP_GID                qmailGID
/etc/courier/imapd-ssl

Für die Kommunikation mit Courier IMAP per SSL muss ein geeignetes Zertifikat verwendet werden. Courier IMAP erstellt bei der ersten Einrichtung ein selbstsigniertes Zertifikat. Wer eigene Zertifikate verwenden will muss die Option TLS_CERTFILE entsprechend anpassen. Eine Anleitung zum Erstellen eigener selbstsignierter Zertifikate finden Sie im Artikel Am Anfang war das Zertifikat.

SSLPORT=993
SSLADDRESS=0
SSLPIDFILE=/var/run/courier/imapd-ssl.pid
SSLLOGGEROPTS="-name=imapd-ssl"
IMAPDSSLSTART=YES
IMAPDSTARTTLS=YES
IMAP_TLS_REQUIRED=0
TLS_CERTFILE=/etc/courier/courier.pem

Abschließende Tätigkeiten

Zum Abschluss müssen wir noch die Dienste für die Authentifizierung sowie Courier IMAP neu starten. Des Weiteren habe ich den unverschlüsselten Dienst beendet und mittels des letzten Kommandos dafür gesorgt, dass er auch nicht mehr selbstständig startet. Wer seinen Benutzern eine unverschlüsselte Möglichkeit zur Einsicht in Ihre Mails geben will kann die letzten Schritte auslassen, sollte sich aber im Klaren darüber sein, dass nicht nur Passwörter, sondern auch die Inhalte der Mails im Klartext durch das Internet rauschen!

/etc/init.d/courier-authdaemon restart
/etc/init.d/courier-imap-ssl restart
/etc/init.d/courier-imap stop
update-rc.d -f courier-imap remove

Fazit

In wenigen Minuten haben wir durch Courier IMAP unseren Maildienst um eine wichtige Funktion erweitert und unseren Benutzern die Möglichkeit gegeben über einen verschlüsselten Transport Mails empfangen zu können. Die Daten zu Authentifizierung und Mailablage kommen dabei, wie schon in unseren Postfix Artikeln, aus unserem LDAP Server und gibt uns so die Flexibilität, die man in großen Maildomains benötigt.