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