Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung |
tachtler:postfix_centos_7_-_spf_anbinden_spf-milter [2015/10/19 11:21] – [/etc/postfix/master.cf] klaus | tachtler:postfix_centos_7_-_spf_anbinden_spf-milter [2024/02/08 10:03] (aktuell) – klaus |
---|
====== Postfix CentOS 7 - SPF anbinden (spf-milter) ====== | ====== Postfix CentOS 7 - SPF anbinden (spf-milter) ====== |
| |
Mit Hilfe von [[http://www.openspf.org/|SPF]] kann definiert werden, welche Mailserver für welche Domains e-Mails verschicken darf, oder eben nicht darf. Dies soll das Fälschen von Absender-Angaben erschwert werden. Dabei wird via [[http://www.openspf.org/|SPF]] festgelegt, welcher **MTA** (Mail Transport Agent) z.B. [[http://www.postfix.org|Postfix]] **ausgehend** für den Versandt von e-Mails einer Domain zugelassen ist. | Mit Hilfe von [[http://www.open-spf.org/|SPF]] kann definiert werden, welche Mailserver für welche Domains e-Mails verschicken darf, oder eben nicht darf. Dies soll das Fälschen von Absender-Angaben erschwert werden. Dabei wird via [[http://www.open-spf.org//|SPF]] festgelegt, welcher **MTA** (Mail Transport Agent) z.B. [[http://www.postfix.org|Postfix]] **ausgehend** für den Versandt von e-Mails einer Domain zugelassen ist. |
| |
Mit [[http://www.openspf.org/|SPF]] soll hauptsächlich das fälschen von e-Mail Absender Adressen verhindert werden. | Mit [http://www.open-spf.org/|SPF]] soll hauptsächlich das fälschen von e-Mail Absender Adressen verhindert werden. |
| |
Probleme tauchen mit unter bei Mailumleitungen, Mailinglisten und/oder Webformularen bzw. elektronischen Grusskarten auf. Auch wird bei sehr konservativen SPF-Definition die Möglichkeit verhindert, e-Mails mit der eigenen Absender e-Mail-Adresse über einen dritten Server zu versenden. Es wäre also nur möglich e-Mails über den Mail-Server zu versenden, auf dem auch das Postfach liegt! | Probleme tauchen mit unter bei Mailumleitungen, Mailinglisten und/oder Webformularen bzw. elektronischen Grusskarten auf. Auch wird bei sehr konservativen SPF-Definition die Möglichkeit verhindert, e-Mails mit der eigenen Absender e-Mail-Adresse über einen dritten Server zu versenden. Es wäre also nur möglich e-Mails über den Mail-Server zu versenden, auf dem auch das Postfach liegt! |
| |
Technisch gesehen wird bei [[http://www.openspf.org/|SPF]] ein **TXT-Record** im DNS in der Zonendatei der betreffenden Domain eingetragen. Hier wird definiert, welche SMTP-Server berechtigt sind, Nachrichten für diese Domain zu verschicken. Mailserver können dann bei der Annahme einer e-Mail abfragen, ob der sendende Mailserver überhaupt berechtigt ist, diese Nachricht zuzustellen. | Technisch gesehen wird bei [[http://www.open-spf.org/|SPF]] ein **TXT-Record** im DNS in der Zonendatei der betreffenden Domain eingetragen. Hier wird definiert, welche SMTP-Server berechtigt sind, Nachrichten für diese Domain zu verschicken. Mailserver können dann bei der Annahme einer e-Mail abfragen, ob der sendende Mailserver überhaupt berechtigt ist, diese Nachricht zuzustellen. |
| |
| ^ Beschreibung ^ Externer Link ^ |
| | Homepage | [[http://www.open-spf.org/]] | |
| | Dokumentation | [[http://www.open-spf.org/SPF_Record_Syntax]] | |
| | FAQ | [[http://www.open-spf.org/FAQ]] | |
| |
| Ab hier werden zur Ausführung nachfolgender Befehle **''root''**-Rechte benötigt. Um der Benutzer ''root'' zu werden, melden Sie sich bitte als ''root''-Benutzer am System an, oder wechseln mit nachfolgendem Befehl zum Benutzer ''root'': |
| <code> |
| $ su - |
| Password: |
| </code> |
| |
===== Herunterladen ===== | ===== Herunterladen ===== |
===== iptables Regel ====== | ===== iptables Regel ====== |
| |
Damit der [[http://www.openspf.org/|SPF]] auch über den [[http://www.postfix.org|Postfix]] - **''spf-milter''** erreichbar ist und nicht das Empfangen der IP-Paket vom Paketfilter ''iptables'' blockiert wird, muss nachfolgende Regel zum ''iptables''-Regelwerk hinzugefügt werden. | Damit der [[http://www.open-spf.org/|SPF]] auch über den [[http://www.postfix.org|Postfix]] - **''spf-milter''** erreichbar ist und nicht das Empfangen der IP-Paket vom Paketfilter ''iptables'' blockiert wird, muss nachfolgende Regel zum ''iptables''-Regelwerk hinzugefügt werden. |
| |
Um die aktuellen ''iptables''-Regeln erweitern zu können, sollten diese erst einmal aufgelistet werden, was mit nachfolgendem Befehl durchgeführt werden kann: | Um die aktuellen ''iptables''-Regeln erweitern zu können, sollten diese erst einmal aufgelistet werden, was mit nachfolgendem Befehl durchgeführt werden kann: |
==== /etc/mail/smfs/smf-spf.conf ==== | ==== /etc/mail/smfs/smf-spf.conf ==== |
| |
Standardmäßig wird nach der Installation von [[http://www.openspf.org/|SPF]] - **''spf-milter''** in nachfolgendem Verzeichnis mit nachfolgendem Namen die Konfigurationsdatei für den [[http://www.openspf.org/|SPF]] - **''spf-milter''** hinterlegt: | Standardmäßig wird nach der Installation von [[http://www.open-spf.org/|SPF]] - **''spf-milter''** in nachfolgendem Verzeichnis mit nachfolgendem Namen die Konfigurationsdatei für den [[http://www.open-spf.org/|SPF]] - **''spf-milter''** hinterlegt: |
* **''etc/mail/smfs/smf-spf.conf''** | * **''/etc/mail/smfs/smf-spf.conf''** |
| |
Nachfolgende Änderungen sind an der Konfigurationsdatei ''etc/mail/smfs/smf-spf.conf'' durchzuführen: | Nachfolgende Änderungen sind an der Konfigurationsdatei ''/etc/mail/smfs/smf-spf.conf'' durchzuführen: |
| |
(**Komplette Konfigurationsdatei**) | (**Komplette Konfigurationsdatei**) |
* <code bash>Socket inet:10011@192.168.0.70</code> | * <code bash>Socket inet:10011@192.168.0.70</code> |
| |
Socket über den mit dem [[http://www.openspf.org/|SPF]] - **''spf-milter''** über die **IP-Adresse: ''192.168.0.70''** und den **Port: ''10011''** kommuniziert werden kann. | Socket über den mit dem [[http://www.open-spf.org/|SPF]] - **''spf-milter''** über die **IP-Adresse: ''192.168.0.70''** und den **Port: ''10011''** kommuniziert werden kann. |
| |
==== SPF Dienst/Daemon-Start einrichten ==== | ==== SPF Dienst/Daemon-Start einrichten ==== |
| |
Um den [[http://www.openspf.org/|SPF]] der als Dienst/Deamon als Hintergrundprozess läuft, auch nach einem Neustart des Servers zur Verfügung zu haben, soll der Dienst/Daemon mit dem Server mit gestartet werden, was mit nachfolgendem Befehl realisiert werden kann: | Um den [[http://www.open-spf.org/|SPF]] der als Dienst/Deamon als Hintergrundprozess läuft, auch nach einem Neustart des Servers zur Verfügung zu haben, soll der Dienst/Daemon mit dem Server mit gestartet werden, was mit nachfolgendem Befehl realisiert werden kann: |
<code> | <code> |
# systemctl enable smf-spf | # systemctl enable smf-spf |
</code> | </code> |
| |
Eine Überprüfung, ob beim Neustart des Server der ''spamassassin''-Dienst/Deamon wirklich mit gestartet wird, kann mit nachfolgendem Befehl erfolgen und sollte eine Anzeige, wie ebenfalls nachfolgend dargestellt ausgeben: | Eine Überprüfung, ob beim Neustart des Server der ''smf-spf''-Dienst/Deamon wirklich mit gestartet wird, kann mit nachfolgendem Befehl erfolgen und sollte eine Anzeige, wie ebenfalls nachfolgend dargestellt ausgeben: |
<code> | <code> |
# systemctl list-unit-files --type=service | grep -e smf-spf | # systemctl list-unit-files --type=service | grep -e smf-spf |
==== Erster Start SPF ==== | ==== Erster Start SPF ==== |
| |
Um den [[http://www.openspf.org/|SPF]] zu starten kann nachfolgender Befehl angewandt werden: | Um den [[http://www.open-spf.org/|SPF]] zu starten kann nachfolgender Befehl angewandt werden: |
<code> | <code> |
# systemctl start smf-spf | # systemctl start smf-spf |
</code> | </code> |
| |
Eine Überprüfung ob der Start des [[http://www.openspf.org/|SPF]] erfolgreich war kann mit nachfolgendem Befehl durchgeführt werden, welcher eine Ausgabe in etwa wie nachfolgende erzeugen sollte: | Eine Überprüfung ob der Start des [[http://www.open-spf.org/|SPF]] erfolgreich war kann mit nachfolgendem Befehl durchgeführt werden, welcher eine Ausgabe in etwa wie nachfolgende erzeugen sollte: |
<code> | <code> |
# systemctl status smf-spf | # systemctl status smf-spf |
* **''/etc/postfix/main.cf''** | * **''/etc/postfix/main.cf''** |
* **''/etc/postfix/master.cf''** | * **''/etc/postfix/master.cf''** |
durchgeführt, um eine Anbindung des [[http://www.postfix.org|Postfix]] an den [[http://www.openspf.org/|SPF]] zu realisieren. | durchgeführt, um eine Anbindung des [[http://www.postfix.org|Postfix]] an den [[http://www.open-spf.org/|SPF]] zu realisieren. |
| |
Dabei soll die Anbindung von [[http://www.postfix.org|Postfix]] an den [[http://www.openspf.org/|SPF]] mit dem Verfahren | Dabei soll die Anbindung von [[http://www.postfix.org|Postfix]] an den [[http://www.open-spf.org/|SPF]] mit dem Verfahren |
* **''spf-milter''** erfolgen. | * **''spf-milter''** erfolgen. |
| |
Hint: Some lines were ellipsized, use -l to show in full. | Hint: Some lines were ellipsized, use -l to show in full. |
</code> | </code> |
| |
| ===== Test ===== |
| |
| Nachfolgend soll ein Test darin bestehen, dass eine e-Mail von einem externen Server an [[http://www.postfix.com|Postfix]] gesendet wird, und dieser dann den SPF-Record des absendenden e-Mail-Servers prüft. |
| |
| Wichtig sind zwei **Einträge**, in |
| * den **Header-Zeilen** der **eingehenden e-Mail** |
| * die **LOG-Einträge** im Server, auf dem [[http://www.open-spf.org/|SPF]] - **''spf-milter''** läuft: |
| |
| ==== Überprüfung: Header-Zeilen ==== |
| |
| Nachfolgender Eintrag sollte in den **Header-Zeilen** einer **eingehenden e-Mail** zu finden sein, um das Ergebnis der [[http://www.open-spf.org/|SPF]] - **''spf-milter''** Überprüfung zu zeigen: |
| <code> |
| Authentication-Results: mx1.tachtler.net; spf=pass smtp.mailfrom=<michael@nausch.org> smtp.helo=mx01.nausch.org |
| </code> |
| * //Das Ergbenis kann hier ''pass'', ''fail'' und ''none'' sein.// |
| |
| ==== Überprüfung: /var/log/maillog ==== |
| |
| Nachfolgender Eintrag sollte in den **LOG-Einträgen** des Servers auf dem der [[http://www.open-spf.org/|SPF]] - **''spf-milter''** läuft bei einer **eingehenden e-Mail** zu finden sein, um das Ergebnis der [[http://www.open-spf.org/|SPF]] - **''spf-milter''** Überprüfung zu dokumentieren: |
| <code> |
| Oct 19 06:56:56 server70 smf-spf[2157]: SPF pass: ip=217.91.103.190, fqdn=mx01.nausch.org, helo=mx01.nausch.org, from=<michael@nausch.org> |
| </code> |
| * //Das Ergbenis kann hier ''pass'', ''fail'' und ''none'' sein.// |
| |
| ===== Test Werkzeuge ===== |
| |
| Nachfolgende externe Links führen zu verschiedenen Test Werkzeugen: |
| * **[[http://www.open-spf.org/|SPF]]** - [[https://dmarcian.com/spf-survey/|dmarcian - SPF Surveyor]] |
| * **[[http://www.opendkim.org/|OpenDKIM]]** - [[http://protodave.com/tools/dkim-key-checker/|protodave - DKIM Key Checker]] |
| * **[[http://www.trusteddomain.org/opendmarc/|OpenDMARC]]** - [[https://dmarcian.com/dmarc-inspector/|dmarcian - DMARC Inspector]] |
| |