Zum Inhalt springenZur Hauptnavigation springenZur Suche springen

E-Mail-Versand unter Linux einrichten

Postfix installieren

Über das Paketmanagement wird das Paket "postfix" installiert. Dabei wird evtl. ein bisher schon vorhandener Mail-Transfer-Agent automatisch deinstalliert.

CA-Zertifikate für postfix installieren

Im Abschnitt CA-Zertifikate installieren unter Linux wurden *.pem-Dateien erzeugt, die in das systemweite Zertifikate-Management integriert wurden.
Der Mail-Transfer-Agent Postfix verwendet jedoch ein eigenes Zertifikate-Management, so dass wir die Zertifikate hier gesondert bereitstellen müssen.

Dazu wird das Verzeichnis /etc/postfix/cacerts angelegt, falls noch nicht vorhanden. Die *.pem-Dateien werden in dieses Verzeichnis kopiert.

Unter RHEL 6 und Clones wird der Befehl

 

/usr/sbin/cacertdir_rehash /etc/postfix/cacerts

ausgeführt, auf neueren RHEL-Systemen und -Clones sowie Debian und Derivaten wird stattdessen

 

/usr/sbin/c_reheash /etc/postfix/cacerts

benutzt.

Services-Eintrag für Port 587

In der Datei /etc/services werden die Zeilen

 

submission      587/tcp msa
submission      587/udp msa

eingetragen, falls noch nicht vorhanden.

Relay-Host und Port eintragen

In /etc/postfix/main.cf wird der Eintrag

 

relayhost=[smtp.fh-schmalkalden.de]:submission

erstellt. Dieser gibt vor, zu welchem Host und Port ausgehende Mails geschickt werden.

Die eckigen Klammern bedeuten, dass ein Hostname direkt angegeben wird und nicht ein Domain-Name, für den erst ein MX-Record gesucht werden müsste.

Verschlüsselung erzwingen

Nutzername und Passwort, die für die Anmeldung verwendet werden, sollen nicht im Klartext über Internet oder WLAN übertragen werden. Deshalb aktivieren wir die Verschlüsselung und erstellen in /etc/postfix/main.cf die Einträge

 

smtp_tls_security_level = encrypt
smtp_tls_CApath = /etc/postfix/certs

hierfür.

An Relayhost mit Nutzernamen und Passwort anmelden

Von außen kommend, darf natürlich nicht jeder den Postausgangsserver der HSM benutzen. Eine Anmeldung mit Nutzernamen und Passwort ist erforderlich.

Auch dies wird in /etc/postfix/main.cf konfiguriert:

 

smtp_sasl_auth_enable = yes
smtp_sasl_security_options = noanonymous
smtp_sasl_password_maps = hash:/etc/postfix/sasl_password

Die Einträge legen fest, dass Nutzername verwendet werden dürfen und dass kein anonymer Versand möglich ist. In der Summe heißt das, dass eine Anmeldung zwingend erforderlich ist.
Nutzername und Passwort werden dabei einer lokalen Datenbank entnommen.

Datenbank mit Nutzernamen und Passwort anlegen

Mit den Befehlen

 

touch /etc/postfix/sasl_password
chown root:root /etc/postfix/sasl_password
chmod 600 /etc/postfix/sasl_password

wird zunächst eine leere Datenbank-Quelldatei angelegt und mit Berechtigungen versehen.

In die Datei /etc/postfix/sasl_password wird nun folgender Inhalt eingetragen:

 

[smtp.fh-schmalkalden.de]:submission    user:password

Nutzername user und Passwort password sind die zur FHS-ID gehörigen.

Nach dem Anlegen der Datei und später nach jeder Änderung muss mit

 

postmap /etc/postfix/sasl_password

die entsprechende Datenbank aus der Quelldatei (neu) erzeugt werden.

Absender-Benutzernamen konfigurieren

Normalerweise wird als Absender - insbesondere wenn Systemkomponenten automatisch Mails schicken - der lokale Benutzername verwendet. Mailserver im Internet akzeptieren solche Absender jedoch nicht sondern erfordern "normale" zustellbare E-Mail-Adressen in üblicher Form als Absender.

In /etc/postfix/main.cf wird durch

 

sender_canonical_maps = hash:/etc/postfix/sender_canonical

konfiguriert, dass die Zuordnung von E-Mail-Adressen zu lokalen Nutzeraccounts über eine Datenbank erfolgt, die aus der Quell-Datei /etc/postfix/sender_canonical gebildet wird.

Diese Datei enthält in jeder Zeile eine Zuordnung bestehend aus einem lokalen Benutzernamen, ein oder mehreren Leerzeichen und der E-Mail-Adresse.

Es sollten Zuordnungen für alle "normalen" Nutzer, root und ggf. weitere System-Accounts erfolgen.

Wurde die Datei /etc/postfix/sender_canonical neu erstellt oder geändert, muss mit

 

postmap /etc/postfix/sender_canonical

die Datenbank aktualisiert werden.

Empfänger-Benutzernamen konfigurieren

Einige Systemkomponenten versenden automatisch Mails, inbesondere an den Nutzer root.

Hier muss dem Nutzer root eine existierende E-mail-Adresse zugeordnet werden, dies erfolgt über E-Mail-Aliases.

Diese E-Mail-Aliase werden über die Datei /etc/aliases konfiguriert.

Jede Zeile enthält eine Zuordnung, bestehend aus dem Alias-Namen, einem Doppelpunkt, ein oder mehreren Leerzeichen und der zu verwendenden E-Mail-Adresse.

Es sollten immer mindestens Zuordnungen für die Nutzer "root" und "Postmaster" vorgenommen werden.

Nach dem Erstellen und nach jeder Änderung von /etc/aliases muss mit dem Kommando

 

newaliases

die verwendete Datenbank neu aufgebaut bzw. aktualisiert werden.

Neustart von Postfix

Zum Abschluss der Konfigurationsarbeiten wird Postfix mit

 

service postfix stop
sleep 2
service postfix start

neu gestartet. Auf Systemen mit systemd sind hier möglicherweise andere Kommandos erforderlich.