Veit Schiele Communications

Veit Schiele Communications

Mailfilter

ManageSieve ist ein Dienst zum Einrichten und Verwalten von Mailfiltern. Solche E-Mail-Filter können für viele komplexe Aufgaben verwendet werden, so z.B. variable Weiterleitungen oder Spamfilter.
erstellt von Veit Schielezuletzt verändert: 19.03.2017 18:29 © Veit Schiele Communications GmbH, 2007–2017
Sieve
ist eine serverseitige Filterdefinitionssprache, die Sortierung eingehender E-Mails in Unterordner von Postfächern, Abwesenheitsbenachrichtigungen, Abweisung von Mails und vieles mehr unterstützt.
ManageSieve
ermöglicht die Konfiguration über Erweiterungen des Mailprogramms oder des Webmailers, so dass der Sieve-Filter ohne Kenntnisse der Sprache mit Hilfe benutzerfreundlicher Schnittstellen möglich ist.

Serverseitige Mailfilterung hat gegenüber der Mailfilterung im Mailprogramm den Vorteil, dass bei Nutzung mehrerer Endgeräte (PC, Notebook, Tablet, Smartphone, Webmail) die Konfiguration des Filters nur an einer Stelle erfolgen kann und einheitlich greift.

Sieve erlaubt u.a. folgende Aktionen:

  • Verschieben oder Kopieren einer Nachricht in einen Ordner
  • Abwesenheitsmeldungen
  • Markieren von Nachrichten (IMAP 4-Flags) z.B. Gelesen oder Weitergeleitet
  • Weiterleiten oder Kopieren an andere Email-Adressen
  • Ablehnen von Nachrichten

Informationen zu weiteren Funktionen erhalten Sie auf der Dovecot-Site.

Einrichten von Sieve

Zunächst sollte eine .forward-Datei angelegt werden mit folgendem Inhalt:

"| /usr/lib/dovecot/deliver "

Besteht bereits eine .forward-Datei, die auf procmail verweist, so lesen Sie im Abschnitt Zusammenspiel mit Procmail weiter.

Sieve-Filter erstellen

Sieve-Filter sollten in ~/.dovecot.sieve abgespeichert und anschließend ein symbolischer Link auf diese Datei in ~/Maildir/sieve/ erstellt werden:

$ ln -s ~/.dovecot.sieve ~/Maildir/sieve/

Ein einfaches Sieve-Skript kann z.B. folgendermaßen aussehen:

require ["fileinto"];

# rule:[Spam]
if anyof (header :is "X-Spam-Flag" "YES")
{
    fileinto "INBOX.Junk";
}

Dieses Skript prüft ob in der Nachricht der Header X-Spam-Flag existiert mit dem Wert YES. In diesem Fall wird die Nachricht in den Ordner Junk innerhalb des Posteingangsordners verschoben.

Weitere Filter können direkt im Anschluss an diesen Filter in derselben Datei angegeben werden. Es ist auch möglich, mehrere Filter durch if-then-else zu verbinden. Weitere Filter finden Sie z.B. in

Zusammenspiel mit Procmail

Die Mailfilter Procmail und Sieve können nacheinander verwendet werden. Dies kann z.B. interessant sein, wenn zentral für alle Kunden über procmail spamassassin bereitgestellt wird und jeder Nutzer dann anschließend über die grafische Óberfläche eigene Filterregeln konfigurieren kann.

Hierzu wird in der .forward-Datei zunächst procmail angegeben:

$ cat .forward
"|/usr/bin/procmail"

Als letzte Regel in der .procmailrc-Datei wird dann deliver aufgerufen, welches automatisch die aktiven Sieve-Regeln ausführt:

:0 w
| /usr/lib/dovecot/deliver

Soll procmail nicht mehr verwendet werden, kann deliver als einzige Angabe in der .forward-Datei angegeben werden:

$ cat .forward
"| /usr/lib/dovecot/deliver "

ManageSieve

ManageSieve ist ein Dienst, der es erlaubt Filterdateien aus der Ferne über ein definiertes Protokoll zu verändern.

Webmailer

Unser Webmailer ist bereits entsprechend konfiguriert, sodass Sie einfach neue Regeln definieren können:

Roundcube-Filter

Thunderbird

Auch für E-Mail-Programme wie Thunderbird gibt es Erweiterungen, mit denen sich Filter editieren lassen: Sieve Thunderbird Add-on.