Willkommen im User-Forum von mailbox.org
 

Filter auf "Envelope An" funktioniert nicht bei CatchAll Adressen

9841888 hat dies geteilt, 2 Jahren her
veröffentlicht

Zwar heißt es hier (https://mailbox.org/otp-2-faktor-auth-pgp-keyserver-mailvelope-mail-backup/) dass nun bei externen Domains die Mailadressen bis in die Sieve-Mailfilter hinein

transportiert werden und dort als Filter-Kriterium „Evelope-An“ zur

Verfügung steht (was gerade für catchall-Adressen von Bedeutung ist).

Allerdings greift kein Filter mit der Bedingung "Envelope An" ganz gleich wieviel ich auch herumversuche. Hat noch jemand das Problem?

Würde mich auch über eine positive Rückmeldung mit Beispielen sehr freuen!

BG

Kommentare (16)

Foto
1

push

Foto
1

Ich hab mir mal den Quelltext einer Mail an eine Adresse mit verwendeter catch-all-Funktion angeschaut.

Der letzte Empfänger ist immer deine echte Adresse. Wenn ich so drüber nachdenke, auch logisch, wenn jede beliebige E-Mail zuletzt auch an dein Account zugestellt werden soll. Ich denke, damit kannst du die envelope-to-Regeln vergessen, da der letzte envelope-to immer an deine Hauptadresse geht.

Was aber funktioniert, selbst getestet, wenn du die Regeln mit "irgendein Empfänger" == .... machst

Foto
1

So wirklich logisch scheint mir das nicht. Wenn man eine normale Alias Addresse hat, landen die Mails ja auch in der Inbox der Hauptaddresse obwohl sie an die Alias Addresse ausgeliefert werden.

Die Frage ist, warum `received for` und `delivered-to` bei Alias Addressen bis zum Schluss erhalten bleiben, mit Catch-All Alias Addressen aber bei der Übergabe von Postfix zu Dovecot verloren gehen.

Foto
2

Hilft nix, ist aber logisch.

Wir können im IMAP-Backend nur existierende Mailadressen auflösen und verwalten: Also Hauptadressen oder konkret hinterlegte Aliase. Das IMAP-Backend kann nicht unspezifische "catch-all"-Adressen verarbeiten, denn diese könnten nicht eindeutig einem Speicherort für die Mails zugeordnet werden und lassen sich auch technisch nicht auflösen ("matchen"). Das IMAP-Backend würde den zugehörigen Account nicht finden können.

Die vorgeschalteten Mailserver können das, diese sind etwas anders gestrickt. Dort wird als letzter Versuch bei nichtexistenten Adressen immer auch nach "@example.com" in den Datenbanken gesucht und damit ein catch-all gefunden. Die Software funktioniert da anders.

Sprich: Hinterlegte Aliase werden mit dem Alias bis ins Backend transportiert und sind auch dort noch an den Alias adressiert, denn der steht konkret in der Datenbank.

Catch-Alls werden hingegen schon direkt beim Mailempfang auf die Hauptadresse umgeschreiben und reiten dann adressiert an die Hauptadresse über die Ziellinie ins Backend.

Foto
2

Vielen Dank für die detailierte Erklärung.

Wäre es vielleicht möglich stattdessen einen X-Header zu setzen?

Das Problem ist jetzt nicht so drängend, da die meisten BCCs von Mailinglisten u.ä. kommen, und alternativ nach Absender/Empfänger gefiltern werden können. Es macht nur deutlich mehr Arbeit eine Regel pro Quelle hinzuzufügen.

Foto
1

Ich bin eben in dasselbe Problem reingerannt.

Zitat:

  1. Catch-Alls werden hingegen schon direkt beim Mailempfang auf die Hauptadresse umgeschreiben und reiten dann adressiert an die Hauptadresse über die Ziellinie ins Backend.

Frage dazu: wäre es denkbar, dass das konfigurierbar wird?

Ich würde mir gern einen Alias "catchall@meinedomain.xyz" anlegen und hätte die Catch-Alls gern dorthin, statt auf die Hauptadresse umgeleitet.

Mein aktuelle Workaround-Idee: Die CatchAll-Adresse zur Hauptadresse machen. Das kommt mir aber nicht so schön vor ;-)

Über einen zusätzlichen Header, der dann auch in den Sieve-Filtern explizit geprüft werden kann, würde ich mich aber auch freuen.

Im Grund würde dass die Obergrenze von 25 Alias-Adressen aber aufheben, weil man mit CatchAll + SieveFilter praktisch beliebig viele Aliases bequem auseinander halten könnte. Spricht etwas gegen so ein vorgehen?

Viele Grüße

Manuel

Foto
Foto
1

Filter auf "Envelope An" funktioniert weiterhin nur mit der oben genannten Einschränkung, dass dafür jeweils ein Alias angelegt werden muss – was bei Catchall entsprechend wenig praktikabel ist.

Als Alternative ist unter https://userforum.mailbox.org/topic/blacklist-f%C3%BCr-eigene-domain-mit-catchall ist mittlerweile beschrieben, wie man direkt auf den Received-Header filtern kann, womit sich einzelne Empfänger relativ bequem filtern lassen.

Foto
1

Ich finde es auch schade, dass es bei catch-all keinen Envelope-to header gibt, gegen den man filtern kann.

Es gibt aber ein Workaround, der bei mir seit langem gut funktioniert:

Einen Filter mit der Bedingung vom Typ "Header" mit

Name = "Received", Vergleichsoperation "Regexp" und dann

".*by mx.\.mailbox\.org.*for <[mailadresse]@[mydomain].de>.*"

Denn im ersten Reiceived-Header steht immer noch die Original-Mailadresse, über die die Mail beim Server angekommen ist.

Foto
5

Wir werden in Kürze aktivieren, daß Envelope-Adressen zu den Mailbackends durchgereicht werden.

Foto
1

Danke!

Foto
1

Sehr Cool Danke

Foto
1

echt stark, vielen Dank!

Foto
1

Ich hab mich sehr gefreut das zu lesen.

Was aber genau heißt denn in Kürze?

In der Mail-Ankündigung vom 16.11.2018 steht "Im Zuge unseres Relaunches ... ab sofort ..." bzw. auf Englisch einfach nur "From now on" ...

Hintergrund meiner Frage:Und muss nun leider feststellen ich bekomm es nicht hin.

Ich hab catch-All für meine Domain aktiviert.

Wenn ich eine "Nicht-Alias-Adresse" die per Catch-All entgegen genommen wird dann mit "Irgendein Empfänger" filtere klappt das nach wie vor.

Wenn ich sie mit "Envelope" "An" filtere klappt das nicht.

Was könnte ich falsch machen?

Foto
Foto
1

Könnte jemand bitte kurz ein Beispiel skizzieren, welches in Zukunft nicht mehr funktionieren würde? Ich hoffe nämlich, dass hier nichts "zusammenbricht", wenn ich nicht aktiv werde ;)

[Edit: Aktuell filtere ich gegen "TO:" und solange ein match gefunden wird, wird die Nachricht in einen (Team-) Ordner verschoben und keine weiteren Regeln ausgeführt. Gibt es keinen match, dann greift der finale @domain.xyz Filter und verschiebt in einen generischen Ordner mit Zugriff fürs gesamte Team]

Vielen Dank!

Foto
1

Ich filtere i.d.R. auf "Irgendein Empfänger", und das funktioniert schon länger nicht mehr ordentlich. War aber bisher zu faul, das zu korrigieren. So viele Mails sinds dann auch nicht, die gefiltert werden.

Foto
Foto
1

Ich habe mir zum Test diesen Sieve-Filter als vorletztes in die Kette gehangen:

  1. require [ "envelope" , "fileinto", "variables", "mailbox"];
  2. if envelope :all :matches "to" "*@meinedomain.de"
  3. {
  4. fileinto :create "catchalls/${1}@meinedomain.de" ;
  5. stop ;
  6. }

Sobald die Catchall-E-Mails ein echtes Envelope-To tragen, müsste ich das dann an den zunehmenden Ordnern merken.

Schöne Spielerei! Danke für die Möglichkeit