|
|
(15 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) |
Zeile 1: |
Zeile 1: |
| === Konfiguration ===
| |
| Siehe [http://www.postfix.org/BASIC_CONFIGURATION_README.html Postfix-Basiskonfiguration].
| |
|
| |
| Konfigurationsdateien sind unter <tt>/etc/postfix</tt> abgelegt. Die beiden wichtigsten Dateien sind:
| |
| * <tt>master.cf</tt>, definiert, welche Postfix-Dienste aktiviert sind und wie sich Clients mit ihnen verbinden, siehe [https://man.archlinux.org/man/master.5 master(5)]
| |
| * <tt>main.cf</tt>, die Hauptkonfigurationsdatei, siehe [https://man.archlinux.org/man/postconf.5 postconf(5)]
| |
|
| |
| Konfigurationsänderungen erfordern a <tt>postfix.service</tt> [https://wiki.archlinux.org/title/Reload laden] , um wirksam zu werden.
| |
|
| |
| === Lokaler Mailserver ===
| |
| Um E-Mails nur an lokale Systembenutzer aus der <tt>/etc/passwd</tt> zu versenden
| |
|
| |
| <tt>/etc/postfix/main.cf</tt>
| |
|
| |
| um die folgende Konfiguration widerzuspiegeln.
| |
|
| |
| Entkommentieren, ändern oder fügen Sie die folgenden Zeilen hinzu:
| |
| myhostname = localhost
| |
| mydomain = localdomain
| |
| mydestination = $myhostname, localhost.$mydomain, localhost
| |
| inet_interfaces = $myhostname, localhost
| |
| mynetworks_style = host
| |
| default_transport = error: outside mail is not deliverable
| |
|
| |
| Alle anderen Einstellungen können unverändert bleiben.
| |
|
| |
| Nachdem Sie die obige Konfigurationsdatei eingerichtet haben, möchten Sie vielleicht einige [https://wiki.archlinux.org/title/Postfix#Aliases #Aliasnamen einrichten] und dann [https://wiki.archlinux.org/title/Postfix#Start_Postfix #Postfix starten].
| |
|
| |
| === Virtuelle Mailserver ===
| |
| Virtuelle Mail ist Mail, die keinem Benutzerkonto zugeordnet ist (<tt>/etc/passwd</tt>).
| |
|
| |
| Siehe [https://wiki.archlinux.org/title/Virtual_user_mail_system_with_Postfix,_Dovecot_and_Roundcube Mailsystem für virtuelle Benutzer mit Postfix, Dovecot und Roundcube] für eine umfassende Anleitung zur Einrichtung.
| |
|
| |
| === Konfiguration prüfen ===
| |
| Führen Sie die aus <tt>postfix check</tt>Befehl.
| |
| * Es sollte alles ausgeben, was Sie möglicherweise in einer Konfigurationsdatei falsch gemacht haben.
| |
|
| |
| Geben Sie Folgendes ein, um alle Ihre Konfigurationen anzuzeigen <tt>postconf</tt>.
| |
| * Um zu sehen, wie Sie sich von den Standardeinstellungen unterscheiden, versuchen Sie es <tt>postconf -n</tt>.
| |
|
| |
| == Postfix starten ==
| |
| '''Hinweis: '''Sie müssen laufen <tt>newaliases</tt>mindestens einmal, damit Postfix ausgeführt wird, auch wenn Sie keine [https://wiki.archlinux.org/title/Postfix#Aliases #Aliases].
| |
|
| |
| [https://wiki.archlinux.org/title/Start/enable Starten/aktivieren Sie] die <tt>postfix.service</tt>.
| |
|
| |
| == Tipps und Tricks ==
| |
| === Eingehende E-Mails auf die schwarze Liste setzen === | | === Eingehende E-Mails auf die schwarze Liste setzen === |
| Das manuelle Blacklisting eingehender E-Mails nach Absenderadresse ist mit Postfix problemlos möglich. | | Das manuelle Blacklisting eingehender E-Mails nach Absenderadresse ist mit Postfix problemlos möglich. |
Zeile 61: |
Zeile 15: |
| Endlich [https://wiki.archlinux.org/title/Restart neu starten] <tt>postfix.service</tt>. | | Endlich [https://wiki.archlinux.org/title/Restart neu starten] <tt>postfix.service</tt>. |
|
| |
|
| === Blenden Sie die IP des Absenders und den Benutzeragenten im Received-Header aus === | | === IP-Adresse und Benutzeragenten ausblenden === |
| Dies ist vor allem ein Datenschutzproblem, wenn Sie Thunderbird verwenden und eine E-Mail senden. | | * im Received-Header des Absenders |
| | * Dies ist vor allem ein Datenschutzproblem, wenn Sie Thunderbird verwenden und eine E-Mail senden |
| * Der empfangene Header enthält Ihre LAN- und WAN-IP und Informationen über den von Ihnen verwendeten E-Mail-Client. (Originalquelle: [https://askubuntu.com/questions/78163/when-sending-email-with-postfix-how-can-i-hide-the-senders-ip-and-username-in AskUbuntu] ) Wir möchten den Received-Header aus ausgehenden E-Mails entfernen. | | * Der empfangene Header enthält Ihre LAN- und WAN-IP und Informationen über den von Ihnen verwendeten E-Mail-Client. (Originalquelle: [https://askubuntu.com/questions/78163/when-sending-email-with-postfix-how-can-i-hide-the-senders-ip-and-username-in AskUbuntu] ) Wir möchten den Received-Header aus ausgehenden E-Mails entfernen. |
| * Dies kann durch die folgenden Schritte erfolgen:
| | |
| | Dies kann durch die folgenden Schritte erfolgen: |
|
| |
|
| Fügen Sie die folgende Zeile hinzu <tt>main.cf</tt>: | | Fügen Sie die folgende Zeile hinzu <tt>main.cf</tt>: |
| smtp_header _checks = regulärer Ausdruck:/etc/postfix/smtp_header_checks | | smtp_header _checks = regulärer Ausdruck:/etc/postfix/smtp_header_checks |
|
| |
|
| Erstellen <tt>/etc/postfix/smtp_header_checks</tt> mit diesem Inhalt: | | Erstellen <tt>/etc/postfix/smtp_header_checks</tt> mit diesem Inhalt: |
Zeile 74: |
Zeile 30: |
|
| |
|
| Zum Schluss [https://wiki.archlinux.org/title/Restart neu starten] <tt>postfix.service</tt>. | | Zum Schluss [https://wiki.archlinux.org/title/Restart neu starten] <tt>postfix.service</tt>. |
|
| |
| == Extras ==
| |
| * [https://wiki.archlinux.org/title/PostfixAdmin PostfixAdmin] — Eine webbasierte Verwaltungsschnittstelle für Postfix.
| |
|
| |
| [http://postfixadmin.sourceforge.net/ http://postfixadmin.sourceforge.net/] || [https://archlinux.org/packages/?name=postfixadmin postfixadmin]
| |
|
| |
|
| === Regelbasierte Mailverarbeitung === | | === Regelbasierte Mailverarbeitung === |
Zeile 94: |
Zeile 45: |
| * Achten Sie darauf, es vor der ersten Erlaubnisanweisung zu platzieren, um alle eingehenden Nachrichten abzufangen. | | * Achten Sie darauf, es vor der ersten Erlaubnisanweisung zu platzieren, um alle eingehenden Nachrichten abzufangen. |
|
| |
|
| === Sender Policy Framework ===
| | [[Kategorie:Postfix]] |
| Um das [https://wiki.archlinux.org/title/Sender_Policy_Framework Sender Policy Framework] mit Postfix zu verwenden, können Sie [https://wiki.archlinux.org/title/Install spf] [https://aur.archlinux.org/packages/python-spf-engine/ -engine] AUR , [https://aur.archlinux.org/packages/python-postfix-policyd-spf/ python-postfix-policyd-spf] AUR oder [https://aur.archlinux.org/packages/postfix-policyd-spf-perl/ postfix-policyd-spf-perl] AUR.
| |
| | |
| ==== Mit spf-engine oder python-postfix-policyd-spf ====
| |
| Bearbeiten <tt>/etc/python-policyd-spf/policyd-spf.conf</tt>zu Ihren Bedürfnissen.
| |
| * Eine ausführlich kommentierte Version finden Sie unter <tt>/etc/python-policyd-spf/policyd-spf.conf.commented</tt>.
| |
| * Achten Sie besonders auf die HELO-Prüfrichtlinie, da die Standardeinstellungen HELO-Fehler strikt ablehnen.
| |
| | |
| In <tt>main.cf</tt>Datei, fügen Sie ein Timeout für die Richtlinie hinzu:
| |
| ; /etc/postfix/main.cf
| |
| policy-spf_time_limit = 3600s
| |
| | |
| Fügen Sie dann einen Transport hinzu
| |
| ; /etc/postfix/master.cf
| |
| policy-spf unix - nn - 0 spawnen
| |
| user=nobody argv=/usr/bin/policyd-spf
| |
| | |
| Zuletzt müssen Sie die Policy zu der hinzufügen <tt>smtpd_recipient_restrictions</tt>.
| |
| * Um die Belastung zu minimieren, legte man am Ende der Beschränkungen aber vor <tt>reject_rbl_client</tt>DNSBL-Zeile:
| |
| ; /etc/postfix/main.cf
| |
| smtpd_recipient_restrictions=
| |
| . ..
| |
| permission_sasl_authenticated
| |
| permission_mynetworks
| |
| abgelehnt_unauth_destination
| |
| check_policy_service unix:private/policy-spf
| |
| | |
| Laden Sie nun die neu <tt>postfix</tt>Service.
| |
| | |
| Sie können Ihr Setup wie folgt testen:
| |
| ; /etc/python-policyd-spf/policyd-spf.conf
| |
| defaultSeedOnly = 0
| |
| | |
| ==== Mit postfix-policyd-spf-perl ====
| |
| Gehen Sie mit postfix genauso [https://wiki.archlinux.org/title/Postfix#With_spf-engine_or_python-postfix-policyd-spf mit python-postfix-policyd-spf] , jedoch mit den folgenden Unterschieden:
| |
| | |
| Zeitüberschreitung für die Richtlinie <tt>main.cf</tt>Datei:
| |
| ; /etc/postfix/main.cf
| |
| policy_time_limit = 3600
| |
| | |
| Transport:
| |
| ; /etc/postfix/master.cf
| |
| policy unix - nn - 0 spawnen
| |
| user=nobody argv=/usr/lib/postfix/postfix-policyd-spf-perl
| |
| | |
| Fügen Sie die Richtlinie zu der hinzu <tt>smtpd_recipient_restrictions</tt>:
| |
| | |
| '''Warnung'''
| |
| angeben <tt>check_policy_service</tt>gemäß <tt>reject_unauth_destination</tt>Andernfalls kann Ihr System zu einem offenen Relais werden.
| |
| | |
| ; /etc/postfix/main.cf
| |
| smtpd_recipient_restrictions=
| |
| . ..
| |
| abgelehnt_unauth_destination
| |
| check_policy_service unix:private/policy
| |
| . ..
| |
| | |
| === Sender Rewriting Scheme ===
| |
| Um das [https://wiki.archlinux.org/title/Sender_Rewriting_Scheme Sender Rewriting Scheme] mit Postfix zu verwenden, [https://wiki.archlinux.org/title/Install installieren] [https://aur.archlinux.org/packages/postsrsd/ Sie postsrsd] AUR und passen Sie die Einstellungen an:
| |
| | |
| ; /etc/postsrsd/postsrsd
| |
| SRS_DOMAIN=ihredomain.tld
| |
| SRS_EXCLUDE_DOMAINS=ihreanderedomain.tld,noch.eineanderedomain.tld
| |
| SRS_SEPARATOR==
| |
| SRS_SECRET=/etc/postsrsd/postsrsd.secret
| |
| SRS_FORWARD_PORT=10001
| |
| SRS_REVERSE_PORT=10002
| |
| RUN_AS=postsrsd
| |
| CHROOT=/usr/lib/postsrsd
| |
| | |
| Aktivieren und starten Sie den Daemon und stellen Sie sicher, dass er auch nach dem Neustart ausgeführt wird.
| |
| * Konfigurieren Sie dann Postfix entsprechend, indem Sie die folgenden Zeilen anpassen:
| |
| | |
| ; /etc/postfix/main.cf
| |
| sender_canonical_maps = tcp:localhost:10001
| |
| sender_canonical_classes = Umschlag_Absender
| |
| receiver_canonical_maps = tcp:localhost:10002
| |
| receiver_canonical_classes= Umschlag_Empfänger,Header_Empfänger
| |
| | |
| Starten Sie Postfix neu und starten Sie die Weiterleitung von E-Mails.
| |
| | |
| == Fehlerbehebung ==
| |
| === Warnung: "Datenbank /etc/postfix/*.db ist älter als Quelldatei. ." ===
| |
| Wenn Sie eine oder beide Warnungen mit [https://wiki.archlinux.org/title/Journalctl journalctl erhalten] :
| |
| Warnung: Die Datenbank /etc/postfix/virtual.db ist älter als die Quelldatei /etc/postfix/virtual
| |
| Warnung: Die Datenbank /etc/postfix/transport.db ist älter als die Quelldatei /etc/postfix/transport
| |
| | |
| Dann können Sie es mit diesen Befehlen beheben, je nachdem, welche Meldungen Sie erhalten:
| |
| postmap /etc/postfix/transport
| |
| postmap /etc/postfix/virtual
| |
| | |
| Und [https://wiki.archlinux.org/title/Restart neu starten] <tt>postfix.service</tt>.
| |
| | |
| === Host- oder Domänenname nicht gefunden. Namensdienstfehler für name=... ===
| |
| Wenn Sie mit journalctl:
| |
| Host- oder Domänenname nicht gefunden. Namensdienstfehler für name=...
| |
| | |
| Es könnte sein, dass Sie Postfix in einem ausführen <tt>chroot</tt>und <tt>/etc/resolv.conf</tt>wird vermisst.
| |
| | |
| Wenn ja, können Sie dies beheben, indem Sie:
| |
| mkdir -p /var/spool/postfix/etc
| |
| cp /etc/resolv.conf /var/spool/postfix/etc/resolv.conf
| |
| | |
| Und [https://wiki.archlinux.org/title/Restart neu starten] <tt>postfix.service</tt>.
| |
| | |
| == Siehe auch ==
| |
| * [http://www.postfix.org/documentation.html Offizielle Dokumentation]
| |
| * [https://help.ubuntu.com/community/Postfix Postfix Ubuntu-Dokumentation]
| |
| | |
| Zum Thema passende Artikel
| |
| * [https://wiki.archlinux.org/title/Postfix_with_SASL Postfix mit SASL]
| |
| * [https://wiki.archlinux.org/title/Virtual_user_mail_system Mailsystem für virtuelle Benutzer]
| |
| * [https://wiki.archlinux.org/title/OpenDMARC OpenDMARC]
| |
| * [https://wiki.archlinux.org/title/OpenDKIM OpenDKIM]
| |
| | |
| [https://wiki.archlinux.org/title/Category:Mail_server Mail-Server]
| |
Eingehende E-Mails auf die schwarze Liste setzen
Das manuelle Blacklisting eingehender E-Mails nach Absenderadresse ist mit Postfix problemlos möglich.
/etc/postfix/blacklist_incoming
user@example.com REJECT
Dann nutzen Sie die postmap Befehl zum Erstellen einer Datenbank:
# postmap hash:blacklist_incoming
Fügen Sie den folgenden Code vor der ersten Zulassungsregel ein
main.cf:
smtpd_recipient_restrictions = check_sender_access hash:/etc/postfix/blacklist_incoming
Endlich neu starten postfix.service.
IP-Adresse und Benutzeragenten ausblenden
- im Received-Header des Absenders
- Dies ist vor allem ein Datenschutzproblem, wenn Sie Thunderbird verwenden und eine E-Mail senden
- Der empfangene Header enthält Ihre LAN- und WAN-IP und Informationen über den von Ihnen verwendeten E-Mail-Client. (Originalquelle: AskUbuntu ) Wir möchten den Received-Header aus ausgehenden E-Mails entfernen.
Dies kann durch die folgenden Schritte erfolgen:
Fügen Sie die folgende Zeile hinzu main.cf:
smtp_header _checks = regulärer Ausdruck:/etc/postfix/smtp_header_checks
Erstellen /etc/postfix/smtp_header_checks mit diesem Inhalt:
/^Received: .*/ IGNORE
/^User-Agent: .*/ IGNORE
Zum Schluss neu starten postfix.service.
Regelbasierte Mailverarbeitung
Mit Richtliniendiensten kann man das Postfix-Verhalten bei der Zustellung von E-Mails leicht anpassen. postfwd und policyd policyd-pgsql oder policyd-sqlite stellen dafür Dienste bereit.
- Damit können Sie z.B, zeitbewusstes Grey- und Blacklisting von Sendern und Empfängern sowie SPF Policy-Checking implementieren.
Richtliniendienste sind eigenständige Dienste und wie folgt mit Postfix verbunden:
- /etc/postfix/main.cf
smtpd_recipient_restrictions =
. ..
check_policy_service unix:/run/policyd.sock
check_policy_service inet:127.0.0.1:10040
Das Platzieren von Richtliniendiensten am Ende der Warteschlange reduziert die Last, da nur legitime E-Mails verarbeitet werden.
- Achten Sie darauf, es vor der ersten Erlaubnisanweisung zu platzieren, um alle eingehenden Nachrichten abzufangen.