GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So installieren und konfigurieren Sie Postfix

Die am häufigsten verwendeten Implementierungen von SMTP in den meisten Linux-Distributionen sind Sendmail und Postfix. Postfix ist ein Open-Source-Mail-Transfer-Agent, der ursprünglich als Alternative zu Sendmail entwickelt wurde und normalerweise als Standard-Mailserver eingerichtet wird.

Postfix installieren

Bevor Sie mit der Installation beginnen, das Wichtigste zuerst. Eine gute Angewohnheit ist es, zu prüfen, ob die Software bereits auf dem Server installiert ist. Es ist immer hilfreich zu überprüfen, ob etwas vorhanden ist, bevor Sie sich an die Arbeit machen.

Verwenden Sie diesen Befehl, um nach RPM-basierten Distributionen zu suchen:

$ rpm -qa | grep postfix

Wenn der vorherige Befehl zeigt, dass das RPM nicht installiert ist, können Sie das Postfix-RPM wie folgt installieren (auf yum -basierte Distributionen):

$ yum install -y postfix

Nachdem Postfix installiert ist, können Sie den Dienst starten und aktivieren, um sicherzustellen, dass er nach dem Neustart startet:

$ systemctl start postfix
$ systemctl enable postfix

Postfix konfigurieren

Nachdem Postfix installiert ist, können Sie damit beginnen, den Dienst nach Ihren Wünschen zu konfigurieren. Alle Optionen, die Sie für den Dienst benötigen, befinden sich in /etc/postfix . Die Hauptkonfigurationsdatei für den Postfix-Dienst befindet sich unter /etc/postfix/main.cf . Innerhalb der Konfigurationsdatei gibt es viele Optionen, die Sie hinzufügen können, einige davon häufiger als andere. Sehen wir uns einige an, die Sie beim Einrichten des Dienstes und bei der Fehlerbehebung am häufigsten sehen:

  • myhostname gibt den Hostnamen des Mailservers an. Hostnamen enthalten normalerweise Präfixe wie diese:
myhostname = mail.sinisterriot.com
  • mydomain deklariert die Domain, die tatsächlich E-Mails verarbeitet, wie folgt:
mydomain = sinisterriot.com
  • mail_spool_directory deklariert das Verzeichnis, in dem Postfachdateien abgelegt werden, etwa so:
mail_spool_directory = /var/mail
  • mynetworks deklariert eine Liste vertrauenswürdiger Remote-SMTP-Server, die über den Server weitergeleitet werden können, wie folgt:
mynetworks = 127.0.0.0/8, 168.100.189.0/28

Die mit mynetworks bereitgestellte Liste sollte nur lokale Netzwerk-IP-Adressen oder Netzwerk-/Netzmaskenmuster enthalten, die durch Kommas oder Leerzeichen getrennt sind. Es ist wichtig, nur lokale Netzwerkadressen zu verwenden, um zu verhindern, dass unbefugte Benutzer Ihren Mailserver für böswillige Aktivitäten verwenden, was dazu führt, dass Ihr Server und Ihre Adressen auf die schwarze Liste gesetzt werden.

Postfix testen

Bevor etwas in Produktion geht, ist es immer eine gute Idee, es in einer Entwicklungsumgebung zu testen. Dieser Prozess hat das gleiche Konzept:Sobald Sie den Mailserver konfiguriert haben, testen Sie ihn, um sicherzustellen, dass er funktioniert.

Zunächst empfehle ich zu testen, ob Sie eine E-Mail an einen lokalen Empfänger senden können. Bei Erfolg können Sie mit einem entfernten Empfänger fortfahren. Ich ziehe es vor, den Telnet-Befehl zu verwenden, um meinen Mailserver zu testen:

$ telnet mail.sinisterriot.com 25

Fügen Sie das HELO hinzu Befehl, um dem Server mitzuteilen, von welcher Domäne Sie kommen:

HELO sinisterriot.com

Als nächstes kommt der Absender. Diese ID kann mit dem MAIL FROM hinzugefügt werden Befehl:

MAIL FROM: [email protected]

Auf diesen Eintrag folgt der Empfänger, und Sie können mehr als einen hinzufügen, indem Sie RCPT TO verwenden Befehl mehrmals:

RCPT TO: [email protected]

Schließlich können wir den Inhalt der Nachricht hinzufügen. Um den Inhaltsmodus zu erreichen, fügen wir das Präfix DATA hinzu in einer eigenen Zeile, gefolgt von Subject Zeile und die Textnachricht. Unten aufgeführt ist ein Beispiel:

DATA

Subject: This is a test message  

Hello,

This is a test message

.

Um den Nachrichtentext zu vervollständigen und zu schließen, müssen Sie einen einzelnen Punkt (.) oder Punkt in einer eigenen Zeile hinzufügen. Sobald dieser Vorgang abgeschlossen ist, versucht der Server, die E-Mail mit den von Ihnen angegebenen Informationen zu senden. Die Code-Antwort benachrichtigt Sie, ob die E-Mail erfolgreich war oder nicht. Wenn Sie fertig sind, verwenden Sie quit Befehl zum Schließen des Mailing-Fensters.

Überprüfen Sie in jedem Fall die E-Mail-Protokolle auf Fehler. Sie befinden sich in /var/log/maillog standardmäßig, aber dieser Speicherort kann an einen anderen Ort geändert werden. Als Systemadministrator ist es eine gute Angewohnheit, Fehlerprotokolle zu überprüfen. Diese Vorgehensweise eignet sich hervorragend zur Fehlerbehebung und gibt uns einen Einblick in die schnellere Identifizierung und Behebung eines Problems. Das Entschlüsseln von E-Mail-Protokollen ist ebenfalls ein wichtiger Teil der Verwaltungsarbeit, da uns jeder Teil des Protokolls mitteilt, was wichtig ist. In den vergangenen Jahren hat mir das Wissen um diese Teile geholfen, Skripte für bestimmte Anfragen zu schreiben, während ich nur Teile der Mail-Protokolle redigieren oder weglassen musste.

Postfix sichern

Die Sicherung Ihrer Dienste ist genauso wichtig wie deren Einrichtung. Es ist sicherer, Daten über eine sichere Verbindung zu übertragen als über eine ungeschützte. Als Nächstes behandeln wir, wie Sie unseren neu konfigurierten Mailserver sichern können. Sie können dies tun, indem Sie eine SSL-Sitzung über Transport Layer Security (TLS) für den SMTP-Server generieren.

Zunächst müssen Sie den privaten Schlüssel und den Certificate Signing Request (CSR) generieren. Sie können dies über den openssl tun Befehl:

$ openssl req -nodes -newkey rsa:2048 -keyout privatekey.key -out mail.csr

Generieren Sie dann eine Signaturanforderung und kopieren Sie sie in /etc/postfix Verzeichnis:

$ openssl x509 -req -days 365 -in mail.csr -signkey privatekey.key -out secure.crt
$ cp {privatekey.key,secure.crt} /etc/postfix

Diese Sequenz gibt ein signiertes Zertifikat an den Mailserver aus, das auch als Zertifikat einer Zertifizierungsstelle (CA) bezeichnet wird. Diese Praxis bedeutet, dass die Zertifizierungsstelle dem Zertifikatsunterzeichner vertrauen muss, um den privaten Schlüssel zu sichern und Daten über das Internet zu übertragen. Bei der anderen Art von Zertifikat, einem selbstsignierten, vertraut die Zertifizierungsstelle dem Unterzeichner des Zertifikats nicht, sodass die Informationen anfällig für Diebstahl und offen für Kompromittierungen sind. Es ist immer besser, ein signiertes Zertifikat zu verwenden.

Sobald dieser Vorgang abgeschlossen ist, können Sie der Postfix-Konfigurationsdatei TLS-Optionen hinzufügen:

smtpd_use_tls = yes
smtpd_tls_cert_file = /etc/postfix/secure.crt
smtpd_tls_key_file = /etc/postfix/privatekey.key
smtp_tls_security_level = may

Starten Sie als Nächstes den Dienst neu, um die neuen Optionen in Kraft zu setzen:

$ systemctl restart postfix

Jetzt haben Sie einen funktionierenden, sicheren E-Mail-Server.


Linux
  1. So installieren und konfigurieren Sie VSFTPD

  2. So installieren und konfigurieren Sie Dovecot

  3. So installieren und konfigurieren Sie Postfix unter Ubuntu 20.04

  4. Wie installiere und konfiguriere ich Fail2ban auf Ubuntu?

  5. Wie installiere und konfiguriere ich den HAProxy unter CentOS?

So installieren und konfigurieren Sie Memcached unter CentOS 8

So installieren und konfigurieren Sie Parse Server unter Ubuntu 20.04

So installieren und konfigurieren Sie Elasticsearch unter Ubuntu 20.04

So installieren und konfigurieren Sie Nextcloud unter Ubuntu 20.04

So installieren und konfigurieren Sie Supervisor unter Ubuntu 20.04

So installieren und konfigurieren Sie Sandstorm Server unter CentOS 8