Sieve

Aus Cowwwiki
Zur Navigation springen Zur Suche springen

Unter Sieve versteht man serverbasierte eMail-Filter. Konkret bedeutet das, dass eMails schon auf dem Mailserver direkt beim Eingang nach bestimmten Kriterien sortiert und verschoben werden können. Voraussetzung ist, dass man einen IMAP-Server verwendet, da sich die Ordner ja auf dem Server und nicht auf dem Client befinden müssen.

Sieve funktioniert in Zusammenhang mit Dovecot ohne Probleme.

Einrichtung

In diesem Artikel wird davon ausgegangen, dass eine Basisinstallation von Postfix & Dovecot bereits existiert. Eine Anleitung und Beispielkonfiguration ist auf Mailserver_Basic beschrieben. Damit Sieve funktioniert, muss die Dovecot-Konfiguration angepasst werden. Folgende Zeilen in der Datei hinzufügen bzw. erweitern:

user@localhost:~# vi /etc/dovecot/dovecot.conf
(...)

protocols = imap imaps pop3 pop3s managesieve

protocol managesieve {
}

protocol lda {
  postmaster_address = admin@domain.tld
  mail_plugins = sieve

  auth_socket_path = /var/run/dovecot/auth-master
  log_path = /var/vmail/dovecot-deliver.log
}

plugin {
  # sieve-filtering
  sieve_global_path = /var/vmail/globalsieverc

  sieve=/var/vmail/%d/%n/.dovecot.sieve
  sieve_dir=/var/vmail/%d/%n/sieve
}

(...)

Anschließend Dovecot neustarten

user@localhost:~# service dovecot restart


globaler Filter

Der globale Filter ist für alle Benutzer gültig. Der globale Filter kann nur durch den Administrator angepasst werden. Zuerst erzeugen wir einen eine neue Datei in /var/vmail/

user@localhost:~# cd /var/vmail
user@localhost:~# touch globalsieverc
user@localhost:~# chown vmail: globalsieverc
user@localhost:~# vi globalsieverc
require ["fileinto"];
# Move spam to spam folder
if header :contains "X-Spam-Flag" ["YES"] {
  fileinto "Spam";
  stop;
}

Diese Regel verschiebt nun alle SPAM eMails in den Ordner Spam. Voraussetzung ist, dass Amavis oder ein vergleichbarer Dienst eingerichtet ist und die SPAM eMails im Header markiert.

sendmail user@beispiel.de < /usr/share/doc/spamassassin/examples/sample-spam.txt

Mit diesem Befehl kann man den serverbasierten Filter testen. Wenn alles funktioniert hat, müsste die eMail im Ordner Spam liegen.

Quellen

http://wiki.dovecot.org/ManageSieve/Configuration