WebSieve - Mailfilter für POP3/IMAP

Status

Aktueller Status (2013-12-14): Websieve ist nicht mehr erreichbar (die Software wurde von den Autoren auch seit 10 Jahren nicht mehr gepflegt), wir arbeiten an einem brauchbaren Nachfolger.

Eure vorhandenen Sieve-Filter wurden bei der Mailserverumstellung am 2013-12-14 übernommen und konvertiert und funktionieren bis auf wenige exotische Fälle fehlerfrei.

Websieve

Wozu Websieve?

Mit Websieve kann jeder POP3/IMAP User eigene Mailfilter anlegen, und so Mails nach Kriterien wie Absender, Subject oder auch speziellen Headerfeldern (z.B. markierter Spam) in Mailboxen vorsortieren oder wegwerfen. Außerdem ist es möglich mit Websieve anderen Usern auf einzelnen (Unter-)Mailboxen Lese-/Schreibrechte zu geben (z.B. um eine Mailingliste gemeinsam zu lesen).

Wie lege ich einen Mailfilter an?

Das Webinterface für die Mailfilterkonfiguration steht allen POP3/IMAP-Usern unter https://webmail.in-berlin.de/websieve/ zur Verfügung, jedoch macht das Sortieren in Untermailboxen nur bei Benutzung von IMAP bzw. Webmail, aber nicht für POP3 Sinn.

thumb_addrule.png

  • Nur Filterregeln, die auf "Enabled" stehen, werden verarbeitet.
  • Die Filterregeln werden in der durch das Feld "Priority" angegebenen Reihenfolge verarbeitet (Regeln mit der niedrigsten Zahl, d.h. größerer Priorität zuerst).
  • Wenn "Continue checking other rules after applying this rule" aktiv ist, wird die Regel auf eine Kopie der Mail angewandt, sie kann durch andere Regeln nochmals verarbeitet werden. Wenn keine weitere Regel zutrifft landet sie in der INBOX.
  • Wenn "Keep a copy in your Inbox" aktiv ist, landet die Mail auf jeden Fall in der INBOX (zusätzlich zu dem was die Regel mit der Mail tut). Dies ist vor allem zum Testen von Regeln sinnvoll.

Der zweite Teil des Formulars dient der Definition der eigentlichen Regel. Die Regeln lassen sich dann fast als englischsprachiger Satz lesen.

Bedingung

Nicht zur gewünschten Regel gehörende Felder lässt man einfach leer. Die Auswahl "all of/any of" bestimmt, ob die Teile der Bedingung mit und (all of) oder oder (any of) verknüpft werden.

  • in 'from' contains wird ein Teil der Absenderadresse angegeben, auf die die Regel angewendet werden soll.
  • 'to' contains analog, nur mit der Empfängeradresse
  • 'subject' contains analog, auf die Betreffzeile
  • mit 'Msg size' kann man die Größe der Mail als Kriterium setzen. größer (more) oder kleiner (less) als X (K)ilobytes.
  • Etwas besonderes ist 'Field name X contains Y' hiermit kann man auf bestimmte Headerfelder Prüfen. Wer z.B. unsere Rundmails in ein extra Postfach bekommen möchte, trägt für X 'List-Id' und für Y 'localsites@gnu.in-berlin.de' ein.

Aktion

Hier kann eine Aktion definiert werden, die auf die der Regel entsprechenden Mails ausgefürt wird. Falls meherere gewünscht sind, müssen meherere Regeln definiert werden, oder (siehe Unten, nur für Fortgeschrittene) man legt eine 'Custom rule' an.

  • 'File Into' verschiebt Mails in die ausgewählte Mailbox.
  • Mit 'Forward To' werden die Mails an eine andere E-Mail Adresse weitergeleitet
  • 'Reply With' schickt auf entsprechende Mails eine automatische Antwort mit dem rechts angegebenen Text als E-Mail Body
  • 'Reject' schickt eine Fehlermail mit der Begründung für eine Ablehnung der Mail.
  • 'Discard' wirft die Mail einfach weg...

Custom Rules

Um die Erzeugung von 'Custom Rules'/Sieve Scripts zu verstehen empfehlen wir die Lektüre von RFC 3028 und der Cyrusoft Sieve Page. Eine gute Einfrung auf deutsch bietet Marcel Holtmann: Sieve - A Mail Filtering Language. Wer gerne seine Mailfilter komplett selbst als Sieve-Script schreiben will, sollte unter 'Advanced Options' 'Script Mode' auf 'advanced' umstellen. Hier nur einige Hinweise zu einigen Eigenheiten die Cyrus/Websieve Implementierung:
  • Alle Scripte sollten in einem Editor geschreiben werden und per cut 'n' paste ins Webinterface übertragen werden, da bei Syntaxfehlern der Server das Script komplett verwirft.
  • Wenn im 'basic Mode' 'Custom Rules' erstellt werden, dann werden diese durch die Optionen 'Continue checking other rules after applying this rule' und 'Keep a copy in your Inbox' verändert.
  • Das Syntaxchecking vom Cyrusmail ist sehr pingelig, einige im Netz zu findene Beispiele laufen deshalb nicht!
  • Alle benötigten optionalen Features müssen mit einer require Anweisung "angefordert" werden, z.B. require "fileinto";

Wie richte ich eine Urlaubsbenachrichtigung ein?

Auch wenn es häufig nicht gerne gesehen wird, wollen es viele haben: Eine Urlaubsbenachrichtigung an alle, die einem Mail schicken. Hier bietet unser Mailfilter eine recht ungefährliche Variante:

thumb_vacation.png

  • Mit 'Vacation Active' wird die Urlaubsbenachrichtigung ein (on) oder aus (off) geschaltet.
  • In das Feld 'Vacation Text' wird der Text eingetragen, den die Absender von Mails an die Mailbox bekommen, wenn die Urlaubsbenachrichtigung aktiv ist.
  • 'Repeat Days' legt fest, wieviele Tage minimal zwischen zwei Urlaubsbenachrichtigungen an die gleiche Adresse liegen.
  • Unter 'Vacation Addresses' müssen die eigenen Adressen eingetragen werden, für die die Urlaubsbenachrichtigung eingerichtet werden soll. Auf Mails an Adressen die ein anderes 'To:' als die hier angegebenen Adressen haben werden keine Urlaubsbenachrichtigungen verschickt. Dies gilt für alle Adressen die bei IN-Berlin oder extern liegen!!!

Wozu sollte man die Forward-Funktion von Websieve nutzen?

Die Forward-Funktion solle nur für temporäre Weiterleitungen von Mail für die IMAP-Mailboxen verwendet werden. Für dauerhafte Weiterleitungen sollten die Mailboxen im Service-Interface gelöscht und dort durch eine Mailweiterleitung ersetzt werden.

Auch Weiterleitungen an mehrere (wenige) Adressen oder Weiterleiten bei gleichzeigigem Behalten einer Kopie sind mögliche sinnvolle Anwendungen.

Wenn Mails an mehr als 2..3 Empfänger dauerhaft weitergeleitet werden sollen, empfehlen wir allerdings die Verwendung einer Mailingliste, die die du im Service-Interface anlegen kannst.

Wenn an eine e-Mail Adresse eine Mailingliste angeschlossen ist, kann der selben Adresse logischerweise kein lokales Postfach zugeordnet sein. Falls ein solches existiert und in eine Liste umgewandelt werden soll, muß es also geleert (gesichert) und dann im Service-Interface gelöscht werden.

Wie setze ich die Rechte meiner Mailboxen

Der Mailserver ermöglicht es, einzelne Mailboxen für andere Benutzer freizugeben, und somit gemeinsam auf die Mails zuzugreifen. Das kann einem viel Weiterleiterei ersparen und ermöglicht Projekten eine vereinfachte Zusammenarbeit. Diese Rechte werden hier ACLs (Access Control Lists) genannt. Im oberen Teil des ACL-Formulars werden die Mailboxrechte angezeigt, im mittleren kann man die Rechte einer Mailbox für einen entsprechenden User setzen.

thumb_acl.png

  • 'Folder' ist die Mailbox, deren Rechte geändert werden sollen.
  • Das Feld 'Foreign User ID' entspricht dem IN-Berlin Benutzernamen für IMAP bzw. Webmail, für den die Rechte geändert werden sollen.
  • mit der Auswahl 'General Rights' werden sinnvolle Rechtekombinationen als Option angeboten, Fortgeschrittene können sich aber unter 'Specific Rights' auch andere Kombinationen zusammenstellen.

Die wichtigsten voreingestellten Rechtekombinationen sind:

  • None Der Benutzer hat keine Rechte
  • Read Der Benutzer sieht die Mailbox und kann die Mails lesen.
  • Append Wie Read, zusätzlich darf er auch Mails hinzufügen.
  • Write Wie Read, aber mit vollem Schreibzugriff.
  • All Der Benutzer hat alle Rechte, wie auf seinen eigenen Mailboxen.

Die Rechte (lrswipcda) bedeuten im Einzelnen:

  • l lookup Die Mailbox ist fuer den Benutzer sichtbar.
  • r read Der Benutzer darf die Mails in der Mailbox lesen, kopieren und nach Mails in der Mailbox suchen.
  • s seen Für diesen User wird gespeichert ob er die Mails bereits gelesen hat.
  • w write Der Benutzer darf die Flags der Mail (wichtig, etc) ändern, nicht aber "Seen" und "Deleted" (diese Flags werden durch s/d Kontrolliert).
  • i insert Der Benutzer kann Mails in dem Mailfolder speichern.
  • p post Der Benutzer kann Mails durch den Mailserver (z.B. über Mailfilter) in dem Mailfolder speichern.
  • c create Der Benutzer darf Untermailboxen anlegen.
  • d delete Der Benutzer darf Mails als gelöscht markieren, löschen, sowie die Mailbox und Untermailboxen umbenennen und löschen.
  • a administer Der Benutzer darf die Rechte der Mailbox ändern.

Bitte denkt daran, daß ein mit dem Benutzer mit Recht c,i,w oder a auf die eigene Mailbox auch die eigene Mailboxquota belasten kann...

Horde (Webmail) vs. Websieve

Was ist der Unterschied zwischen dem im Horde/IMP (Webmail) Mailfilter und Websieve?

Der Mailfilter, der über Websieve konfiguriert wird, wird in dem Moment angewandt, in dem die Mails empfangen werden, und wirkt somit auch auf Mails die per POP3/IMAP abgeholt werdern.

Der Filter aus Horde/IMP wird angewandt, sobald die Mails per Webmail gelesen werden, und kann so auch auf schon empfangene Mails angewandt werden.

Userdoc.DocumentationForm edit

Title WebSieve - Mailfilter für POP3/IMAP
Type HowTo
Classification Mail
QuickFind yes
Keywords Spam, Mail, Webmail,websieve, POP3, IMAP, Horde
Topic attachments
I Attachment Action Size Date Who Comment
acl.pngpng acl.png manage 69.7 K 2006-03-24 - 00:08 Main.OlAf Mailboxrechte ändern
addrule.pngpng addrule.png manage 82.1 K 2006-03-24 - 00:04 Main.OlAf neue Websieve Regel erstellen
vacation.pngpng vacation.png manage 60.0 K 2006-03-24 - 00:07 Main.OlAf Urlaubsbenachrichtigung einstellen (Vacation message)
Topic revision: 2013-12-17, OlAf

  • QuickFind



 
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding IN-Berlin Public Wiki? Send feedback