[Postfixbuch-users] LDAP-Lookup und Ausfallsicherheit

Thomas Stiefel Postfix at TMI-RZ.de
Do Nov 29 07:37:34 CET 2007


Hallo zusammen,

wir haben folgende Ausgangssituation:
Wir betreiben 3 Postfix-Server als SMTP-Relays, die im Internet hängen
und schon mal einiges an SPAM vorfiltern. Die Mails werden dann an einen
Domino-Server DOM2 (ebenfalls in der DMZ) per SMTP weitergeleitet, auf
dem weitere Checks laufen. Wir haben allerdings in der letzten Zeit das
Problem, dass wir sehr viele Mails mit falschen Empfänger-Adressen
bekommen, die das Domino-System unnötig belasten.

Daher wollen wir per LDAP direkt eine Abfrage auf Benutzer im
Domino-Directory ausführen und alle Mails abweisen, die nicht an eine
gültige Adresse gehen. Ich habe auf dem DOM2 den LDAP-Server
konfiguriert und gestartet sowie auf unserem Testsystem mittels
relay_recipient_maps  ein LDAP-Lookup eingerichtet, das auch wie
gewünscht funktioniert.

Das Problem ist nun allerdings, dass wir während des Offline-Backups des
Domino-Servers temporäre Lookup-Fehler erhalten und die Mails dann
temporär abgelehnt werden:

451 <user at domain.de>: Temporary lookup failure

Da sich auf das Testsystem in der Regel nur ein paar wenige SPAM-Mails
verirren ist das nicht ganz so tragisch, aber auf den Produktiv-Servern
können wir das nicht gebrauchen. Daher bräuchten wir eine Lösung, damit
auch in der Zeit wo der DOM2 down ist die Mails weiterhin angenommen und
zugestellt werden. Nach einiger Recherche und reiflicher Überlegung bin
ich auf 2 mögliche Szenarien gekommen.

Variante A:
Ich könnte auf dem internen Domino-Server DOM1 im Intranet auch einen
LDAP-Server aktivieren und diesen als 2. Ziel für den Lookup
konfigurieren. Wobei sich hier die Frage stellt wie man das am besten
konfiguriert. Die einfachste wäre wohl ein DNS-Alias, der auf beide
Server zeigt und somit sollte Postfix dann hoffentlich automatisch auf
DOM1 zugreifen, wenn DOM2 down ist.

Variante B:
Ich habe in einer Mail von Sandy gelesen, dass man wohl auch per Script
das LDAP-Directory abfragen und das Ergebnis in eine Hash-DB schreiben
kann. Es müsste hier allerdings neben der Internet-Adresse auch das Feld
Kurzname aus dem Domino-Directory mit abgefragt werden.

Die LDAP-Query für Postfix lautet:  query_filter =
(|(mail=%s)(uid=%u)(uid=%s))

Die Variante B würde ich ganz klar bevorzugen, da ich hier nicht nur
keinen 2. LDAP-Server laufen lassen müsste und den Zugriff aus der DMZ
ins Intranet nicht erlauben müsste, sondern vor allem auch die Anzahl
der LDAP-Abfragen minimieren könnte - was den Domino-Server zusätzlich
entlasten würde.

Ich wäre für jeden vernünftigen Vorschlag sehr dankbar.

Gruß
Tom






Mehr Informationen über die Mailingliste Postfixbuch-users