Policyd-weight
Inhaltsverzeichnis
Erklärung
Policyd-weight ist ein Mailfilter für den Postfix Mail Transfer Agent der von Robert Felber in Perl entwickelt wurde. Policyd-weight untersucht die Mail bei der Einlieferung anhand des Envelope Sender, des Envelope To und der HELO-Daten die während des SMTP-Handshakes übertragen werden und vergibt für verschiedene Kriterien Punkte. Dabei werden zum Beispiel Realtime Blackhole Listen abgefragt oder die DNS-Konfiguration des Absenders überprüft. Für jeden Regelverstoß gibt es negative Punkte und ab einem bestimmten Score wird die Mail abgelehnt.
Wird die Mail akzeptiert wird sie üblicherweise noch anderen Antispammaßnahmen unterzogen. Da policyd-weight nicht mit der kompletten Mail arbeitet werden Ressourcen des Servers gespart.
O-Text: WikiPedia
- Doku: /usr/share/doc/policyd-weight/README.Debian
Links
- Autor Robert Felber
- Vortrag zum Policyd-weight
- Org. Policyd-weight Documentation
- Doku von Djangos WIKI
Mailing List
Bekannte Probleme
Mail-Zustellungen abgelehnt wegen falschem MX
Leider kommt es immer wieder mal vor, dass Blacklists ihren Betrieb einstellen. Dann kann es zu falschbewertungen innerhalb von Policyd-weight kommen. Hier ein Beispiel:
- Fehlermeldung
Recipient address rejected: Mail appeared to be SPAM or forged. Ask your Mail/DNS-Administrator to correct HELO and DNS MX settings or to get removed from DNSBLs
- Lösung - Folgende Zeile Kommentieren oder löschen
vi /etc/policyd-weight.conf # 'rbl.ipv6-world.net', 4.25, 0, 'IPv6_RBL'
- Erklärung
Wenn eine Blcklist offline geht, wie in der Vergangenheit schon einige male passiert, Fhelen dem Policyd-weight Informationen, so dass es einer Falschen Bewertung kommen kann.
Keine SPAM Erkennung bei leerem Absender im Envelope
Laut SMTP RFC werden Bounce Mails von Mailservern mir leerem Absender from=<> versendet und dürfen vom empfangenden Mailserver nicht geblockt werden. Deshalb werden solche eMails vom Policyd-weight Daemon ohne SPAM-Prüfung durchgelassen. Dieses Verfahren wird vom Spammern ausgenutzt. Ich hatte einen Fall, bei dem mehrere 100.000 Mails am Tag nur solche SPAM Mails mit from=<> waren. Ich habe mich entschieden, den Plolicyd-weight so anzupassen, dass auch Mails mit leerem Absender im Envelope die normalen SPAM-Prüfungen durchlaufen. Das weicht von der RFC ab. Meiner Meinung nach macht es keinen Sinn, erkannte SPAM-Mails auszuliefern, nur um der RFC genüge zu tun. Wer seinen Policyd-weight auch anpassen möchte, muss nur in der Datei /usr/sbin/policyd-weight die folgenden Zeilen auskommentieren:
ACHTUNG auf eigene Gefahr
1762 my $from_domain; 1763 if($attr{sender} =~ /.*@(.*)/) 1764 { 1765 $from_domain = $1; 1766 } 1767 1768 # if($from eq ) 1769 # { 1770 # return('DUNNO NULL (<>) Sender'); 1771 # } 1772 my $orig_from = $from;
Konfiguration
Optionen und Aktionen
Options -D Don't detach master - run master in foreground -d Debug, don't daemonize, log to STDOUT -f /path/to/file Specify a configuration file -h This help -k Kill cache instance -s Show cache entries and exit. With -d show debug cache entries -v Show version and exit
Actions stop Stops the policyd-weight daemon, add -k to also Stop the cache. In addition with -d -k it stops the debug cache. start Starts the policyd-weight daemon. Add -d to start a debug session in foregorund. restart Restarts policyd-weight. Together with -d it restarts a debug session in foreground. reload Reload the configuration file defaults Output default configuration
- Beispiel
policyd-weight [-option -option2 <arg>] policyd-weight -v // zeigt die Version an policyd-weight -s // zeigt den Cache an policyd-weight -k // löscht den Cache
policyd-weight [stop|start|restart|defaults] policyd-weight restart
Defaultwerte anzeigen
- Defaultwerte anzeigen
/usr/sbin/policyd-weight defaults | less
- Wenn man die Datei /etc/policyd-weight.conf anlegt kann man die Default verwendeten Einstellungen anpassen.
policyd-weight defaults > /etc/policyd-weight.conf
- Wenn Änderungen an /etc/policyd-weight.conf wurden, muss der policyd-weight Daemon neu gestartet werden
/etc/init.d/policyd-weight restart
Mail LOG auswerten
- Rejected Mails
grep "policyd-weight.*action=" /var/log/mail.log | grep -v DUNNO
- Accepted Mails
grep "policyd-weight.*action=" /var/log/mail.log | grep DUNNO
Blacklisten
Achtung: Keine Garantie, dass die folgende Liste aktuell, bitte vor der Nutzung prüfen
=============================================================================== QUERY: 88.226.113.204 NAME: dsl88-226-29132.ttnet.net.tr ADDR: 88.226.113.204 --------------------------------------------------------------------------- listed on RBL:bl.spamcop.net, result: 127.0.0.2, time: 1s "Blocked - see http://www.spamcop.net/bl.shtml?88.226.113.204" --------------------------------------------------------------------------- listed on RBL:blackholes.five-ten-sg.com, result: 127.0.0.2, time: 1s "miscellaneous address blocks that have sent spam here" --------------------------------------------------------------------------- listed on RBL:cblless.anti-spam.org.cn, result: 127.0.8.5, time: 2s "Mail from 88.226.113.204 refused, see http://anti-spam.org.cn/Rbl/Query/Result?IP=88.226.113.204" --------------------------------------------------------------------------- listed on RBL:cblplus.anti-spam.org.cn, result: 127.0.8.6, time: 2s "Mail from 88.226.113.204 refused, see http://anti-spam.org.cn/Rbl/Query/Result?IP=88.226.113.204" --------------------------------------------------------------------------- listed on RBL:dnsbl-2.uceprotect.net, result: 127.0.0.2, time: 1s "Net 88.226.0.0/17 is UCEPROTECT-Level2 listed because of 683 abusers. Your ISP TTNET TTnet Autonomous System/AS9121 has to fix this. See: http://www.uceprotect.net/rblcheck.php?ipr=88.226.113.204" --------------------------------------------------------------------------- listed on RBL:dnsbl-3.uceprotect.net, result: 127.0.0.2, time: 1s "Your ISP TTNET TTnet Autonomous System/AS9121 is UCEPROTECT-Level3 listed because he is responsible for a total of 78711 abusers on the net. See: http://www.uceprotect.net/rblcheck.php?ipr=88.226.113.204" --------------------------------------------------------------------------- listed on RBL:hostkarma.junkemailfilter.com, result: 127.0.1.1, time: 1s "Quit listed 88.226.113.204 See http://wiki.junkemailfilter.com/index.php/Spam_DNS_Lists" --------------------------------------------------------------------------- listed on RBL:ips.backscatterer.org, result: 127.0.0.2, time: 1s "Sorry 88.226.113.204 is blacklisted at http://www.backscatterer.org/?ip=88.226.113.204" --------------------------------------------------------------------------- listed on RBL:zen.spamhaus.org, result: 127.0.0.4, time: 1s "http://www.spamhaus.org/query/bl?ip=88.226.113.204" --------------------------------------------------------------------------- listed on RBL:zz.countries.nerd.dk, result: 127.0.3.24, time: 1s "tr" --------------------------------------------------------------------------- listed on RHSBL:abuse.rfc-ignorant.org, result: 127.0.0.4, time: 2s "Not supporting abuse at domain" --------------------------------------------------------------------------- listed on RHSBL:hostkarma.junkemailfilter.com, result: 127.0.2.3, time: 1s "Familiar Domains" --------------------------------------------------------------------------- listed on RHSBL:rddn.dnsbl.net.au, result: 127.0.0.2, time: 1s "ttnet.net.tr see http://dnsbl.net.au/rddn/" --------------------------------------------------------------------------- listed on RHSBL:whois.rfc-ignorant.org, result: 127.0.0.5, time: 2s "Inaccurate or missing WHOIS data"