Nachrichtenzentrale
Mails verwalten mit dem eigenen IMAP-Server
IMAPS konfigurieren
Ein Nachteil von IMAP liegt darin, dass Client und Server in Klartext kommunizieren. Insbesondere übertragen die Programme den Benutzernamen und das Passwort im Klartext. Das ermöglicht jedem, der die Kommunikation zum Beispiel über einen Netzwerksniffer (Tcpdump oder Wireshark) abhört, diese Daten abfangen und zu missbrauchen. Dies verhindern Sie, indem Sie IMAPS einsetzen, da beide Seiten dann verschlüsselt kommunizieren.
Dafür benötigen Sie OpenSSL, das aber die meisten Distributionen von Haus aus einrichten. Damit Dovecot mit IMAPS arbeitet, brauchen Sie zusätzlich ein Zertifikat. Haben Sie Dovecot über die Distributionsquellen installiert, ist das Zertifikat in der Regel bereits eingerichtet und Dovecot entsprechend konfiguriert.
Im Tarball liegt ein Skript zum Erstellen des Zertifikats. Es heißt mkcert.sh und findet sich im Unterverzeichnis doc unterhalb des Installationsverzeichnisses von Dovecot (im Beispiel /usr/local/dovecot). Die Variable SSLDIR enthält den Pfad zum SSL-Verzeichnis, in der Regel /etc/ssl. Bei Fedora gilt es dies jedoch in /etc/pki/tls im Skript zu ändern:
SSLDIR=${SSLDIR-/etc/pki/tls}
Das Skript mkcert.sh entnimmt die Zertifikatsinformationen aus der Datei dovecot-openssl.cnf im selben Verzeichnis. Diese Datei passen Sie entsprechend an, damit insbesondere der Servername (CN) stimmt. Anschließend erstellen Sie das Zertifikat über den einfachen Aufruf des Skripts. Während Sie das Zertifikat selbst unter /etc/ssl/certs/dovecot.pem (gegebenenfalls mit entsprechend angepasstem Pfad) speichern, erstellt das Skript automatisch den dazugehörigen privaten Schlüssel unter /etc/ssl/private/dovecot.pem. Nun ist es an der Zeit, Dovecot für IMAPS zu konfigurieren. Dazu passen Sie insbesondere die folgenden Parameter in dovecot.conf an:
ssl_disable = no ssl_cert_file = /etc/ssl/certs/dovecot.pem ssl_key_file = /etc/ssl/private/dovecot.pem
Starten Sie Dovecot nun neu, um die geänderte Konfiguration einzulesen. Anschließend lauscht das Programm auf den Ports 143 (für IMAP) und 993 (IMAPS) lauschen. Das testen Sie über den Befehl netstat -na in einem Terminal. Das Kommando zeigt die offenen Netzwerkports an und filtert die Zeilen aus, die den String 993 enthalten:
$ netstat -na | grep 993 tcp 0 0.0.0.0:993 0.0.0.0 listen
Auf dem Client richten Sie dann den Zugriff über IMAPS ein. Unter Evolution wählen Sie hierzu in den Eigenschaften des IMAP-Kontos im Register Abrufen von E-Mails unter Sicherheit die SSL-Verschlüsselung aus.
Schließen Sie nun den Client und starten Sie ihn erneut, um eine neue Verbindung zum IMAP-Server zu initiieren. Fortan kommunizieren Client und Server verschlüsselt über IMAPS. Das sichert zumindest das Übertragen des Benutzernamens und Passwortes. Da jedoch sowohl das Abholen der Mails durch Fetchmail als auch das Übertragen der Mails per SMTP in der Regel unverschlüsselt ablaufen, bleibt die elektronische Korrespondenz trotzdem nicht vor neugierigen Blicken geschützt. Hier hilft nur eine Software wie GPG oder PGP weiter, die den gesamten Inhalt der Mail verschlüsselt.
Fazit
Wer oft von verschiedenen Computern oder Terminals (PDA, Handy, Laptop) auf seine Mails zugreift, hat keine rechte Freude an POP3, da hier bei jedem Abruf alle Mails vom Server auf den lokalen Client wandern. Mit IMAP bleiben die Mails auf dem Server, und Sie behalten immer die Übersicht über Ihr Mailkonto – egal von welchem Mailclient Sie sich verbinden. Darüber hinaus laufen sogar erheblich weniger Daten über die Leitung, da der Server lediglich die Informationen an den Client schickt, die dieser zur Anzeigen benötigt.
In einem kleinen Heim-Netzwerk oder einem kleinen Firmennetz setzten Sie bereits mit relativ einfachen Mitteln ein solchen IMAP-Server auf. Dieser stellt neben den den persönlichen Mailkonten unter Umständen auch ein Sammelkonto bereit, dass mehrere Benutzern gleichzeitig verwalten. Möchten Sie sich näher mit den Möglichkeiten und Features von IMAP befassen, lohnt ein Blick auf einen Artikel unserer Schwesterpublikation Linux-Magazin [9].
Glossar
SMTP
Simple Mail Transfer Protocol (RFC821/2821). Protokoll zum Versenden und Weiterleiten von E-Mails.
POP3
Post Office Protocol v3 (RFC1939). Übertragungsprotokoll, über das ein Client Nachrichten von einem E-Mail-Server abholen kann. Eine ständige Verbindung zum Server ist nicht notwendig, die Mails werden auf dem Client gespeichert.
IMAP
Internet Message Access Protocol (RFC3501). Im Gegensatz zu POP3 verbleiben die Nachrichten bei IMAP auf dem Mailserver, weswegen zum Lesen und Verwalten der E-Mails eine dauerhaft Serververbindung notwendig ist. Manche IMAP-Clients arbeiten daher im Offline-Modus mit einer lokalen Kopie der Nachrichten.
Mbox
Ablageformat für E-Mails, bei der alle Nachrichten in einer großen Datei abgespeichert werden.
Maildir
Verzeichnisstruktur zur Ablage von E-Mails, bei der jede Nachricht in einer eigenen Datei gespeichert wird.
MTA
Mail Transfer Agent. Die Komponente in einer Mailkommunikation, die für den Versand der Mails zuständig ist – der Mailserver. Beim Mailclient spricht man vom MUA (Mail User Agent). Als MDA (Mail Delivery Agent) arbeiten Programme, die für den Transfer der Mails vom MTA zum MUA sorgen. Hierzu zählt der IMAP-Server.
PAM
Pluggable Authentication Modules. Ein aus Shared Libraries bestehendes Framework, in das sich verschiedenste Authentifizierungsmodule für Anwendungen einhängen lassen.
[1] Vergleich von IMAP-Servern: http://www.linux-magazin.de/heft_abo/ausgaben/2007/06/auf_der_teststrecke
[2] UW IMAP: http://www.washington.edu/imap/
[3] Cyrus IMAP: http://cyrusimap.web.cmu.edu
[4] Courier IMAP: http://www.courier-mta.org/imap/
[5] Dovecot: http://www.dovecot.org
[6] Dovecot-Dokumentation: http://wiki.dovecot.org
[7] Dovecot-Download: http://www.dovecot.org/download.html
[8] Fetchmail: http://www.fetchmail.info
[9] http://www.linux-magazin.de/heft_abo/ausgaben/2007/06/facharbeiten_mit_verstand



