Dazu öffnet der Server auf Port 2000 einen kleinen Sieve-Manager, über den die User mit ihrem Mailclient ihre Filterskripte hochladen und aktivieren. In Dovecot muss dafür lediglich das Protokoll »managesieve« aktiviert sein:
protocols=pop3 pop3s imap imaps managesieve
Damit die eigentliche Filterarbeit beim Einsortieren durch das Deliver-Programm erfolgen kann, aktiviert der Admin mit
protocol lda {
[...]
mail_plugins = cmusieve
[...]
}
bei diesem noch das Sieve-Plugin. Zwar weiß nur eine Minderheit der Mailclients gar nichts mit Sieve anzufangen, aber selbst Kmail und Thunderbird bringen für Sieve zunächst nur einfache Ascii-Editoren mit und überlassen es dem User, seine Skripte per Hand in der richtigen Syntax zu programmieren, undenkbar im Unternehmenseinsatz. Netter sind hier schon Webmailer wie Squirrelmail oder Roundcube [7], die gut funktionierende Web-GUIs mitbringen, in denen sich der User seine Filterregeln zusammenklickt (Abbildung 4).

Abbildung 4: Das Sieve-Plugin von Roundcube ist beinahe fertig, am ACL-Support arbeiten die Entwickler.
Shared Folders und Access Control Lists
Die wenigsten Admins wissen, dass über das IMAP-Protokoll sogar Zugriff auf das Dateisystem des Servers möglich ist. Bekannter ist da die Bedeutung der Shared Folder, also einzelner, gemeinsam genutzter IMAP-Verzeichnisse, die sich Nutzer untereinander mit verschiedenen Rechten freigeben können. Sobald neben dem Namespace »private« (dem eigentlichen IMAP-Postfach des Nutzers) noch ein Namespace »shared« konfiguriert ist, blenden Mailclients hier die Freigaben ein (Listing 1).
|
Listing 1: |
|---|
01 namespace private {
02 separator = /
03 inbox = yes
04 subscriptions = yes
05 }
06 namespace shared {
07 separator = /
08 prefix = shared/%%u/
09 location = maildir:%%h/Maildir:INDEX=~/Maildir/shared/%%u
10 subscriptions = no
11 list = children
12 }
|
Diese erfolgen über ACLs, die die Mailclients über das IMAP-Protokoll selbst auf dem Server hinterlegen. Der Administrator hat dann mit der Rechteverwaltung nichts mehr zu tun, das erledigt der Mailer, zum Beispiel Kmail in Abbildung 5. Damit die Access Control Lists funktionieren, braucht der Server in seiner Konfigurationsdatei noch die beiden Plugins »acl« und »imap_acl«, zum Beispiel mit dem Eintrag:
protocol imap {
[...]
mail_plugins = acl imap_acl
[...]
}
Anschließend benötigt Dovecot noch eine kleine Hilfsdatei »sharedmailboxes«, in der er verzeichnet, welcher Nutzer Freigaben für andere erteilt hat:
plugin {
[...]
acl = vfile:
acl_shared_dict = file:/var/lib/dovecot/
sharedmailboxes
[...]
}
Achtung: Die Datei »sharedmailboxes« muss für Dovecot schreibbar sein, damit er sie im laufenden Betrieb aktualisieren kann. Wer – wie oben gezeigt – Dovecot pauschal auf die User- und Gruppen-ID »vmail« umgestellt hat, muss dann hier »chown vmail:vmail /var/lib/dovecot« aufrufen.
Ähnlich wie bei Sieve-Regeln ist die ACL-Unterstützung bei vielen Mailclients jedoch noch sehr unterschiedlich. Wie so häufig geht Kmail schon lange mit mustergültiger Implementation voran. Auch Thunderbird beherrscht mittlerweile ACLs, wenn das passende Plugin [8] dafür aktiviert ist. Dass da weder Evolution noch Outlook mithalten können, ist ein Armutszeugnis.
Hier hilft ein separates Web-GUI, über das sich die Anwender entsprechende Freigaben erteilen. Für Squirrelmail gibt es ein Plugin, für Roundcube ist es geplant. Admins anderer Produkte müssen sich mit einer eigenständigen Lösung wie dem CGI-Skript »imapacl.pl« helfen [9].






