[Postfixbuch-users] Mailversand via Webcommnity und unzustellbare Mails

Thomas Schwenski mailing-lists at thomasschwenski.de
Di Dez 9 20:31:28 CET 2008


Erstmal vornweg:
Bitte kein ToFu und Thread-Hijacking.

Zu Deinem Anliegen:
> Fragen:
> 1. Gibt es eine Möglichkeit, das Informationen über technische
> Nichtzustellbarkeit auch beim From-Absender aus dem Header landen? Ich
> habe die Erfahrung gemacht, dass wenn ich im SMTP-Envelop auch die FROM
> Adresse angebe, die nicht die gleiche Domain hat wie die meines
> Mailservers, dann wird die Mail oft als Spam abgelehnt, was ja auch
> verständlich ist.

Das ist auch gut so.
Dafür gibt es m.E. keine zufriedenstellende Lösung, außer Du handelst
mit den Betreibern aller From-Mailserver eine entsprechende
Vertrauensstellung aus.
Aber das ist eher unrealistisch.

> 2. Wenn es keine positive Antwort auf Frage 1 gibt, kennt jemand einen
> Workaround? z.B. die Mails parsen und dann automatisch weiterleiten.

Vorarbeit/Geplänkel:
Du definierst für die Envelope-From-Adresse einen Transport per pipe an
ein Script, dass eingehende Mails auswertet.
Dieses Script "kennt" alle versendeten Mails und kann diese zuordnen.

Variante 1:
Du schreibst in jede Mail eine personalisierte Headerzeile.
Nachteil: Schlechte Mailserver, die bouncen statt zu rejecten zerstören
unter Umständen das Konzept, da in der Bouncemail nicht zwangsläufig die
relevante Headerzeile zitiert wird.
Selbes gilt wenn Du das über die Mail-ID auswerten lassen willst.

Variante 2:
Jede Mail bekommt einen einmaligen Envelope-From-Absender.
Diese E-Mail-Adressen sind nach einem bestimmten Muster gestaltet, z.B.
<ID>@webbot.example.com.
Anhand des Hostnamens wird der Transport definiert: zu Script.
Das Script wertet dann den User aus, extrahiert die ID.
Bei einer "bekannten" ID sendet das Script eine Nachricht an den
Absender in der Community, bei allem anderen entweder an Dich oder
DISCARDed die Mail.
Du könntest auch Adressen nach noreply-<ID>@webbot.example.com oder
<ID>@do-not-reply.example.com verwenden.

Noch einfacher geht's wenn Du als Backend für Postfix eine Datenbank
verwendest, dann kann Postfix Mails an ungültige Envelope-From-Absender
direkt rejecten.
Das wäre auch Best-Practice.

Von der Verwendung von Adress-Extensions für die ID würde ich absehen.
Meiner Meinung nach stehen die Chancen gut, dass die bei einem Bounce
ebenfalls entfernt werden, da einige Mailserver (wie etwa der Exchange
(2003)) damit nix anfangen können.

> Gibt es dafür schon Programme, Skripte, etc?

Ich kenne keine.
Aber mit etwas Programmiererfahrung lässt sich sowas nach dem von mir
genannten Konzept auch "schnell" selbst in Perl oder der geeigneten
Scriptsprache Deiner Wahl umsetzen.


Ich hoffe meine Gedanken zum Thema helfen Dir weiter.

Thomas



Mehr Informationen über die Mailingliste Postfixbuch-users