So installieren und konfigurieren Sie Postfix als Nur-Senden-SMTP-Server unter Debian 9

Einführung

Postfix ist ein mail transfer agent (MTA), eine Anwendung zum Senden und Empfangen von E-Mails. In diesem Lernprogramm installieren und konfigurieren Sie Postfix so, dass E-Mails nur von lokalen Anwendungen gesendet werden können, dh von Anwendungen, die auf demselben Server wie Postfix installiert sind.

Warum willst du das tun?

Wenn Sie bereits einen E-Mail-Anbieter eines Drittanbieters zum Senden und Empfangen von E-Mails verwenden, müssen Sie keinen eigenen E-Mail-Server ausführen. Wenn Sie jedoch einen Cloud-Server verwalten, auf dem Anwendungen installiert sind, die E-Mail-Benachrichtigungen senden müssen, ist die Verwendung eines lokalen SMTP-Servers, auf dem nur Nachrichten gesendet werden können, eine gute Alternative zur Verwendung eines E-Mail-Dienstanbieters von Drittanbietern oder zur Ausführung eines vollständigen SMTP Server.

In diesem Tutorial installieren und konfigurieren Sie Postfix als Nur-Senden-SMTP-Server unter Debian 9.

Voraussetzungen

Um diesem Tutorial zu folgen, benötigen Sie:

Beachten Sie, dass der Hostname Ihres Servers mit Ihrer Domain oder Subdomain übereinstimmen sollte. Sie können den Hostnamen des Servers überprüfen, indem Sie an der Eingabeaufforderung "+ Hostname +" eingeben. Die Ausgabe sollte mit dem Namen übereinstimmen, den Sie dem Server beim Erstellen gegeben haben.

Schritt 1 - Postfix installieren

In diesem Schritt erfahren Sie, wie Sie Postfix installieren. Sie benötigen zwei Pakete: + mailutils +, die Programme enthalten, die für die Funktion von Postfix erforderlich sind, und + postfix + selbst.

Aktualisieren Sie zunächst die Paketdatenbank:

sudo apt update

Als nächstes installieren Sie + mailtuils +:

sudo apt install mailutils

Zum Schluss installieren Sie + postfix +:

sudo apt install postfix

Gegen Ende des Installationsvorgangs wird ein Fenster angezeigt, das dem in der folgenden Abbildung entspricht. Die Standardoption ist * Internet Site *. Dies ist die empfohlene Option für dieses Lernprogramm. Drücken Sie also "+ TAB" und dann "+ EINGABE".

image: https: //assets.digitalocean.com/articles/postfix-16.04/zJuFrgI.png? 1 [Wählen Sie im Menü die Option "Internet-Site" und drücken Sie die Tabulatortaste, um "<Ok>" auszuwählen, und drücken Sie dann die EINGABETASTE.]

Danach erhalten Sie ein weiteres Fenster wie das im nächsten Bild. Der * System-Mail-Name * sollte mit dem Namen übereinstimmen, den Sie dem Server beim Erstellen zugewiesen haben. Wenn eine Subdomain wie "+ subdomain.example.com " angezeigt wird, ändern Sie diese in " example.com ". Wenn Sie fertig sind, drücken Sie " TAB" und dann "+ ENTER".

image: https://assets.digitalocean.com/articles/postfix-16.04/sVEi9SW.png? 1 [Geben Sie Ihren Domainnamen ein und drücken Sie die Tabulatortaste, um <Ok> auszuwählen, und drücken Sie die Eingabetaste.]

Sie haben jetzt Postfix installiert und können die Konfigurationseinstellungen ändern.

Schritt 2 - Postfix konfigurieren

In diesem Schritt konfigurieren Sie Postfix so, dass Anforderungen zum Senden von E-Mails nur von dem Server verarbeitet werden, auf dem es ausgeführt wird, d. H. von + localhost.

Zu diesem Zweck muss Postfix so konfiguriert werden, dass es nur die loopback-Schnittstelle überwacht, die virtuelle Netzwerkschnittstelle, über die der Server intern kommuniziert. Um die Änderung vorzunehmen, öffnen Sie die Hauptkonfigurationsdatei von Postfix mit + nano + oder https://www.digitalocean.com/community/tutorials/initial-server-setup-with-debian-9#step-six-%E2% 80% 94-Vervollständigen-der-optionalen-Konfiguration [Ihr bevorzugter Texteditor]:

sudo nano /etc/postfix/main.cf

Scrollen Sie bei geöffneter Datei nach unten, bis der folgende Abschnitt angezeigt wird:

/etc/postfix/main.cf

. . .
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
. . .

Ändern Sie die Zeile "+ inet_interfaces = all" in "+ inet_interfaces = loopback-only":

/etc/postfix/main.cf

. . .
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces =
. . .

Eine weitere Anweisung, die Sie ändern müssen, ist "+ mydestination ", mit der die Liste der Domänen angegeben wird, die über den " local_transport +" -Mail-Zustellungstransport zugestellt werden. Standardmäßig ähneln die Werte diesen:

/etc/postfix/main.cf. . .
mydestination = $myhostname, , localhost.com, , localhost
. . .

Die Empfohlene Standardeinstellungen für diese Anweisung sind im folgenden Codeblock angegeben.

/etc/postfix/main.cf. . .
mydestination = $myhostname,
. . .

Speichern und schließen Sie die Datei.

Starten Sie abschließend Postfix neu.

sudo systemctl restart postfix

Schritt 3 - Testen des SMTP-Servers

In diesem Schritt testen Sie, ob Postfix E-Mails an ein externes E-Mail-Konto senden kann. Verwenden Sie dazu den Befehl "+ mail ", der Teil des Pakets " mailutils +" ist, das Sie in Schritt 1 installiert haben.

Geben Sie zum Senden einer Test-E-Mail Folgendes ein:

echo "This is the body of the email" | mail -s "This is the subject line"

Bei der Durchführung Ihrer eigenen Tests können Sie den Textkörper und die Betreffzeile unverändert verwenden oder nach Ihren Wünschen ändern. Verwenden Sie jedoch anstelle von "+" eine gültige E-Mail-Adresse. Der Domain-Teil kann " gmail.com ", " fastmail.com ", " yahoo.com +" oder jeder andere von Ihnen verwendete E-Mail-Dienstanbieter sein.

Überprüfen Sie nun die E-Mail-Adresse, an die Sie die Testnachricht gesendet haben. Sie sollten die Nachricht in Ihrem Posteingang sehen. Wenn nicht, überprüfen Sie Ihren Spam-Ordner.

Beachten Sie, dass bei dieser Konfiguration die Adresse im Feld * Von * für die Test-E-Mails, die Sie senden, "+ @ +" lautet, wobei * sammy * Ihr Linux-Benutzername und die Domäne der Hostname des Servers ist. Wenn Sie Ihren Benutzernamen ändern, ändert sich auch die Adresse * Von *.

Schritt 4 - Systemmail weiterleiten

Das Letzte, was wir einrichten möchten, ist das Weiterleiten von E-Mails, sodass Sie diese an * root * auf dem System an Ihre persönliche, externe E-Mail-Adresse senden.

Um Postfix so zu konfigurieren, dass vom System generierte E-Mails an Ihre E-Mail-Adresse gesendet werden, müssen Sie die Datei "+ / etc / aliases +" bearbeiten:

sudo nano /etc/aliases

Der vollständige Inhalt der Datei auf einer Standardinstallation von Debian 9 lautet wie folgt:

/ etc / alias

mailer-daemon: postmaster
postmaster: root
nobody: root
hostmaster: root
usenet: root
news: root
webmaster: root
www: root
ftp: root
abuse: root
noc: root
security: root

Die Einstellung "+ postmaster: root +" stellt sicher, dass vom System generierte E-Mails an den Root-Benutzer gesendet werden. Sie möchten diese Einstellungen bearbeiten, damit diese E-Mails an Ihre E-Mail-Adresse weitergeleitet werden. Bearbeiten Sie dazu die Datei wie folgt:

/ etc / alias

mailer-daemon: postmaster
postmaster:    root

. . .

Ersetzen Sie "++" durch Ihre persönliche E-Mail-Adresse. Wenn Sie fertig sind, speichern und schließen Sie die Datei. Führen Sie den folgenden Befehl aus, damit die Änderung wirksam wird:

sudo newaliases

Sie können testen, ob es funktioniert, indem Sie eine E-Mail an das Root-Konto senden:

echo "This is the body of the email" | mail -s "This is the subject line" root

Sie sollten die E-Mail an Ihre E-Mail-Adresse erhalten. Wenn nicht, überprüfen Sie Ihren Spam-Ordner.

Fazit

Das ist alles, was Sie zum Einrichten eines E-Mail-Servers mit Postfix benötigen. Möglicherweise möchten Sie jedoch einige zusätzliche Schritte unternehmen, um Ihre Domain vor Spammern zu schützen.

Wenn Sie Benachrichtigungen von Ihrem Server an einer einzigen Adresse erhalten möchten, ist es weniger problematisch, E-Mails als Spam zu markieren, da Sie eine Problemumgehung für die Whitelist erstellen können. Wenn Sie jedoch E-Mails an potenzielle Websitebenutzer senden möchten (z. B. Bestätigungs-E-Mails für die Registrierung eines Message Boards), sollten Sie auf jeden Fall SPF-Datensätze und DKIM einrichten, damit die E-Mails Ihres Servers eher als legitim angesehen werden.

Bei korrekter Konfiguration ist es mit diesen Schritten schwierig, Spam mit einer Adresse zu senden, die scheinbar von Ihrer Domain stammt. Wenn Sie diese zusätzlichen Konfigurationsschritte ausführen, ist es für gängige E-Mail-Anbieter auch wahrscheinlicher, E-Mails von Ihrem Server als legitim anzusehen.