11 Jahre her Linux Serverdienste Blog
Hat man beispielsweise zu Hause einen kleinen Server, von dem man Mails ins Internet versenden will (z.B. Logs, Skriptausgaben, Statusmeldungen o.ä.), muss ein Smarthost verwendet werden. Jeder anständige Mailserver verlangt passende Reverse-DNS-Namen, die man hinter einem DSL-Anschluss i.d.R. nicht hat.
Der Smarthost ist nichts anderes als ein Mailserver eines Providers, über den man Mails verschicken darf. Meist klappt das nach erfolgreicher Authentifizierung. Die folgenden Schritte zeigen, wie man Postfix anweist, sich am Smarthost zu authentifizieren und auch die Absenderadresse zu manipulieren. Letzteres wird bei einigen Smarthosts verlangt.
Folgende Zeilen werden in der main.cf
ergänzt:
smtp_sasl_auth_enable = yes
# noplaintext weglassen, wenn Passwörter im Klartext übertragen werden müssen:
smtp_sasl_security_options = noplaintext noanonymous
smtp_sasl_password_maps = hash:/etc/postfix/sasl_password
Dadurch sagt man Postfix, dass es sich authentifizieren soll, und dass die Anmeldedaten unter /etc/postfix/sasl_password
liegen. Diese Datei muss man natürlich erstellen und nach folgendem Schema die Credentials hinterlegen:
name.smtpserver.tld anmeldename:passwort
Anschließend die Datei vor neugierigen Blicken mit chmod 600 schützen, ein (sudo) postmap hash:/etc/postfix/sasl_password
ausführen und den Postfix-Dienst neu starten. Fortan nutzt der Mailserver den Smarthost und authentifiziert sich. Voraussetzung ist natürlich, dass man name.smtpserver.tld
in der main.cf
als Smarthost eingetragen hat.
Mancher Smarthost verlangt, dass die Absenderadresse auch zu ihm passt. So erlaubt Strato z.B. den Versand nur, wenn man auch eine Absenderadresse aus dem gebuchten Paket verwendet. Auch hierzu wird zuerst die main.cf
erweitert:
sender_canonical_maps = hash:/etc/postfix/sender_canonical
Auch diese Datei /etc/postfix/sender_canonical
erstellt man und befüllt sie folgendermaßen:
benutzer zu-setztende-mailadresse@anbieter.tld
root admin@bluescreengenerator.de
mysql admin@bluescreengenerator.de
Auch hier ist wieder ein (sudo) postmap /etc/postfix/sender_canonical
notwendig, gefolgt von einem Postfix-Neustart. Jetzt wird auch die Absenderadresse angepasst und der Mailversand sollte funktionieren.
Viele Smarthosts verlangen inzwischen, dass der Mailversand über eine verschlüsselte Verbindung stattfindet. Unverschlüsstelte Verbindungen werden dann abgelehnt. Folgende Zeile in der main.cf
versucht zunächst, eine verschlüsselte Verbindung aufzubauen. Schlägt das Fehl, wird eine unverschlüsselte Verbindung aufgebaut.
smtp_tls_security_level = may
Anstelle von may
gibt es auch noch encrypt
, dann wird ausschließlich eine verschlüsselte Verbindung versucht.