Eine frühere Version dieses Tutorials wurde von Justin Ellingwood verfasst

Einführung

Postfix ist ein beliebter Open-Source Mail Transfer Agent (MTA), der zur Weiterleitung und Zustellung von E-Mails auf einem Linux-System verwendet werden kann. Schätzungen zufolge führen etwa 25 % der öffentlichen Mail-Server im Internet Postfix aus.

In diesem Leitfaden zeigen wir Ihnen, wie Sie Postfix auf einem Ubuntu 20.04 Server installieren und konfigurieren. Anschließend testen Sie, ob Postfix in der Lage ist, E-Mails korrekt weiterzuleiten, indem Sie s-nail, einen Mail User Agent (MUA), auch als E-Mail-Client bekannt, installieren.

Beachten Sie, dass das Ziel dieses Tutorials darin besteht, Ihnen dabei zu helfen, Postfix schnell zum Laufen zu bringen, und zwar mit nur einigen grundlegenden E-Mail-Funktionen. Am Ende dieses Leitfadens werden Sie zwar noch nicht über einen voll funktionsfähigen E-Mail-Server verfügen, aber einige der grundlegenden Komponenten einer solchen Einrichtung werden Ihnen den Einstieg erleichtern.

Voraussetzungen

Um diesem Leitfaden zu folgen, benötigen Sie Folgendes:

  • Einen Server mit Ubuntu 20.04, der als Postfix Mail-Server fungiert. Dieser Server sollte über einen Nicht-root-Benutzer mit sudo-Berechtigungen und eine mit UFW konfigurierte Firewall verfügen. Um das einzurichten, können Sie unserem Leitfaden zur Ersteinrichtung des Servers unter Ubuntu 20.04 folgen.
  • Einen vollständig qualifizierten Domänennamen, der auf Ihren Ubuntu 20.04-Server verweist. Hilfe bei der Einrichtung Ihres Domänennamens mit DigitalOcean finden Sie, indem Sie unserer Dokumentation Domänen und DNS-Netzwerke folgen. Beachten Sie, dass Sie, wenn Sie den Zugriff auf E-Mails von einem externen Standort planen, sicherstellen müssen, dass Sie auch über einen MX-Datensatz verfügen, der auf auf Ihren Mail-Server verweist.

Beachten Sie, dass dieses Tutorial davon ausgeht, dass Sie einen Host konfigurieren, der den FQDN von mail.example.com hat. Falls erforderlich, stellen Sie sicher, dass Sie example.com oder mail.example.com so ändern, dass sie Ihren eigenen FQDN widerspiegeln.

Schritt 1 — Installieren von Postfix

Postfix ist in den Standard-Repositorys von Ubuntu enthalten, sodass Sie es mit APT installieren können.

Um zu beginnen, aktualisieren Sie Ihren lokalen apt-Paketcache:

sudo apt update

Installieren Sie dann das Paket postfix mit dem folgenden Beachten Sie, dass wir hier die Umgebungssvariable DEBIAN_PRIORITY=low an diesen Installationsbefehl übergeben. Dies führt dazu, dass der Installationsprozess Sie auffordert, einige zusätzliche Optionen zu konfigurieren:

sudo DEBIAN_PRIORITY=low apt install postfix

Dieser Installationsprozess öffnet eine Reihe von interaktiven Eingabeaufforderungen. Verwenden Sie für die Zwecke dieses Tutorials die folgenden Informationen, um Ihre Eingabeaufforderungen auszufüllen:

  • General type of mail configuration? Wählen Sie hierfür Internet Site, da dies unseren Infrastrukturanforderungen entspricht.
  • System mail name: Dies ist die Basisdomäne, die zur Erstellung einer gültigen E-Mail-Adresse verwendet wird, wenn nur der Kontoteil der Adresse angegeben wird. Nehmen wir beispielsweise an, dass der Hostname Ihres Servers mail.``example.com lautet. Wahrscheinlich möchten Sie den System-Mail-Namen auf example.com setzen, sodass Postfix bei der Angabe des Benutzernamens user1 die Adresse user1@``example.com verwendet.
  • Root and postmaster mail recipient: Dies ist das Linux-Konto, das an root@ und postmaster@ adressierte Mail weitergeleitet wird. Verwenden Sie hierfür Ihr primäres Konto. In diesem Beispielfall sammy.
  • Other destinations to accept mail for: Dies definiert die E-Mail-Ziele, die diese Postfix-Instanz akzeptiert. Wenn Sie weitere Domänen hinzufügen müssen, für deren Empfang dieser Server verantwortlich ist, fügen Sie diese hier hinzu. Andernfalls ist die Standardeinstellung ausreichend.
  • Force synchronous updates on mail queue?: Da Sie wahrscheinlich ein journalisiertes Dateisystem verwenden, akzeptieren Sie hier No.
  • Local networks: Dies ist eine Liste der Netzwerke, für die Ihr Mail-Server für die Weiterleitung von Nachrichten konfiguriert ist. Die Standardeinstellung wird für die meisten Szenarien funktionieren. Wenn Sie sie jedoch modifizieren möchten, stellen Sie sicher, dass Sie in Bezug auf den Netzwerkbereich sehr restriktiv sind.
  • Mailbox size limit: Dies kann verwendet werden, um die Größe von Nachrichten zu begrenzen. Eine Einstellung auf 0 deaktiviert jede Größenbeschränkung.
  • Local address extension character: Dies ist as Zeichen, das verwendet werden kann, um den regulären Teil der Adresse von einer Erweiterung zu trennen (verwendet zur Erstellung dynamischer Aliase) Die Standardeinstellung + funktioniert für dieses Tutorial.
  • Internet protocols to use: Wählen Sie, ob die IP-Version, die Postfix unterstützt, eingeschränkt werden soll. Wählen Sie für die Zwecke dieses Tutorials all aus.

Um genau zu sein, sind dies die in diesem Leitfaden verwendeten Einstellungen:

  • General type of mail configuration?Internet Site
  • System mail nameexample.com (nicht mail.example.com)
  • Root and postmaster mail recipient: Der Benutzername Ihres primären Linux-Kontos (in unserem Beispiel sammy).
  • Other destinations to accept mail for$myhostname, example.com``, mail.example.com``, localhost.example.com``, localhost
  • Force synchronous updates on mail queue?No
  • Local networks127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
  • Mailbox size limit0
  • Local address extension character+
  • Internet protocols to useall

Anmerkung : Wenn Sie jemals zurückkehren müssen, um diese Einstellungen zu ändern, können Sie dies durch die folgende Eingabe tun:

sudo dpkg-reconfigure postfix

Die Eingabeaufforderungen werden mit Ihren vorherigen Antworten vorausgefüllt.

Wenn der Installationsprozess abgeschlossen ist, können Sie einige Aktualisierungen an Ihrer Postfix-Konfiguration vornehmen.

Schritt 2 — Ändern der Postfix-Konfiguration

Jetzt können Sie einige Einstellungen anpassen, zu denen Sie bei der Paketinstallation nicht aufgefordert wurden. Viele der Konfigurationseinstellungen von Postfix sind in der Datei /etc/postfix/main.cf definiert. Anstatt diese Datei direkt zu bearbeiten, können Sie den Befehl postconf von Postfix verwenden, um Konfigurationseinstellungen abzufragen oder festzulegen.

Legen Sie zunächst den Speicherort für das Postfach Ihres Nicht-root-Ubuntu-Benutzers fest. In diesem Leitfaden verwenden wir das Format Maildir, das Nachrichten in einzelne Dateien trennt, die dann basierend auf Benutzeraktionen zwischen Verzeichnissen verschoben werden. Die alternative Option, die in diesem Leitfaden nicht abgedeckt ist, ist das mbox-Format, das alle Nachrichten innerhalb einer einzigen Datei speichert.

Setzen Sie die Variable home_mailbox auf Maildir/. Später erstellen Sie eine Verzeichnisstruktur unter diesem Namen innerhalb des Home-Verzeichnisses Ihres Benutzers. Konfigurieren Sie home_mailbox durch Eingabe von:

sudo postconf -e 'home_mailbox= Maildir/'

Als Nächstes legen Sie den Speicherort für die Tabelle virtual_alias_maps fest, die beliebige E-Mail-Konten an Linux-Systemkonten abbildet. Führen Sie den folgenden Befehl aus, der den Tabellenspeicherort einer Hash-Datenbankdatei namens /etc/postfix/virtual zuordnet:

sudo postconf -e 'virtual_alias_maps= hash:/etc/postfix/virtual'

Nachdem Sie nun den Speicherort der virtuellen Zuordnungsdatei in Ihrer Datei main.cf definiert haben, können Sie die Datei selbst erstellen und mit der Zuordnung von E-Mail-Konten zu Benutzerkonten auf Ihrem Linux-System beginnen. Erstellen Sie die Datei mit Ihrem bevorzugten Texteditor; in diesem Beispiel verwenden wir nano:

sudo nano /etc/postfix/virtual

Listen Sie alle Adressen auf, für die Sie E-Mail akzeptieren möchten, gefolgt von einem Leerzeichen und dem Linux-Benutzer, an den die E-Mail zugestellt werden soll.

Wenn Sie beispielsweise E-Mails bei contact@``example.com und admin@``example.com akzeptieren möchten und diese E-Mails an den Linux-Benutzer sammy zugestellt werden sollen, können Sie Ihre Datei wie folgt einrichten:

/etc/postfix/virtual

contact@example.com sammy
admin@example.com sammy

Nachdem Sie alle Adressen den entsprechenden Serverkonten zugeordnet haben, speichern und schließen Sie die Datei. Wenn Sie nano verwendet haben, drücken Sie STRG+XY, dann ENTER.

Wenden Sie die Zuordnung durch die folgende Eingabe an:

sudo postmap /etc/postfix/virtual

Starten Sie den Postfix-Prozess neu, um sicherzustellen, dass alle Ihre Änderungen angewendet wurden:

sudo systemctl restart postfix

Wenn Sie dem Leitfaden zur Ersteinrichtung des Servers gefolgt sind, der als Voraussetzung gilt, haben Sie eine mit UFW konfigurierte Firewall. Diese Firewall blockiert standardmäßig externe Verbindungen zu Diensten auf Ihrem Server, es sei denn, diese Verbindungen werden ausdrücklich zugelassen. Sie müssen daher eine Firewall-Regel hinzufügen, um eine Ausnahme für Postfix zuzulassen.

Sie können Verbindungen zu dem Dienst zulassen, indem Sie Folgendes eingeben:

sudo ufw allow Postfix

Damit ist Postfix konfiguriert und bereit, externe Verbindungen zu akzeptieren. Sie sind jedoch noch nicht bereit, es mit einem Mail-Client auszutesten. Bevor Sie einen Client installieren und ihn für die Interaktion mit der an Ihren Server zugestellten E-Mail verwenden können, müssen Sie einige Änderungen an der Einrichtung Ihres Ubuntu-Servers vornehmen.

#ubuntu

Installieren und Konfigurieren von Postfix unter Ubuntu 20.04
1.25 GEEK