Wie man einfache Sieve Filterregeln für den Dovecot IMAP Server einrichtet habe ich euch schon gezeigt. Nun will ich euch eine andere, benutzerfreundlichere Methode für die Erstellung und Verwaltung von Sieve Filterregeln vorstellen: Managesieve ist ein kleiner Server, der eigene Regeln der Mailaccount-User entgegen nimmt und im System aktiviert. Die User sind deshalb nicht mehr auf den Administrator angewiesen, wenn Änderungen an den Filtern vorgenommen werden sollen, sondern können ihre eigenen Filter selbst nach belieben erweitern oder ändern. Die Verwaltung der Scripts geschieht über einen Sieve Client.
Managesieve Installation
Loggt euch für die Installation von Managesieve zunächst als root auf eurem Linux Server ein:
sudo -s
Unter Ubuntu Server wird Managesieve durch das „dovecot-managesieved“ Paket bereitgestellt:
apt-get install dovecot-managesieved
Nach der Installation muss Sieve noch ein wenig eingestellt werden, damit die Filter an der korrekten Stelle abgespeichert werden. In der vorherigen Anleitung, in der es nur um Sieve ohne Manager ging, habe ich bereits eine Verzeichnis /var/vmail/sieve/ angelegt. Eine Konfiguration in der Datei /etc/dovecot/dovecot.conf könnte beispielsweise so aussehen:
plugin { sieve_before = /var/vmail/sieve/spam-global.sieve sieve_dir = /var/vmail/sieve/scripts/%u sieve = /var/vmail/sieve/%u.sieve }
- „sieve_before“ ist ein Filter, die unabhängig vom Benutzer immer vor allen anderen Filtern ausgeführt wird. (Sinnvoll z.B. zum Ausfiltern von Spam).
- „sieve_dir“ gibt den Pfad zu einem Verzeichnis an, in dem die Filterscripts der Nutzer angelegt werden. Im Beispiel wird zur Übersicht für jede Mailadresse ein eigener Ordner angelegt. Außerdem verhindert das, dass die User auch fremde Filterscripte sehen oder ändern.
- „sieve“ gibt den Pfad zu dem symbolischen Link an, der auf den aktuell verwendeten Filtersatz verweist. Wenn im „sieve_dir“ eines Benutzers mehrere Scripts liegen, verweist dieser Link (der als Bezeichner die Mailadresse des Users trägt) auf das aktuelle Script. Das ändert sich, wenn der Nutzer einen anderen Filtersatz (ein anderes Script) aktiviert.
Unter „protocols“ wird „sieve“ hinzugefügt:
protocols = imap lmtp sieve
Außerdem wird sieve als Plugin für LMTP hinzugefügt:
protocol lmtp { mail_plugins = $mail_plugins sieve }
Das war’s auch schon mit der Konfiguration. Nun muss Dovecot noch neu gestartet werden, damit die Änderungen übernommen werden:
service dovecot restart
Sieve Scripts über den Sieve Manager Hochladen
Leider kann nicht jeder Mailclient von Haus aus mit Managesieve umgehen, sodass nicht von jedem Clients aus eigene Filterregeln auf den Server hochgeladen werden können. Meist gibt es dafür aber spezielle Sieve Plugins, mit denen diese Funktion nachgerüstet werden kann.
So gibt es auch für den bekannten und beliebten Webmail Client „Roundcube“ (How To: Installation) ein Plugin, das mit Managesieve umgehen kann. Wie ihr dieses Einrichtet, erfahrt ihr in diesem Beitrag:
Sieve Filterplugin für Roundcube Webmail Client installieren
http://www.gillwaldt.de
Würde die Nutzer nicht die Fremden filterscripte nun doch erreichen (lesen/ändern), da sie ja nur in roundcube einen filter mit dem usernamen des anderen users anlegen, bzw laden?
Also anderes gefragt fehlt da nicht ein %u im pfad?
sieve = /var/vmail/sieve/%u/%u.sieve
und für roundcube müsste die zeile dann so aussehen oder?
sieve = /var/vmail/sieve/%u/roundcube.sieve
Und dieser Symbolische Link, von welchem programm wird der verwaltet? Erstellt das roundcube plugin den?
http://www.gillwaldt.de
ok habs gefunden. hast natürlich recht. der symlink wird durch das aktivieren der filtersatzes in roundcube erstellt.
mail_debug=yes
hat geholfen
aber ich hab noch warnungen gehabt das die user kein home dir haben, hab ich mit
mail_home = /var/vmail/%d/%n
mail_location = maildir:~/
weg bekommen.
Hallo,
erst einmal ein großes Lob, die Anleitungen haben mir sehr weiter geholfen.
Jedoch habe ich ein Problem:
Ich habe die Sieve-Filter nach deiner Anleitung installiert und eingerichtet. Jetzt wollte ich auch Roundcube mit Sieve einrichten. Habe wieder alles Schritt für Schritt nachvollzogen, aber in Roundcube taucht das Plugin nicht auf.
Mit der Thunderbirderweiterung hatte ich leider auch keinen Erfolg.
Könntest du mir vielleicht noch einen Tipp geben? Muss bei der neueren Version von Managesieve evtentuell noch etwas konfiguriert werden?
Gruß
Marco
http://www.lappen.de
Es geht nicht @Marco, weil er ein Lappen ist, die Variable „sieve_dir“ existierte nie…
Gut gebrüllt Löwe. Deine Aussage wäre auch korrekt, wenn sie nicht komplett falsch wäre.
Auszug aus der /etc/dovecot/conf.d/90-sieve.conf Dovecot 2.2.9 unter Ubuntu 14.04:
# Directory for :personal include scripts for the include extension. This
# is also where the ManageSieve service stores the user's scripts.
#sieve_dir = ~/sieve
Es muss aber trotz alledem in der /etc/dovecot/dovecot.conf unter protocols= noch „´managesieve“ aufgenommen werden, sonst geht da nix. Hat mich jetzt doch länger gekostet, dass herauszufinden.
https://legacy.thomas-leister.de/ueber-mich-und-blog/
Ist korrigiert (sieve statt managesieve).