Ich bin vor kurzem auf einen neuen Server (mit Postfix 3.3.0) migriert und habe festgestellt, dass die smtp_bind_address
Einstellung inmaster.cfhat keine Wirkung. Der betreffende Server hat 10 IPv4-Adressen und es ist wichtig, dass ausgehende E-Mails über die richtige Adresse weitergeleitet werden. Hier ist ein Ausschnitt dessen, was ich habe (192.168.100.1 ist nur ein Beispiel – die tatsächliche IP ist eine echte WAN-Adresse):
smtp inet n - y - - smtpd
-o smtp_bind_address=192.168.100.1
smtps inet n - y - - smtpd
-o smtp_bind_address=192.168.100.1
Neben diesem Mailserver laufen bei mir auch amavis und postsrsd, sodass die E-Mails von einem Dienst an den nächsten weitergeleitet werden. Ehrlich gesagt bin ich etwas verwirrt über die Ereigniskette, aber vorher hat diese Konfiguration einwandfrei funktioniert.
Ich habe versucht, mich zu smtp_bind_address
bewegenmain.cfund es hat funktioniert, aber es sind andere Probleme aufgetreten, da sowohl amavis als auch postsrsd erwarten, dass E-Mails über 127.0.0.1 übergeben werden.
Wie kann ich im Zusammenhang mit meinen Inhaltsfiltern ausgehende E-Mails an eine bestimmte Adresse binden?
Antwort1
Ausgehende SMTP/Relay-Verbindungen werden über diese Zeilen gesteuert inmaster.conf
smtp unix - - y - - smtp
relay unix - - y - - smtp
Sie können also -o smtp_bind_address=192.168.100.1
das hinzufügen, was Sie benötigen.
Sie können diese Kombination auch verwenden inmain.conf
inet_interfaces = 127.0.0.1 192.168.100.1
smtp_bind_address = 192.168.100.1
Dadurch können Anwendungen eine Verbindung zu 127.0.0.1 herstellen, während ausgehender SMTP standardmäßig an die jeweilige Adresse gebunden wird.
Vergessen Sie nicht, dass die Firewall alle diese Konfigurationen außer Kraft setzen kann, z. B. diese einfache Regel:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
übersetzt die Quelladresse jeder ausgehenden Verbindung (von Schnittstelle eth0) in die primäre (Standard-)Adresse dieser Schnittstelle. Aus der anderen Perspektive könnten Sie die Quelladresse von SMTP-Verbindungen mit Firewall festlegen (ohne Postfix zu konfigurieren):
iptables -t nat -A POSTROUTING -o eth0 -p tcp --dport 25 -j SNAT --to-source 192.168.100.1
Dies ist jedoch nicht flexibel und ich würde dies nur als letzten Ausweg tun (z. B. wenn Sie nicht die Berechtigung haben, die Postfix-Einstellungen zu ändern).