Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende ÜberarbeitungLetzte ÜberarbeitungBeide Seiten der Revision | ||
centos:mail_c7:spam_3 [25.02.2019 07:11. ] – django | centos:mail_c7:spam_3 [27.02.2019 14:18. ] – ["Command Pipelining" Tests] django | ||
---|---|---|---|
Zeile 448: | Zeile 448: | ||
</ | </ | ||
- | Wir haben hier also alle Hosts aus **mynetworks** und eine zusätzliche | + | Wir haben hier also alle Hosts aus **mynetworks** und eine zusätzliche |
Diese Datei legen wir gleich mal als nächstes an. | Diese Datei legen wir gleich mal als nächstes an. | ||
Zeile 455: | Zeile 455: | ||
# access-Tabelle: | # access-Tabelle: | ||
# Tabelle zum black- und whitelisten einzelner Hosts auf Basis ihrer | # Tabelle zum black- und whitelisten einzelner Hosts auf Basis ihrer | ||
- | # IP-Adressen. In der rechten Tabellenspalte können die AKtionen | + | # IP-Adressen. In der rechten Tabellenspalte können die Aktionen |
# " | # " | ||
- | # Nach dem Ändern und/oder Erweitern der Tabelle, | + | # Nach dem Ändern und/oder Erweitern der Tabelle, |
# laufender Postfix über die Änderungen mit einem reload informiert | # laufender Postfix über die Änderungen mit einem reload informiert | ||
# werden: | # werden: | ||
Zeile 473: | Zeile 473: | ||
</ | </ | ||
In der rechten Tabellenspalte können folgende drei Aktionen gesetzt werden: | In der rechten Tabellenspalte können folgende drei Aktionen gesetzt werden: | ||
- | * **permit** Es werden keine weiteren postscreen-Test durchgeführt. Die Verbindung wird sofort an einen SMTP-Daemon weitergereicht. | + | * '' |
- | * **dunno** Nichts weiter unternehmen und Client zum nächsten Test weiterreichen. | + | * '' |
- | * **reject** Client blacklisten und weitere Suche in der Tabelle beenden. Abhängig vom Parameter **postscreen_blacklist_action** mit der weiteren Bearbeitung der Clientverbindung verfahren. | + | * '' |
Den Parameter **postscreen_blacklist_action** definieren wir nun als nächsten. | Den Parameter **postscreen_blacklist_action** definieren wir nun als nächsten. | ||
Zeile 485: | Zeile 485: | ||
Hier stehen uns drei Aktionen zur Verfügung: | Hier stehen uns drei Aktionen zur Verfügung: | ||
- | * **ignore** Nichts unternehmen und mit weiteren Tests fortfahren. Bei der nächsten | + | * '' |
- | * **enforce** Weitermachen mit den anderen Tests, jedoch am Ende die Verbindung mit einem SMTP-Fehlercode **550** | + | * '' |
- | * **drop** Die Verbindung sofort mit einem SMTP-Fehlercode **521** beenden. Bei der nächsten | + | * '' |
\\ | \\ | ||
<WRAP center round important 100%> | <WRAP center round important 100%> | ||
- | Natürlich kann die Pflege von einzelnen Systemen zu einer sehr zeitaufwändigen Arbeit ausarten, vor allem dann wenn Versendende Systeme großer Mailprovider oder besonderer geclusteter Mailserver zum Einsatz kommen. Werden Mails von Servern unterschiedlicher abwechselnd von unterschiedlichen Mailrelays mit unterschiedlichen IP-Adresssen verschickt, wird die Nutzung von Postscreen so ad absurdum geführt. | + | Natürlich kann die Pflege von einzelnen Systemen zu einer sehr zeitaufwändigen Arbeit ausarten, vor allem dann wenn Versendende Systeme großer Mailprovider oder besonderer geclusteter Mailserver zum Einsatz kommen. Werden Mails von Servern unterschiedlicher abwechselnd von unterschiedlichen Mailrelays mit unterschiedlichen IP-Adresssen verschickt, wird die Nutzung von Postscreen so ad absurdum geführt, insbesondere dann wenn man die [[# |
<WRAP center round tip 100%> | <WRAP center round tip 100%> | ||
Zeile 530: | Zeile 530: | ||
Mit der Option **postscreen_whitelist_interfaces** kann man definieren, auf welchen Interfaces/ | Mit der Option **postscreen_whitelist_interfaces** kann man definieren, auf welchen Interfaces/ | ||
- | Wenn wir nun eine weitere IP-Adresse auf unserem Mailserver binden und im DNS als Backup-MX definieren, können wir quasi einen Pseudo-Backup-MX mimen. Schlägt dann ein Client immer nur bzw. zuerst auf der IP-Adresse des definierten Backup-MX auf, dann ist dies höchstwahrscheinlich ein SPAM-Bot. Solch einen Client wollen wir __definitiv nicht__ | + | Wenn wir nun eine weitere IP-Adresse auf unserem Mailserver binden und im DNS als Backup-MX definieren, können wir quasi einen Pseudo-Backup-MX mimen. Schlägt dann ein Client immer nur bzw. zuerst auf der IP-Adresse des definierten Backup-MX auf, dann ist dies höchstwahrscheinlich ein SPAM-Bot. Solch einen Client wollen wir __definitiv nicht__ |
# vim / | # vim / | ||
Zeile 541: | Zeile 541: | ||
</ | </ | ||
- | Der Eintrag definiert nun, dass das Eintragen in die automatische temporäre Whitelist | + | Der Eintrag definiert nun, dass das Eintragen in die automatische temporäre Whitelist |
<WRAP center round important> | <WRAP center round important> | ||
Zeile 570: | Zeile 570: | ||
Dann wartet der Server die mit Paramater **postscreen_greet_wait** definierte Zeit ab und sendet dann erst den richtigen greeter. | Dann wartet der Server die mit Paramater **postscreen_greet_wait** definierte Zeit ab und sendet dann erst den richtigen greeter. | ||
220 mx01.nausch.org ESMTP Postfix | 220 mx01.nausch.org ESMTP Postfix | ||
- | Erst hier beginnt ein orgnungsgemäßer | + | Erst hier beginnt ein ordnungsgemäßer |
- | * **ignore** Nichts unternehmen und mit weiteren Tests fortfahren. Bei der nächsten | + | * '' |
- | * **enforce** Weitermachen mit den anderen Tests, jedoch am Ende die Verbindung mit einem SMTP-Fehlercode **550** | + | * '' |
- | * **drop** Die Verbindung sofort mit einem SMTP-Fehlercode **521** beenden. Bei der nächsten | + | * '' |
=== DNSBL-Abfragen und DNSWL-Abfragen === | === DNSBL-Abfragen und DNSWL-Abfragen === | ||
Zeile 621: | Zeile 621: | ||
Der Parameter **postscreen_dnsbl_threshold** legt fest, ab welcher Punktezahl, in unserem Konfigurationsbeispiel also beim Erreichen des Wertes **2**, der postscreen-Daemon tätig werden soll. Dabei stehen uns folgende Aktionen zur Verfügung: | Der Parameter **postscreen_dnsbl_threshold** legt fest, ab welcher Punktezahl, in unserem Konfigurationsbeispiel also beim Erreichen des Wertes **2**, der postscreen-Daemon tätig werden soll. Dabei stehen uns folgende Aktionen zur Verfügung: | ||
- | * **ignore** Nichts unternehmen und mit weiteren Tests fortfahren. Bei der nächsten | + | * '' |
- | * **enforce** Weitermachen mit den anderen Tests, jedoch am Ende die Verbindung mit einem SMTP-Fehlercode **550** abschliessen. Die Informationen //HELO//, //SENDER// und // | + | * '' |
- | * **drop** Die Verbindung sofort mit einem SMTP-Fehlercode **521** beenden. Bei der nächsten | + | * '' |
==== "Post 220 SMTP Server Greeting" | ==== "Post 220 SMTP Server Greeting" | ||
- | In der dritten und letzten Phase kann postscreen mit seiner internen SMTP-Engine sog. **deep protocol Tests** anstellen. Diese Tests sind weitaus | + | In der dritten und letzten Phase kann postscreen mit seiner internen SMTP-Engine sog. **deep protocol Tests** anstellen. Diese Tests sind weitaus |
<WRAP center round info> | <WRAP center round info> | ||
Zeile 635: | Zeile 635: | ||
* **cache-sharing**: | * **cache-sharing**: | ||
* **25**: die SMTP-Engine von Postscreen unterstützt weder AUTH, XCLIENT noch XFORWARD Funktionen! Werden diese Funktionen auf Port **25** benötigt, dann scheidet der Einsatz der **//" | * **25**: die SMTP-Engine von Postscreen unterstützt weder AUTH, XCLIENT noch XFORWARD Funktionen! Werden diese Funktionen auf Port **25** benötigt, dann scheidet der Einsatz der **//" | ||
- | * **Submission**: | + | * **Submission**: |
+ | |||
+ | <WRAP center round important 80%> | ||
+ | Stellt man auf produktiv im Einsatz befindlichen Mailservern den zusätzlichen Gewinn bei der SPAM-Abwehr durch Nutzung der **[[# | ||
+ | |||
+ | In den __seltensten Fällen__ wird man daher wirklich diese Funktion nutzen wollen! | ||
+ | </ | ||
</ | </ | ||
Zeile 646: | Zeile 653: | ||
=== " | === " | ||
- | Standardmäßig ist ein SMTP-Halbduplex-Protokoll, | + | Standardmäßig ist ein SMTP-Halbduplex-Protokoll, |
Wir tragen also einen Eintrag in unserer neuen Section **POSTSCREEN - ERSTE STUFE DER SPAM/ | Wir tragen also einen Eintrag in unserer neuen Section **POSTSCREEN - ERSTE STUFE DER SPAM/ | ||
Zeile 656: | Zeile 663: | ||
Folgende Aktionen stehen uns bei positiven Testergebnis zur Verfügung: | Folgende Aktionen stehen uns bei positiven Testergebnis zur Verfügung: | ||
- | * **ignore** Nichts unternehmen und mit weiteren Tests fortfahren. Bei der nächsten | + | * '' |
- | * **enforce** Weitermachen mit den anderen Tests, jedoch am Ende die Verbindung mit einem SMTP-Fehlercode **550** | + | * '' |
- | * **drop** Die Verbindung sofort mit einem SMTP-Fehlercode **521** beenden. Bei der nächsten | + | * '' |
Zeile 674: | Zeile 681: | ||
Folgende Aktionen stehen uns bei positiven Testergebnis zur Verfügung: | Folgende Aktionen stehen uns bei positiven Testergebnis zur Verfügung: | ||
- | * **ignore** Nichts unternehmen und mit weiteren Tests fortfahren. Bei der nächsten | + | * '' |
- | * **enforce** Weitermachen mit den anderen Tests, jedoch am Ende die Verbindung mit einem SMTP-Fehlercode **550** | + | * '' |
- | * **drop** Die Verbindung sofort mit einem SMTP-Fehlercode **521** beenden. Bei der nächsten | + | * '' |
=== "Bare Newline" | === "Bare Newline" | ||
- | SMTP ist eine zeilenorientierte Protokoll, d.h. jede gesendete Zeile hat eine begrenzte Länge und wirden | + | SMTP ist eine zeilenorientierte Protokoll, d.h. jede gesendete Zeile hat eine begrenzte Länge und wird mit **< |
Wir tragen also einen Eintrag in unserer neuen Section **POSTSCREEN - ERSTE STUFE DER SPAM/ | Wir tragen also einen Eintrag in unserer neuen Section **POSTSCREEN - ERSTE STUFE DER SPAM/ | ||
Zeile 691: | Zeile 698: | ||
Folgende Aktionen stehen uns bei positiven Testergebnis zur Verfügung: | Folgende Aktionen stehen uns bei positiven Testergebnis zur Verfügung: | ||
- | * **ignore** Nichts unternehmen und mit weiteren Tests fortfahren. Bei der nächsten | + | * '' |
- | * **enforce** Weitermachen mit den anderen Tests, jedoch am Ende die Verbindung mit einem SMTP-Fehlercode **550** abschliessen. Die Informationen //HELO//, //SENDER// und // | + | * '' |
- | * **drop** Die Verbindung sofort mit einem SMTP-Fehlercode **521** beenden. Bei der nächsten | + | * '' |
Zeile 750: | Zeile 757: | ||
# | # | ||
# default: postscreen_pipelining_enable = no | # default: postscreen_pipelining_enable = no | ||
- | postscreen_pipelining_enable = yes | ||
# | # | ||
# default: postscreen_pipelining_action = enforce | # default: postscreen_pipelining_action = enforce | ||
# | # | ||
# default: postscreen_non_smtp_command_enable = no | # default: postscreen_non_smtp_command_enable = no | ||
- | postscreen_non_smtp_command_enable = yes | + | # |
# default: postscreen_non_smtp_command_action = drop | # default: postscreen_non_smtp_command_action = drop | ||
# | # | ||
# default: postscreen_bare_newline_enable = no | # default: postscreen_bare_newline_enable = no | ||
- | postscreen_bare_newline_enable = yes | ||
# | # | ||
# default: postscreen_bare_newline_action = ignore | # default: postscreen_bare_newline_action = ignore | ||
- | postscreen_bare_newline_action = drop | ||
# | # | ||
</ | </ | ||
Zeile 799: | Zeile 803: | ||
Den Serverstatus können wir uns nun mit Hilfe des folgenden Aufrufes anzeigen lassen. | Den Serverstatus können wir uns nun mit Hilfe des folgenden Aufrufes anzeigen lassen. | ||
# systemctl status postfix | # systemctl status postfix | ||
- | < | + | |
- | | + | <html>< |
- | | + | <font style=" |
+ | | ||
+ | | ||
Process: 15133 ExecStop=/ | Process: 15133 ExecStop=/ | ||
Process: 15148 ExecStart=/ | Process: 15148 ExecStart=/ | ||
Zeile 815: | Zeile 821: | ||
Nov 10 20:57:24 vml000087.dmz.nausch.org postfix/ | Nov 10 20:57:24 vml000087.dmz.nausch.org postfix/ | ||
Nov 10 20:57:24 vml000087.dmz.nausch.org systemd[1]: Started Postfix Mail Transport Agent. | Nov 10 20:57:24 vml000087.dmz.nausch.org systemd[1]: Started Postfix Mail Transport Agent. | ||
- | </code> | + | </font> |
+ | </ | ||
+ | </html> | ||
Zeile 821: | Zeile 829: | ||
==== Pass New ==== | ==== Pass New ==== | ||
Folgender Auszug aus einem Maillog zeigt einen **neuen Client** der **alle Tests bestanden** hat. | Folgender Auszug aus einem Maillog zeigt einen **neuen Client** der **alle Tests bestanden** hat. | ||
- | < | + | < |
Nov 8 06:39:42 vml000080 postfix/ | Nov 8 06:39:42 vml000080 postfix/ | ||
Nov 8 06:39:43 vml000080 postfix/ | Nov 8 06:39:43 vml000080 postfix/ | ||
Zeile 878: | Zeile 886: | ||
===== postwhite ===== | ===== postwhite ===== | ||
- | <WRAP center round important | + | <WRAP center round important |
- | Natürlich kann die Pflege von einzelnen Systemen zu einer sehr zeitaufwändigen Arbeit ausarten, vor allem dann wenn versendende Systeme großer Mailprovider oder besonderer geclusteter Mailserver zum Einsatz kommen. Werden Mails von Servern unterschiedlicher abwechselnd von unterschiedlichen Mailrelays mit unterschiedlichen IP-Adresssen verschickt, wird die Nutzung der **[[spam_3# | + | Natürlich kann die Pflege von einzelnen Systemen zu einer sehr zeitaufwändigen Arbeit ausarten, vor allem dann wenn versendende Systeme großer Mailprovider oder besonderer geclusteter Mailserver zum Einsatz kommen. Werden Mails von Servern unterschiedlicher abwechselnd von unterschiedlichen Mailrelays mit unterschiedlichen IP-Adresssen verschickt, wird die Nutzung der **[[spam_3# |
- | <WRAP center round tip 100%> | + | <WRAP center round tip 80%> |
- | Eine manuelle Pflege der **postscreen_access_list** ist hier nicht mehr praxisgerecht. Statt nun auf die Nutzung der Funktion **postscreen_access_list** gänzlich zu verzichten, ist die Nutzung einer automatisch gepflegten Access-Liste mit Hilfe von **[[centos: | + | Eine manuelle Pflege der **postscreen_access_list** ist hier nicht mehr praxisgerecht. Statt nun auf die Nutzung der Funktion **postscreen_access_list** gänzlich zu verzichten, ist die Nutzung einer automatisch gepflegten Access-Liste mit Hilfe von **[[centos: |
+ | |||
+ | <WRAP center round alert 80%> | ||
+ | Stellt man auf produktiv im Einsatz befindlichen Mailservern den zusätzlichen Gewinn bei der SPAM-Abwehr durch Nutzung der **[[# | ||
+ | |||
+ | In den __seltensten Fällen__ wird man daher wirklich diese Funktion nutzen wollen! | ||
+ | </ | ||
</ | </ | ||
Zeile 1214: | Zeile 1228: | ||
* **[[http:// | * **[[http:// | ||
- | /* ~~AUTOTWEET: | + | ~~AUTOTWEET: |