Suche
Suche Menü

Postfix als Send-Only-SMTP Server installieren und konfigurieren

Um auf einem Linux Server (in meinem Beispiel Ubuntu) Mails versenden zu können, kann Postfix als SMTP Server konfiguriert werden.

Postfix installieren

Postfix lässt sich am schnellsten mit den Mail-Utils installieren

sudo apt update
sudo apt install mailutils

Während der Installation fragt Postfix nach dem Modus in dem es installiert werden soll

Als Standard-Option ist «Internet Site» vorbelegt. Dies ist für unseren Anwendungsfall korrekt. Sollte diese Meldung während der Installation nicht erfolgen, so kann dies mit folgenem Befehl die Konfiguration von Postfix nochmals durchgeführt werden:

sudo dpkg-reconfigure postfix

Anschliessend den Namen des Servers festlegen. Der System-E-Mail-Name muss gleich sein wie der Name, welcher deim erstellen des Servers diesem zugewiesen wurde.

Konfiguraton von Postfix

Nun muss die Konfiguration von Postfix angepasst werden, so dass die E-Mails über einen externen SMTP Server versandt werden können.

sudo nano /etc/postfix/main.cf

Folgende Zeilen müssen angepasst werden (bestehende Werte ersetzen)

inet_interfaces = loopback-only
mydestination = localhost.$mydomain, localhost, $myhostname

SMTP Authentification über SASL aktivieren

In der main.cf folgende weiteren Zeilen erweitern (relayhost ist bereits im File vorhanden)

smtp_use_tls = yes
smtp_tls_wrappermode = yes
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt

relayhost = [mail.domain.ch]:465

–> relayhost muss mit dem genutzten Mailserver ergänzt werden.

sasl_passwd Datei erstellen

Nun die sasl_passwd Datei erstellen

sudo nano /etc/postfix/sasl_passwd

Folgenden Inhalt einfügen:

[mail.domain.ch]:port user:pass
Anschliessend die Datenbank hashen

sudo postmap /etc/postfix/sasl_passwd

Nun Postfix neustarten

sudo service postfix restart

Test-E-Mail versenden

Über folgenden Befehl kann nun getestet werden ob E-Mails über Postfix versandt werden können:

echo "Das ist der E-Mail Inhalt!" | mail -s "Betreff des Mails" -a "From: absender@domain.ch" empfaenger@domain.ch

Sollte kein E-Mail ankommen, so kann im Logfile nachgeschaut werden was Postfix zurückmeldet:

tail -100 /var/log/mail.log

Absenderadresse fix einstellen

Je nach dem kann es sinn machen, eine fixe E-Mailadresse als Absender einzustellen, da über den SMTP Server nur definierte E-Mailadressen oder Domains verwendet werden können. Diese Konfiguration ändert die Absenderadressen sowohl von lokalem als auch von weitergeleitetem SMTP-Mailverkehr:

In der /etc/postfix/main.cf folgendes einfügen:

sender_canonical_classes = envelope_sender, header_sender
sender_canonical_maps =  regexp:/etc/postfix/sender_canonical_maps
smtp_header_checks = regexp:/etc/postfix/header_check

Rewrite der Absenderadresse von E-Mails, die vom Server selbst stammen.

In der /etc/postfix/sender_canonical_maps folgendes hinterlegen:

/.+/    adresse@domain.ch

Rewrite von Adressen welche über SMTP relayed wurden

In der /etc/postfix/header_check folgendes hinterlegen:

/From:.*/ REPLACE From: adresse@domain.ch

Schreibe einen Kommentar

Pflichtfelder sind mit * markiert.