[Postfixbuch-users] Absender-abhängige smtp_bind_address

Sandy Drobic postfixbuch-users at japantest.homelinux.com
Mo Apr 7 12:13:30 CEST 2008


Rainer Frey wrote:
> Hallo zusammen,
> 
> ich hab grad folgendes Problem: wegen eines Sender-Zertifizierungsprogramms 
> muss ich auf einem Server die Verwendung einer ausgehenden IP-Adresse pro 
> Kunde (sprich: pro Absende-Adresse) implementieren. 

Bist du dir sicher, dass dies der richtige Weg ist?

> Geht das mit Postfix, und wenn ja, wie? (Version kann gern 2.5 mit allen 
> möglichen Features sein, der Server ist noch nicht aufgesetzt).
> 
> Die Absender lassen sich problemlos so konfigurieren, dass sie, wenn das nötig 
> ist, auch direkt auf dieser Adresse einliefern, es wird auch hostnames für 
> die IPs, und evtl. MX-Einträge geben.
> 
> Mein erster Gedankenansatz wäre: wird vielleicht bei einer Maschine mit 
> mehreren IP-Adressen sowieso die Adresse genommen, über die die Mail auch 
> reingekommen ist? In dem Fall würde ja inet_interfaces=all und 
> smtp_bind_address=(leer) bereits reichen, um das umzusetzen. Allerdings hab 
> ich in der Doku keine definitive Information gefunden, was in diesem Fall 
> passiert.

Nein, die IP, welche der smtp Client verwendet, hängt allein vom Kernel ab, 
der das Routing übernimmt. Steuern lässt sich dies nur über smtp_bind_address.

> 
> Die zweite Idee: sender_dependent_relayhost_maps. Man kann ja pro zu 
> verwendender IP-Adresse einen smtp-Transport konfigurieren (mit -o 
> smtp_bind_address=...). Allerdings verstehe ich die Doku so, dass  in 
> sender_dependent_relayhost_maps ein nexthop stehen muss, und nicht ein 
> transport (die nexthop-Auflösung wäre ja der Default anhand der 
> Empfängeraddresse). Oder täusche ich mich da, und ich kann einen 
> Transport-Namen angeben?

relayhost ist in der Tat der nächste Hop, also nicht geeignet.

> Dritte Idee: per transport_maps auf eben diese spezifischen smtp-Transports 
> verweisen. Da ich keine Verbindung zwischen Kunde und Empfängeradresse habe, 
> muss die Verknüpfung zum richtigen transport-Eintrag anders erfolgen. Ich 
> kann ja auch einen 'smtpd' pro zu verwendender IP einrichten, um die 
> Konfiguration anzupassen. Nur wird transport_maps ja von trivial-rewrite und 
> nicht von smtpd ausgewertet. Gibt es irgendweine Möglichkeit, vom smtpd 
> Informationen/Optionen an trivial-rewrite zu übergeben, die das routing 
> beeinflussen? 

Du kannst hier über Kopien von smtp spezielle Transporte mit smtp_bind_address 
verwenden. Der Transport müsste dann über check_sender_access mit der Aktion 
FILTER auf diesen Transport verweisen. Aus Sicherheitsgründen sollte dann 
natürlich auch eine Authentifizierung nicht fehlen und eine Einschränkung, 
dass nur authentifizierte Clients diese Absenderadrese benutzen dürfen.

> Dann wäre noch die Frage der Skalierbarkeit. Es kann durchaus im Lauf der Zeit 
> in den dreistelligen Bereich an Absender-Adressen geben. Zumindest die Anzahl 
> an smtpd-Prozessen is irgendwann am Limit. 

smtpd ist nicht entscheidend, hier ist smtp gefragt. Im dreistelligen Bereich 
könntest du inzwischen aber echte Probleme bekommen, so viele IP-Adressen zu 
bekommen. Ich halte dieses Modell nicht für skalierbar.

> Aber auch die Lösung mit nur einer smtpd-Instanz, die sich an alle Interfaces 
> bindet, stelle ich mir nicht ganz ohne vor  Gibt es auch Probleme bei der 
> Anzahl an IP-Adressen? Macht es Schwierigkeiten, wenn ein Prozess auf 
> duzenden bis hunderten IP-Adressen (Aliase auf ein oder zwei physikalische 
> Interfaces) hören muss? Betriebssystem wird Linux sein, entweder Debian oder 
> Redhat Enterprise.

Mehrere IP-Adressen macht keine Probleme (wie bereits angeführt: smtpd ist für 
Empfang, smtp für das Senden verantwortlich) beim Empfang, beim Senden kann 
natürlich nur eine IP mit smtp_bind_address verwendet werden, sonst wählt 
Postfix die vom Kernel-Routing vorgegebene Adresse für smtp, was sinnvoll ist.
-- 
Sandy

Antworten bitte nur in die Mailingliste!
PMs bitte an: news-reply2 (@) japantest (.) homelinux (.) com




Mehr Informationen über die Mailingliste Postfixbuch-users