[Postfixbuch-users] Mails für eine Domain am backup-mx nur annehmen, wenn auch der local part stimmt

Ruben Rögels ruben.roegels at jumping-frog.org
Mi Sep 28 20:04:28 CEST 2011



Am 28.09.2011 19:48, schrieb Alexander Stoll:
> Am 28.09.2011 19:24, schrieb Ruben Rögels:
>> Schönen Guten Abend,
>>
>>
>> folgendes Szenario:
>>
>> Zwei Mailserver (mx1.example.com und mx2.example.com) sind für mehrere
>> Domains zuständig. Das ganze wird mit den virtual_* Parametern und einer
>> SQL-Datenbank erledigt.
>>
>> Nur mx1 stellt auch an Postfächer zu, mx2 ist ein reines
>> store&forward-System.
>>
>> Nun das Problem:
>>
>> Am mx1 prüfe ich mit virtual_mailbox_domains ob er für die Domain
>> zuständig ist, fällt die Prüfung positiv aus, wird mit
>> virtual_mailbox_maps und virtual_alias_maps über Zustellung oder
>> Weiterleitung entschieden.
>>
>> Falls der local_part nicht existiert verweigert mx1 die Annahme der
>> E-Mail gegenüber dem einliefernden mx - es wird nicht gebounced!
>>
>> mx2 prüft über virtual_mailbox_domains nur die Domains für die er
>> zuständig ist und nimmt deswegen natürlich fleißig alle E-Mails an eine
>> Domain an, egal ob der local_part überhaupt zugestellt werden kann oder
>> nicht. Beim relayen an mx1 akzeptiert dieser die E-Mail natürlich nicht
>> und mx2 bounced die Mail dann - schlecht.
>>
>> Mein Ansatz:
>>
>> mx2 prüft über virtual_mailbox_domains die vollständigen Adressen. Eine
>> geeignete Datenbankabfrage sorgt dafür, dass mx2 nur dann eine Domain
>> als Antwort aus der Datenbank erhält, wenn local_part+'@'+domain
>> entweder eine maibox ist oder ein alias, ansonsten liefert das Query
>> keine Domain als Antwort und mx2 verweigert die Annahme(?) (so wie es
>> mx1 auch tun würde).
>>
>> Meine Frage:
>>
>> Ist das ein sauberer Ansatz oder habe ich jetzt etwas komplett übersehen?
>>
>> Vielen Dank&  Gruß,
>> Ruben
>>
> Ja, dieses Setup ist ein Musterbeispiel einer unnötigen Redundanz
> (Store&Forward) mit zusätzlicher Fehlerquelle (Backscatter) so lange
> nicht irgendwelche (praktischen!) Lastfälle eine Rolle spielen.
> 
> Dieses Setup ist nur sinnvoll wenn:
> - Last verteilt werden soll/muss
> - Ein redundantes Backend den Zugriff auf die Postfächer sichert wenn
> ein (Front)System tatsächlich mal lahmt.
> 
> Ansonsten spart man sich die Komplexität eines zweiten MX mit der
> Notwendigkeit auch auf dem für eine funktionierende Empfängervalidierung
> sorgen zu müssen.
> 
> Zum Ansatz: Grundsätzlich richtig, wie man das am elegantesten erledigt
> und ob das ein DB-Backend sein muss, gibt die Eingangsinfo nicht her.
> 

Hallo,

danke für Deine klare Antwort.

Nach kurzer Überlegung komme ich zum Schluss, dass ich mir den vorerst
mx2 sparen kann.

Dennoch interessiert mich, wie ich ein solches Szenario am
geschicktesten betreibe. In naher Zukunft wird mx2 wirklich Last
verteilen und Redundanz bieten müssen, von daher ist sein Einsatz nicht
ganz unberechtigt.

Datenbankanbindung ist zwingend erforderlich, da über ein Web-Frontend
die virtuellen Postfächer konfiguriert werden.

Danke & Gruß,
Ruben




Mehr Informationen über die Mailingliste Postfixbuch-users