Zum Hauptinhalt springen

SIEVE – Erweiterte Filterregeln - Wissensdatenbank / Mailadministration - Fairgate DeskPro

SIEVE – Erweiterte Filterregeln

Einleitung

Mit SIEVE-Skripten lassen sich eingehende E-Mails serverseitig verarbeiten, bevor sie im Postfach erscheinen. Neben klassischen Weiterleitungen lassen sich auch komplexere Szenarien wie bedingte Regeln, Auto-Antworten und kombinierte Aktionen umsetzen.

Diese Anleitung zeigt Ihnen erweiterte Anwendungsbeispiele auf Basis der Fairgate-Mailumgebung – Schritt für Schritt erklärt, auch ohne Programmierkenntnisse.



1. Klassische Weiterleitung

Beschreibung: Eingehende E-Mails werden an eine andere Adresse weitergeleitet. Eine Kopie bleibt lokal erhalten.

redirect "zieladresse@example.com";
keep;

Was passiert hier?

  • redirect sorgt dafür, dass eine Kopie der E-Mail an die angegebene Adresse weitergeleitet wird.

  • keep stellt sicher, dass die E-Mail zusätzlich im eigenen Postfach bleibt.

💡 Tipp: Diese Variante ist besonders nützlich, wenn Sie Ihre Mails z. B. auch an eine private Adresse weiterleiten möchten, aber trotzdem alle Nachrichten im Postfach behalten wollen.



2. Weiterleitung ohne Kopie

Beschreibung: Die Mail wird an eine andere Adresse weitergeleitet und danach gelöscht.

redirect "zieladresse@example.com";
discard;
stop;

Was passiert hier?

  • redirect leitet die Mail wie oben beschrieben weiter.

  • discard verwirft die Mail – sie erscheint nicht mehr im eigenen Posteingang.

  • stop sorgt dafür, dass keine weiteren Filterregeln mehr angewendet werden.

💡 Tipp: Diese Variante kann hilfreich sein, wenn Sie ein separates Postfach ausschliesslich für bestimmte Zwecke nutzen – z. B. zur Archivierung oder automatisierten Weiterverarbeitung. Sie sollten die Regel zunächst mit keep testen, um sicherzugehen, dass die Weiterleitung zuverlässig funktioniert.



3. Mehrfachweiterleitung

Beschreibung: Eine E-Mail wird an mehrere Empfängeradressen geschickt.

redirect "adresse1@example.com";
redirect "adresse2@example.com";
keep;

Was passiert hier?

  • Jede redirect-Zeile leitet die Mail an eine andere Adresse weiter.

  • keep sorgt dafür, dass eine Kopie im Fairgate-Postfach bleibt.

💡 Tipp: Mit dieser Regel können Sie E-Mails gleichzeitig an mehrere interne oder externe Empfänger senden – z. B. an Teammitglieder oder Ihre Privatadresse. So sparen Sie sich das manuelle Weiterleiten und stellen sicher, dass alle Beteiligten die gleiche Nachricht erhalten.



4. Weiterleitung + Sortierung in Ordner

Beschreibung: Weiterleitung an eine Adresse – gleichzeitig wird die Mail lokal in einen bestimmten Ordner verschoben.

redirect "zieladresse@example.com";
fileinto "Weitergeleitet";
stop;

Was passiert hier?

  • redirect leitet die Mail an eine externe Adresse weiter.

  • fileinto verschiebt die Mail in einen IMAP-Ordner mit dem Namen "Weitergeleitet" (der Ordner muss existieren).

  • stop: keine weiteren Regeln werden danach ausgeführt.

⚠️ Wichtig: Der Ordnername in fileinto muss exakt mit dem vorhandenen IMAP-Ordner übereinstimmen – inklusive Gross- und Kleinschreibung. Falls der Ordner nicht existiert, kann die Regel fehlschlagen oder die Mail unauffindbar werden.

💡 Tipp: Diese Regel ist besonders nützlich, wenn Sie alle weitergeleiteten E-Mails im Postfach übersichtlich in einem eigenen Ordner archivieren möchten. Sie behalten so jederzeit den Überblick – auch wenn Sie viele Weiterleitungen nutzen.



5. Bedingte Weiterleitung

Beispiel: Weiterleitung nur, wenn der Absender exakt mit einer bestimmten Adresse übereinstimmt.

if address :is "from" "newsletter@example.com" {
  redirect "zieladresse@example.com";
  keep;
}

Was passiert hier?

  • if address :is "from" ... prüft, ob die Mail vom genau angegebenen Absender kommt.

  • Nur wenn das zutrifft, wird die Mail weitergeleitet (redirect) und behalten (keep).



Mit :contains können Sie auch nur einen Teil einer E-Mail-Adresse oder eines Namens prüfen – das ist besonders praktisch bei ganzen Absender-Domains oder typischen Begriffen im Betreff.

Beispiel: Alle Mails weiterleiten, die von einer Adresse der Domain @example.com stammen:

if address :contains "from" "@example.com" {
  redirect "zieladresse@example.com";
  keep;
}

💡 Tipp: So müssen Sie nicht jede einzelne Adresse angeben – die Regel greift auf alle Absender, deren Domain example.com enthält. Das funktioniert auch bei anderen Feldern wie subject oder to.



Mit anyof oder allof können Sie mehrere Bedingungen kombinieren.

Beispiel: So werden E-Mails weitergeleitet, wenn einer der beiden Absender zutrifft.

if anyof (
  address :is "from" "newsletter@example.com",
  address :is "from" "info@verein.ch"
) {
  redirect "zieladresse@example.com";
  keep;
}

⚠️ Wichtig:

  • Mit anyof genügt es, wenn eine der Bedingungen erfüllt ist.

  • Mit allof müssten alle Bedingungen gleichzeitig erfüllt sein.



6. Weiterleitung + Auto-Antwort (Abwesenheit)

Beispiel: Leiten Sie Mails an Ihre Vertretung weiter – gleichzeitig wird dem Absender eine automatische Nachricht gesendet.

vacation :days 7 :subject "Abwesenheit" "Ich bin bis zum 1. September nicht erreichbar.";
redirect "vertretung@example.com";
keep;

Was passiert hier?

  • vacation: sendet automatisch eine Antwortmail mit dem angegebenen Text.

    • :days 7: Der Absender erhält die Nachricht höchstens einmal alle 7 Tage.

    • :subject: Betreffzeile der Antwort

    • Der Text in Anführungszeichen ist der Nachrichtentext.

  • redirect: Leitet die Mail an eine Vertretung weiter.

  • keep: Behaltet die Mail im eigenen Postfach.

⚠️Wichtig: Damit die automatische Antwort (vacation) funktioniert, muss der Filtertyp im Webinterface auf Prefilter gesetzt sein.

💡 Tipp: Sie können die Auto-Antwort auch kreativ einsetzen – z. B. um für bestimmte Absender automatisch eine Eingangsbestätigung mit Zusatzinfos zu senden (z. B. „Ihre Anfrage wurde erhalten. Wir melden uns in 2–3 Werktagen.“).



7. Unerwünschte Absender blockieren

Beispiel: Bestimmte Absender komplett blockieren – ohne Autoantwort oder Weiterleitung.

if address :is "from" "spam@example.com" {
  discard;
  stop;
}

Was passiert hier?

  • Wenn die Mail vom angegebenen Absender kommt, wird sie sofort gelöscht (discard) und nicht weiterverarbeitet (stop).

  • Für alle anderen Mails können danach weitere Regeln folgen.

💡 Tipp: Für mehrere Absender können Sie anyof verwenden, z. B. um gleich mehrere Adressen in einem einzigen Block zu behandeln.



8. Nachricht zurückweisen mit Erklärung

Beispiel: E-Mail nur dann zurückweisen, wenn der Absender eine bestimmte Adresse ist – z. B. bei unerwünschten Nachrichten oder Bots.

if address :is "from" "noreply@spamserver.com" {
  reject "Diese Adresse akzeptiert keine E-Mails von noreply@spamserver.com.";
  stop;
}

Was passiert hier?

  • if address :is "from" ... prüft, ob die Mail vom angegebenen Absender stammt.

  • reject lehnt die Nachricht aktiv ab – der Absender erhält eine automatische Fehlermeldung mit dem angegebenen Text.

  • stop beendet die Verarbeitung weiterer Regeln.

⚠️ Wichtig: reject führt dazu, dass die E-Mail nicht angenommen wird – sie erscheint weder in Ihrem Postfach noch im Papierkorb.
Diese Methode funktioniert nur dann zuverlässig, wenn der absendende Server korrekt konfiguriert ist und Rückmeldungen akzeptiert. Bei Newslettern oder automatisierten Systemen kann der Hinweis verloren gehen.

💡 Tipp: Diese Methode ist hilfreich, wenn Sie z. B. unerwünschte E-Mails freundlich, aber bestimmt blockieren möchten.



Übersicht wichtiger SIEVE-Kommandos

Befehl

Bedeutung

Typischer Einsatz

redirect

Leitet die E-Mail an eine andere Adresse weiter.

Um Mails an eine externe Adresse oder ein weiteres Konto zu senden.

keep

Behaltet die E-Mail im aktuellen Posteingang.

Wenn zusätzlich zur Weiterleitung eine Kopie lokal gespeichert werden soll.

discard

Verwirft die E-Mail vollständig (ohne Benachrichtigung an den Absender).

Zum lautlosen Löschen unerwünschter Nachrichten.

reject

Weist die Nachricht aktiv mit Fehlertext zurück.

Um dem Absender eine Rückmeldung zu geben, z. B. bei falscher Adresse.

stop

Beendet die Verarbeitung weiterer Filterregeln.

Verhindert, dass nachfolgende Regeln auf eine Mail angewendet werden.

fileinto

Verschiebt die E-Mail in einen bestimmten Ordner.

Zum automatisierten Sortieren von Mails in IMAP-Ordner wie „Newsletter“ o. ä.

vacation

Sendet eine automatische Antwort an den Absender.

Für Abwesenheitsnotizen oder automatische Empfangsbestätigungen.

if

Beginnt eine bedingte Anweisung (z. B. „wenn Absender ist ...“).

Zur gezielten Ausführung nur bei bestimmten Bedingungen (Absender, Betreff usw.).

elsif / else

Ergänzen eine if-Bedingung mit Alternativen.

Zur Differenzierung von mehreren Fällen innerhalb eines Filters.

address

Prüft Felder wie „From“, „To“ oder „Cc“ in einer Mailadresse.

Wird typischerweise in Kombination mit if verwendet.

header

Prüft allgemeine Mail-Header wie „Subject“ oder benutzerdefinierte Felder.

Wenn Sie z. B. auf bestimmte Betreffzeilen reagieren wollen.

:is

Vergleichsoperator: passt exakt zur angegebenen Zeichenfolge.

Beispiel: if address :is \"from\" \"abc@example.com\"

:contains

Vergleichsoperator: prüft, ob der Wert ein bestimmtes Teilstück enthält.

Beispiel: if header :contains \"subject\" \"Anmeldung\"

anyof

Führt mehrere Bedingungen aus – wenn mindestens eine zutrifft.

Ideal für mehrere Absender oder Themen.

allof

Führt mehrere Bedingungen aus – wenn alle zutreffen.

Z. B. nur wenn Absender und Betreff passen.


Hilfreich Nicht hilfreich