Zurück zum Blog

Installieren und Konfigurieren von Postfix als Send-only-SMTP-Server auf Ubuntu 20.04

Installieren und Konfigurieren von Postfix als Send-only-SMTP-Server auf Ubuntu 20.04

Postfix ist eine beliebte freie und Open-Source-Software, die als Mail Transfer Agent (MTA) agiert. Die Aufgabe von Postfix ist es, E-Mails weiterzuleiten und zuzustellen. Neben der klassischen Nutzung kann Postfix auch so konfiguriert werden, dass E-Mails nur von lokalen Anwendungen gesendet werden.

Diese Anwendung von Postfix ist ein nützlicher Trick, der in verschiedenen Situationen eingesetzt werden kann. Sie kann beispielsweise beim regelmäßigen Versenden von E-Mail-Benachrichtigungen verwendet werden, bei der Zusammenarbeit mit einem Drittanbieter-E-Mail-Dienst mit begrenztem ausgehenden Datenverkehr usw. Im Vergleich zu einem vollwertigen SMTP-Server ist Postfix eine schlankere Alternative, die gleichzeitig die notwendigen Funktionalitäten beibehält.

In dieser Anleitung erfahren Sie, wie Sie Postfix als reinen Sende-SMTP-Server auf Ubuntu installieren und konfigurieren.

Voraussetzungen

Um dieser Anleitung zu folgen, müssen Sie die folgenden Voraussetzungen erfüllen:

Postfix installieren

Sobald die Voraussetzungen erfüllt sind, ist der Server bereit für die Bereitstellung von Postfix. Der einfachste Weg, Postfix zu installieren, ist die Installation des Pakets mailutils. Es ist direkt in den offiziellen Ubuntu-Repositories verfügbar.

Öffnen Sie zuerst ein Terminal und aktualisieren Sie die APT-Paketdatenbank:

Package Update

Anschließend können Sie Postfix installieren:

Install MailUtils

Während des Installationsprozesses öffnet sich das folgende Konfigurationsfenster. Die Standardoption ist Internet Site. Um die Auswahl zu bestätigen, drücken Sie TAB, um den Cursor in den nächsten Bereich zu bewegen. Drücken Sie dann Enter:

Mail Server Config

Im nächsten Schritt werden Sie nach dem System-E-Mail-Namen gefragt. Dies ist der Name, der dem Server zum Zeitpunkt der Erstellung zugewiesen wurde. Wie im Skript beschrieben: Wenn die E-Mail-Adresse für den lokalen Host „foo@example.org“ lautet, wäre der System-E-Mail-Name example.org:

Mail Name Config

Beachten Sie, dass das Konfigurationsskript auch später jederzeit mit dem folgenden Befehl aufgerufen werden kann:

Postfix konfigurieren

In diesem Schritt wird Postfix so konfiguriert, dass es E-Mails nur von localhost sendet und empfängt. Dies erfordert, dass Postfix auf der Schnittstelle loopback lauscht. Dies ist die virtuelle Netzwerkschnittstelle, die der Server für die interne Kommunikation verwendet. Öffnen Sie als Nächstes die Postfix-Konfigurationsdatei mit dem Texteditor Ihrer Wahl:

Ändern Sie den Wert von inet_interface in loopback-only:

Inet Interface

Eine weitere Direktive, die Sie ändern müssen, ist mydestination. Sie definiert die Liste der Domains, die über den Mail-Zustellungstransport local_transport zugestellt werden. Der Standardwert sieht in etwa so aus:

Mydestination Old

Ändern Sie den Wert in Folgendes:

Mydestination

Falls Ihre Domain tatsächlich eine Subdomain ist und Sie möchten, dass die E-Mails so aussehen, als ob sie von der Hauptdomain gesendet wurden, fügen Sie die folgende Direktive am Ende der Postfix-Konfiguration hinzu. Dadurch wird die Subdomain aus der E-Mail-Adresse entfernt:

Postfix Masquerade Domains

Um die Änderungen wirksam zu machen, starten Sie Postfix neu:

restart_postfix

Testen des SMTP-Servers

Angenommen, der Konfigurationsprozess war erfolgreich, ist es an der Zeit, ihn zu testen. Überprüfen Sie dazu mit dem Befehl mail, ob Postfix eine E-Mail an ein externes E-Mail-Konto senden kann. Er ist Teil des Pakets mailutils:

Die Nachricht sollte an der angegebenen E-Mail-Adresse ankommen. Zu diesem Zeitpunkt sind alle gesendeten E-Mails unverschlüsselt. Dienstanbieter markieren solche E-Mails im Allgemeinen als Spam, stellen Sie also sicher, dass Sie den Spam-Ordner auf den Eingang der E-Mail überprüfen.

Wenn der mail -Befehl einen Fehler meldet oder die E-Mail nach längerer Zeit nicht angekommen ist, überprüfen Sie die Postfix-Konfiguration erneut und stellen Sie sicher, dass der Servername und der Hostname korrekt eingestellt sind. Mit dieser Konfiguration scheinen die E-Mails von der folgenden Adresse gesendet zu werden:

Hier ist der Benutzername der Benutzername des Server-Benutzers, der den mail -Befehl ausgeführt hat.

System-E-Mails weiterleiten

Wir haben erfolgreich überprüft, dass der E-Mail-Server ordnungsgemäß konfiguriert und funktionsfähig ist. Nun muss er so konfiguriert werden, dass er E-Mails für root weiterleitet. Alle vom System generierten Nachrichten, die an den Server gesendet werden, werden an eine externe E-Mail-Adresse weitergeleitet. Für E-Mail-Empfänger enthält die /etc/aliases-Datei die Liste der alternativen Namen. Öffnen Sie sie mit dem Texteditor Ihrer Wahl:

Standardmäßig sieht es so aus:

Postfix Aliases

Fügen Sie am Ende der Datei die folgende Zeile hinzu:

Postfix Newaliases

Dies besagt, dass die an root gesendeten E-Mails an eine E-Mail-Adresse weitergeleitet werden. Um die Änderung wirksam zu machen, führen Sie den folgenden Befehl aus. Dadurch wird die Alias-Datenbank neu erstellt, die der mail -Befehl verwendet:

sudo newaliases

Als Nächstes müssen Sie testen, ob die Änderung erfolgreich war. Senden Sie eine Test-E-Mail an root:

Die E-Mail sollte an der angegebenen E-Mail-Adresse ankommen. Vergessen Sie nicht, den Spam-Ordner zu überprüfen, da noch keine Verschlüsselung konfiguriert ist.

SMTP-Verschlüsselung aktivieren

Das Senden von E-Mails im unverschlüsselten Format ist ein riskantes Unterfangen. Um die Sicherheit zu gewährleisten, muss die SMTP-Verschlüsselung aktiviert sein. Um dies zu erreichen, fordern wir ein kostenloses TLS-Zertifikat von Let’s Encrypt für Ihre Domain an.

Für Ubuntu ist es das Tool Certbot, das diese Aufgabe übernimmt. Glücklicherweise ist es direkt im offiziellen Ubuntu-Repository verfügbar. Installieren Sie Certbot mit dem folgenden Befehl:

Postfix Install certbot

Angenommen, auf dem Server ist UFW konfiguriert, ist es notwendig, den Port 80 zu öffnen, damit die Domain-Verifizierung stattfinden kann. Führen Sie den folgenden Befehl aus, um ihn freizugeben:

ufw allow Postfix

Führen Sie nun Certbot aus, um ein Zertifikat zu generieren. Dies weist Certbot an, Zertifikate mit einem 4096-Bit-RSA-Schlüssel auszustellen. Die Verifizierung erfolgt über Port 80 (HTTP):

Die Ausgabe wird in etwa so aussehen:

Der Schlüssel wird im folgenden Verzeichnis gespeichert:

Nachdem Ihr Zertifikat generiert wurde, öffnen Sie die Postfix-Konfigurationsdatei in einem Texteditor:

Suchen Sie den Abschnitt TLS Parameter:

Postfix tls conf old

Ändern Sie danach den Wert der Direktiven smtpd_tls_cert_file und smtpd_tls_key_file:

Postfix tls conf

Speichern und schließen Sie anschließend die Datei. Um die Änderungen wirksam zu machen, starten Sie Postfix neu:

Senden Sie schließlich erneut eine Test-E-Mail an eine Ziel-E-Mail-Adresse:

Die E-Mail sollte nun normal wie andere E-Mails erscheinen. Wenn Sie die technischen Informationen der E-Mail überprüfen, wird sie als verschlüsselt angezeigt.

Fazit

Herzlichen Glückwunsch! Sie haben erfolgreich einen Postfix-basierten E-Mail-Server konfiguriert, der nur für den Versand bestimmt ist. Die E-Mail-Übertragungen sind zudem durch einen entsprechenden Verschlüsselungsschlüssel gesichert.

Weitere Möglichkeiten zur Optimierung der E-Mail-Übertragung finden Sie in diesem Tutorial Die besten Möglichkeiten zur Nutzung des SMTP-Servers von Google.

Viel Spaß beim Computing!

author

Pranay Kapgate

Autor · CloudSigma

Preslav Dobrev ist ein kreativer Designer bei CloudSigma und konzentriert sich auf eine konsistente Unternehmensidentität durch traditionelle und innovative Marketingkanäle. Er versteht es meisterhaft, künstlerische Vision mit strategischem Marketing zu verbinden, um wirkungsvolle Markengeschichten zu schaffen.

Kommentare

Noch keine Kommentare. Schreiben Sie den ersten.