Mails über Relayhost versenden
Falsche Konfigurationen, oder die Wahl eines unpassenden Relayhosts können zu Problemen beim Versand, oder Empfang durch Dritte führen!
Vorwort
Um E-Mails über einen externen Server zu versenden, bietet Mailu native Umgebungsvariablen für den SMTP Docker-Container an.
Mit diesen kann festgelegt werden über welchen Server versendet werden soll und ob eine Authentifizierung erfolgen muss.
allgemeiner Versand via Relayhost
# File: mailu.env
# Adresse / IP des Relay Hosts
RELAYHOST=1.2.3.4
# user:password
RELAYUSER=user@my-domain.de:mein_passwort
Manche Hoster nutzen auch keine E-Mailadresse zum Authentifizieren
RELAYUSER=postfach1234:mein_passwort
In diesem Beispiel werden alle E-Mails die nicht lokal zugetellt werden können über den Relay-Host versendet!
bestimmte Ziele per Relay
In manchen Fällen möchte man nur bestimmte Domains über einen Relay versenden, weil ein Hoster E-Mails von der eigenen IP-Adresse nicht akzeptiert. In diesem Fall funktioniert die Anleitung oben nicht, sondern man muss etwas mehr konfigurieren.
Folgende Schritte sind notwendig
- Postfix Map mit Transport pro Domain und Relay Host konfigurieren
- Postfix zum nutzen der Map konfigurieren
- Authentifizierung hinterlegen (falls notwendig)
#File: postfix.cf
# Transport-Ziele in transport.map hinterlegen
transport_maps = hash:/etc/postfix/transport.map
# Passwort pro Relay-Server
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd.map
# Authentifizierung aktivieren
smtp_sasl_auth_enable = yes
# deaktivieren von verschlüsselten Passwörtern, die Transport-Verschlüsselung ist aktiviert, Passwörter müssen oft im Klartext genutzt werden
smtp_sasl_security_options = noanonymous
# File: transport.map
t-online.de smtp:irgend.ein.smtp-server.com
test.de smtp:1.2.3.4
# File: sasl_passwd.map
irgend.ein.smtp-server.com myuser@smtp-xy.com:mein_p4ssword
1.2.3.4 postfachx:super_sicher!
Nach der Konfiguration
Im Anschluss muss der SMTP Container neugestartet werden, oder sogar neu erstellt werden, falls die Option mit Docker Variablen genutzt wurde:
# Fall: Docker Variablen, Neubau des Containers
docker-compose up -d
# Fall: postfix.cf und Maps
docker-compose restart smtp