Kurzreport - Spaß mit Postfix und transport maps

Hallo,
ich bin durch ein Problem mit einem E-Mail Provider auf die Idee gekommen, ob man nicht bestimmte Domains mit einem anderen SMTP-Server verschicken kann. Tatsächlich funktioniert das sogar mit relativ wenig Aufwand.

Transport spezifizieren

Als erstes müssen wir dem Postfix mitteilen über welchen SMTP-Server die Domains verschickt werden sollen.
Dazu muss folgendes in die /etc/postfix/main.cf. In dem Beispiel wollen wir E-Mails, die Domain "example.com" gehen, mit einem anderen SMTP-Server verschicken.

relay_domains = $mydestination, example.com
transport_maps = hash:/etc/postfix/transport

Nun müssen wir in der /etc/postfix/transport eintragen, wie nun unsere Domain geroutet werden soll (an smtp.example.net).

example.com smtp:smtp.example.net:587

"587" ist der genutzte SMTP-Port, da die meisten Anbieter nicht mehr 25 erlauben.
Datenbank für "transport" erstellen.

postmap /etc/postfix/transport

SMTP-Server Authentifizierung

Die meisten SMTP-Server werden aus Spam Gründen ohne Anmeldung nicht funktionieren.
Daher müssen wir für "smtp.example.net" noch einen Benutzernamen und Passwort hinterlegen.
Folgender Eintrag in der /etc/postfix/main.cf

smtp_sasl_auth_enable = yes
smtp_sasl_security_options = noanonymous
smtp_sasl_password_maps = hash:/etc/postfix/sasl/sasl_passwd

In die /etc/postfix/sasl/sasl_passwd kommt nun noch der Benutzer und das Passwort.

smtp.example.net:587 benutzer@example.net:passwort

Hier auch wieder die Datenbank erstellen.

postmap /etc/postfix/sasl/sasl_passwd

Fazit

Jetzt nur noch den Postfix neustraten und schon sollte alle E-Mails die an example.com gehen über smtp.example.net verschickt werden.
Das Ganze ist hilfreich, wenn man bei einigen E-Mail Anbietern im Spam ladet, obwohl man alles sauber eingerichtet hat. Es gibt bestimmt noch andere Einsatzmöglichkeiten dafür und es zeigt was mit Postfix von Haus aus schon alles möglich ist.

THS