Mailu - Mails über Relayhost versenden

Mailu - Mails über Relayhost versenden

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.

Zum Konfigurieren setzt man folgende Variablen:

# 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!

nur ausgewählte Ziele per Relay-Host senden

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. Eine Anleitung wie Mailu konfiguriert wird findet sich hier: https://dr3st.de/mailu-individuell-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