Diese Anleitung zeigt Mailadmins, wie bestehende externe Alias-Weiterleitungen über den Fairgate-Mailserver durch ein zentrales Postfach mit Catch-All und robusten SIEVE-Weiterleitungen ersetzt werden.
Die Struktur sorgt dafür, dass E-Mails zuverlässig anhand verschiedener technischer Empfängerinformationen erkannt und weitergeleitet werden. Dadurch können bisherige externe Alias-Weiterleitungen sauber abgebildet werden, ohne dass externe Ziele direkt als Mailserver-Aliasse hinterlegt bleiben müssen.
1. Hintergrund der Umstellung
Warum diese Umstellung notwendig ist
Externe Alias-Weiterleitungen können die Zustellbarkeit und Reputation der Fairgate-Mailinfrastruktur beeinträchtigen. Wenn E-Mails direkt über Aliasse an externe Anbieter weitergeleitet werden, kann dies zu Problemen bei Spam-Bewertung, SPF/DMARC-Prüfungen und Zustellbarkeit führen.
Um die Mailinfrastruktur stabil und zuverlässig zu betreiben, sollen externe Alias-Weiterleitungen künftig über ein zentrales Postfach mit SIEVE-Regeln abgebildet werden. Dadurch bleiben Weiterleitungen kontrollierbar, nachvollziehbar und technisch sauber verwaltbar.
Betroffen sind
Aliasse, die E-Mails an externe Adressen weiterleiten, zum Beispiel
name@bluewin.ch,name@gmail.com,name@hotmail.comoder ähnliche externe Ziele.Aliasgruppen mit mehreren externen Zieladressen.
Catch-All-Strukturen, bei denen bisher nicht definierte Adressen automatisch weitergeleitet wurden.
Nicht betroffen sind
Normale Postfächer innerhalb der eigenen Domain.
Interne Aliasse, die ausschliesslich auf andere Postfächer oder Aliasse innerhalb derselben Domain zeigen.
2. Grundprinzip der neuen Lösung
Die Umstellung besteht aus zwei Ebenen:
Catch-All-Alias auf Mailserver-Ebene
Alle E-Mails an bisherige oder nicht mehr direkt vorhandene Alias-Adressen werden an ein zentrales Postfach zugestellt.SIEVE-Filter im zentralen Postfach
Das zentrale Postfach prüft beim Eintreffen der Nachricht, an welche ursprüngliche Alias-Adresse die E-Mail adressiert war, und leitet sie gemäss Regelwerk an die vorgesehenen Zieladressen weiter.
Beispiel:
verein@beispieldomain.ch
↓
Catch-All / zentrales Postfach
↓
SIEVE-Regel erkennt ursprüngliche Adresse
↓
Weiterleitung an externe Zieladresse(n)3. Voraussetzungen
Für die Umstellung benötigen Sie:
ein aktives Mailpostfach bei Fairgate, zum Beispiel
weiterleitungen@beispieldomain.choderinfo@beispieldomain.chZugriff auf die Administrationsoberfläche des Fairgate-Mailservers unter
https://mail.fairgatemail.cheine vollständige Liste der bisherigen Alias-Adressen und deren Zieladressen
Zugriff auf die Filterverwaltung des zentralen Postfachs
4. Schritt-für-Schritt-Anleitung
4.1 Zentrales Postfach anlegen oder auswählen
Legen Sie zunächst ein zentrales Postfach an, an dem die Nachrichten gesammelt und per SIEVE verarbeitet werden.
Empfohlen ist ein dediziertes Postfach wie:
weiterleitungen@beispieldomain.chAlternativ kann ein bestehendes Postfach verwendet werden, zum Beispiel:
info@beispieldomain.chDieses Postfach empfängt die Nachrichten, bevor sie anhand des SIEVE-Filters weitergeleitet werden.
4.2 Catch-All-Alias erstellen
Erstellen Sie in der Mailserver-Administration einen Catch-All-Alias für die betroffene Domain.
Beispiel:
Alias: @beispieldomain.ch
Zieladresse: weiterleitungen@beispieldomain.chDamit werden E-Mails an Adressen der Domain, die nicht mehr als eigene Aliasse oder Postfächer existieren, an das zentrale Postfach zugestellt.
4.3 Bestehende externe Einzelaliase deaktivieren
Bestehende externe Alias-Weiterleitungen sollten deaktiviert oder gelöscht werden, sobald der neue SIEVE-Filter aktiv ist.
Wichtig: Bleiben alte externe Aliasse parallel aktiv, kann es zu Zustellfehlern kommen.
Empfohlenes Vorgehen:
neuen Catch-All-Alias anlegen
SIEVE-Filter im zentralen Postfach einrichten
Filter validieren und aktivieren
bisherige externe Einzelaliase deaktivieren
Testmails versenden und Zustellung prüfen
5. SIEVE-Filter im zentralen Postfach einrichten
5.1 Filter öffnen
Öffnen Sie in der Mailserver-Administrationsoberfläche den Bereich Filter.
Erstellen Sie anschliessend einen neuen Filter für das zentrale Postfach.
Empfohlene Einstellungen:
Filtertyp: Prefilter
Name/Beschreibung: Catch-All Weiterleitungen
Status: AktivDer Filtertyp Prefilter sorgt dafür, dass die Regel direkt beim Eingang der E-Mail angewendet wird.
6. Aufbau des robusten SIEVE-Filters
Der neue SIEVE-Filter besteht aus vier Teilen:
Moduldeklaration
Initialisierung des Redirect-Flags
Weiterleitungsregeln pro Alias-Adresse
optionaler Catch-All-Block am Ende
6.1 Moduldeklaration
Am Anfang des Scripts steht:
require ["fileinto", "copy", "variables", "envelope"];Diese Zeile aktiviert die benötigten SIEVE-Funktionen.
Modul | Zweck |
|---|---|
| Grundmodul, das in Mailcow/Dovecot-Umgebungen häufig erwartet wird. |
| Ermöglicht mehrere Weiterleitungen derselben Nachricht. |
| Aktiviert Variablen wie |
| Ermöglicht die Prüfung des SMTP-Envelope-Empfängers. |
Ohne diese Deklaration kann der Filter nicht korrekt validiert oder ausgeführt werden.
6.2 Initialisierung
Direkt danach wird ein Kontrollwert gesetzt:
set "redirected" "0";Dieser Wert bedeutet:
0 = Es wurde noch keine Weiterleitungsregel ausgeführt.
1 = Eine Weiterleitungsregel hat bereits gegriffen.Jede erfolgreiche Alias-Regel setzt diesen Wert später auf 1.
6.3 Robuste Alias-Erkennung
Jede Alias-Adresse erhält einen eigenen Regelblock.
Der Block prüft mehrere mögliche Empfängerquellen:
Prüfung | Bedeutung |
|---|---|
| Prüft sichtbare Empfänger in To und Cc. |
| Prüft die ursprünglich adressierte Empfängeradresse. |
| Prüft den technischen SMTP-Empfänger. |
Dadurch wird die Weiterleitung robuster als bei einer einfachen Prüfung nur auf To.
7. Beispiel eines vollständigen SIEVE-Filters
Das folgende Beispiel zeigt die empfohlene Struktur für mehrere Alias-Adressen.
require ["fileinto", "copy", "variables", "envelope"];
# Initialwert für Redirect-Flag
set "redirected" "0";
# empfanger01@beispieldomain.ch
if anyof (
address :is ["to","cc"] "empfanger01@beispieldomain.ch",
header :is "X-Original-To" "empfanger01@beispieldomain.ch",
envelope :is "to" "empfanger01@beispieldomain.ch"
) {
redirect "extern01@bluewin.ch";
set "redirected" "1";
}
# empfanger02@beispieldomain.ch
if anyof (
address :is ["to","cc"] "empfanger02@beispieldomain.ch",
header :is "X-Original-To" "empfanger02@beispieldomain.ch",
envelope :is "to" "empfanger02@beispieldomain.ch"
) {
redirect "extern02@hotmail.ch";
redirect "extern03@gmail.com";
set "redirected" "1";
}
# empfanger03@beispieldomain.ch
if anyof (
address :is ["to","cc"] "empfanger03@beispieldomain.ch",
header :is "X-Original-To" "empfanger03@beispieldomain.ch",
envelope :is "to" "empfanger03@beispieldomain.ch"
) {
redirect "extern04@gmx.ch";
set "redirected" "1";
}
# Catch-All nur wenn noch nichts weitergeleitet wurde
# if string :is "${redirected}" "0" {
# redirect "zieladresse@domain.tld";
# }8. Mehrere Zieladressen pro Alias
Wenn eine Alias-Adresse an mehrere Zieladressen weiterleiten soll, wird pro Zieladresse eine eigene redirect-Zeile verwendet.
Beispiel:
# verein@beispieldomain.ch
if anyof (
address :is ["to","cc"] "verein@beispieldomain.ch",
header :is "X-Original-To" "verein@beispieldomain.ch",
envelope :is "to" "verein@beispieldomain.ch"
) {
redirect "person1@example.com";
redirect "person2@example.com";
redirect "person3@example.com";
set "redirected" "1";
}Wichtig:
Das redirected-Flag wird erst nach allen Weiterleitungen innerhalb des Blocks gesetzt.
9. Optionale Catch-All-Regel im SIEVE-Filter
Am Ende des Scripts kann optional eine Catch-All-Regel ergänzt werden.
Diese greift nur dann, wenn vorher keine definierte Alias-Regel ausgelöst wurde.
# Catch-All nur wenn noch nichts weitergeleitet wurde
# if string :is "${redirected}" "0" {
# redirect "zieladresse@domain.tld";
# }Standardmässig ist diese Regel auskommentiert.
Das bedeutet:
# = Diese Zeile wird von SIEVE ignoriert.Wenn die Catch-All-Regel aktiv sein soll, entfernen Sie die # am Zeilenanfang und ersetzen Sie zieladresse@domain.tld durch die gewünschte Zieladresse.
Aktive Variante:
# Catch-All nur wenn noch nichts weitergeleitet wurde
if string :is "${redirected}" "0" {
redirect "info@beispieldomain.ch";
}10. Wichtiger Hinweis zu internen Alias-Zielen und Rekursivität
SIEVE arbeitet nicht rekursiv.
Das bedeutet: Wenn eine SIEVE-Regel an eine andere interne Alias-Adresse weiterleitet, wird nicht automatisch erneut die SIEVE-Regel dieser zweiten Alias-Adresse ausgewertet.
Problematisches Beispiel:
vorstand@beispieldomain.ch → info@beispieldomain.ch
info@beispieldomain.ch → externe.person@example.comWenn vorstand@beispieldomain.ch im SIEVE-Filter lediglich an info@beispieldomain.ch weiterleitet, ist nicht sichergestellt, dass danach nochmals die Regel für info@beispieldomain.ch ausgeführt wird.
Empfehlung:
Interne Alias-Strukturen innerhalb der Domain nach Möglichkeit direkt im Mailserver als interne Aliasse/Postfächer abbilden.
Externe Weiterleitungen im SIEVE-Filter direkt auf die effektiven externen Zieladressen auflösen.
Keine SIEVE-Regeln bauen, die darauf angewiesen sind, dass ein weiterer Alias-Regelblock anschliessend erneut ausgeführt wird.
Robuste Variante:
vorstand@beispieldomain.ch → externe.person1@example.com
vorstand@beispieldomain.ch → externe.person2@example.comStatt:
vorstand@beispieldomain.ch → info@beispieldomain.ch → externe.person@example.com11. Filter speichern und validieren
Nach dem Einfügen des SIEVE-Codes:
Filter auf Aktiv setzen
auf Validieren klicken
mögliche Syntaxfehler korrigieren
Filter speichern
Testmails an mehrere ehemalige Alias-Adressen senden
prüfen, ob alle Zieladressen korrekt beliefert werden
Typische Fehlerquellen:
Fehler | Ursache |
|---|---|
|
|
|
|
Falsche Anführungszeichen | Es müssen normale doppelte Anführungszeichen |
Fehlendes Semikolon | Jede Anweisung wie |
Alte Aliasse noch aktiv | Es kann zu doppelten Zustellungen kommen. |
12. FAQ / Tipps
Was passiert mit E-Mails ohne passende SIEVE-Regel?
Wenn keine optionale SIEVE-Catch-All-Regel aktiv ist, verbleiben diese E-Mails im zentralen Postfach.
Wenn am Ende des Scripts eine aktive Catch-All-Regel eingerichtet ist, werden diese E-Mails an die dort angegebene Zieladresse weitergeleitet.
Sind SIEVE-Regeln sofort aktiv?
Ja. Änderungen an aktiven Filtern greifen unmittelbar nach dem Speichern.
Können mehrere externe Zieladressen hinterlegt werden?
Ja. Pro Zieladresse wird eine eigene redirect-Zeile eingetragen.
Beispiel:
redirect "person1@example.com";
redirect "person2@example.com";
redirect "person3@example.com";Warum wird nicht mehr mit elsif und stop gearbeitet?
Die neue Struktur arbeitet mit einzelnen, unabhängigen Regelblöcken und einem Redirect-Flag.
Dadurch bleibt die Logik übersichtlicher und der optionale Catch-All kann sauber erkennen, ob bereits eine Weiterleitung ausgeführt wurde.
Ein stop am Ende eines Alias-Blocks würde die weitere Scriptverarbeitung abbrechen. Das ist nicht in jedem Szenario gewünscht, insbesondere wenn mehrere Empfängerinformationen oder komplexere Aliasstrukturen geprüft werden sollen.
Warum wird nicht nur "To" geprüft?
Nicht jede E-Mail enthält die ursprünglich adressierte Alias-Adresse zuverlässig im sichtbaren To-Feld.
Je nach Zustellweg kann die relevante Adresse auch in Cc, im Header X-Original-To oder im SMTP-Envelope stehen.
Die robuste Struktur prüft deshalb mehrere Quellen.
Was bedeutet "X-Original-To"?
X-Original-To ist ein technischer Header, der die ursprünglich adressierte Empfängeradresse enthalten kann. Er ist besonders hilfreich, wenn die sichtbaren Empfängerinformationen durch Weiterleitungen oder Zustellprozesse verändert wurden.
Was bedeutet "envelope :is to"?
Damit wird der technische SMTP-Empfänger geprüft. Diese Information ist oft zuverlässiger als sichtbare Header-Felder, weil sie aus dem eigentlichen Zustellvorgang stammt.
Kann der Filter bestehende interne Alias-Ketten automatisch auflösen?
Nein. SIEVE wertet das Script nicht rekursiv aus.
Wenn ein Alias an einen anderen internen Alias weiterleitet, wird dessen SIEVE-Regel nicht automatisch erneut ausgeführt. Solche Fälle sollten vor der Umstellung geprüft und entweder direkt im Script auf externe Zieladressen aufgelöst oder als interne Mailserver-Aliasse abgebildet werden.
13. Zusammenfassung
Mit der neuen Struktur werden externe Alias-Weiterleitungen nicht mehr direkt als externe Mailserver-Aliasse betrieben, sondern über ein zentrales Postfach mit robustem SIEVE-Filter abgebildet.
Der Filter:
erkennt Alias-Adressen über
To,Cc,X-Original-Tound denSMTP-Envelopeunterstützt mehrere Zieladressen pro Alias
nutzt ein Redirect-Flag zur Steuerung der optionalen Catch-All-Regel
vermeidet doppelte Weiterleitungen
ist besser wartbar als alte
if/elsif/stop-Strukturenmuss bei internen Alias-Ketten bewusst ohne rekursive Annahmen geplant werden