Debian: Spamassassin tuning (Aktualisierung/Auswertung)

3

Damit die Spamfilterung mit spamassassin erfolgreich ist/bleibt, muss der Filter trainiert werden bzw. die Regeln für die Bewertung müssen aktuell gehalten werden. Dies konnte man früher über das script rules_du_jour erledigen. Leider ist die Wartung/Weiterentwicklung dieses scriptes eingestellt worden. Statt dessen kann jetzt sa-update verwendet werden.

Doch was hilftes, den Spamfilter aktuell zu halten, wenn man keine Rückmeldung über die false/positiv Erkennung bekommt? Rückmeldungen von Usern sollten hier kein Maßstab sein. Für einige User arbeitet der Spamfilter schon nicht mehr richtig, wenn von 100 Spam-Mails eine durchkommt.

Um sich also selber ein Bild zu machen, kann man die Log-Dateien von Spamassassin auswerten. Wenn noch kein logging aktiviert ist, sollte dies jetzt eingerichtet werden:

Spamassassin Logging

Erweitern Sie dazu in der Datei /etc/default/spamassassin die Zeile Options um den Eintrag

-s ${SAHOME}spamd.log

SAHOME sollte am Anfang der Datei definiert worden sein:

SAHOME="/var/lib/spamassassin/"

Um die Log-Datei auszuwerten, kann nun sa-stats verwendet werden. Das Perl-Skript ließt die Logdatei ein und liefert eine wesentlich übersichtlichere Ausgabe als die reine Log-Datei jemals bieten könnte.

Auswertung mit sa-stats

./sa-stats.pl < /var/lib/spamassassin/spamd.log

Logrotation aktivieren

Damit die Logdatei spamassassin nicht irgendwann überläuft, sollte logrotate entsprechend konfiguriert werden:

/etc/logrotate.d/spamassassin
/var/lib/spamassassin/spamd.log {
        weekly
        missingok
        rotate 12
        compress
        delaycompress
        notifempty
        create 640 root root
        sharedscripts
        postrotate
        /etc/init.d/spamassassin reload >/dev/null
        endscript
}

Weitere Regeln

Das built-in Regelwerk von Spamassassin ist an für sich schon relativ gut. Es lässt sich meiner Meinung nach jedoch noch ein wenig verfeineren. Als relativ gut haben sich die Regeln von RulesEmporium erwiesen. Wie bereits erwähnt, wird das script rules_du_jour leider nicht mehr weiter entwickelt. Daryl O’Shea bietet jedoch eine Hand voll Regeln an, die die Standard Regeln von Spamassassin gut erweiteren. Bervor diese Regeln automatisch geupdatet werde können, muss der entsprechende PGP-Key installiert werden.

Vorher noch sa-update aufrufen, da sa-update sonst evtl. die Schlüssel nicht importieren kann, weil der Ordner /etc/spamassassin/sa-update-keys/ noch nicht exisitert.

sa-update

anschließend

wget http://daryl.dostech.ca/sa-update/sare/GPG.KEY
gpg --import GPG.KEY
sa-update --import GPG.KEY
rm GPG.KEY
wget http://spamassassin.apache.org/updates/GPG.KEY
gpg --import GPG.KEY
sa-update --import GPG.KEY
rm GPG.KEY
wget http://yerp.org/rules/GPG.KEY
gpg --import GPG.KEY
sa-update --import GPG.KEY

Anschließend wird eine Channel-Date für sa-update angelegt

touch /etc/spamassassin/sare-sa-update-channels.txt

In dieser werden dann die zusätzlichen Channels eingebunden:

updates.spamassassin.org
70_sare_stocks.cf.sare.sa-update.dostech.net
70_sare_adult.cf.sare.sa-update.dostech.net
70_sare_spoof.cf.sare.sa-update.dostech.net
70_sare_bayes_poison_nxm.cf.sare.sa-update.dostech.net
70_sare_genlsubj_x30.cf.sare.sa-update.dostech.net
70_sare_oem.cf.sare.sa-update.dostech.net
70_sare_random.cf.sare.sa-update.dostech.net
70_sare_specific.cf.sare.sa-update.dostech.net
70_zmi_german.cf.zmi.sa-update.dostech.net
88_FVGT_Bayes_Poison.cf.sare.sa-update.dostech.net
88_FVGT_Tripwire.cf.sare.sa-update.dostech.net
88_FVGT_rawbody.cf.sare.sa-update.dostech.net
88_FVGT_subject.cf.sare.sa-update.dostech.net
chickenpox.cf.sare.sa-update.dostech.net
sought.rules.yerp.org

Um nun die Channels automatisch update zu können, muss noch ein key-file mit den Fingerprints angelegt werden.

touch /etc/spamassassin/keys
echo 856AA88A >> /etc/spamassassin/keys
echo 5244EC45 >> /etc/spamassassin/keys
echo 6C6191E3 >> /etc/spamassassin/keys

Anschließend können die Regel aktualisiert werden

sa-update -D --channelfile /etc/spamassassin/sare-sa-update-channels.txt --gpgkeyfile /etc/spamassassin/keys

Die Aktualisierung der Regeln sollten Sie von Zeit zu Zeit kontrollieren, um zu vermeiden

spamassassin -D --lint

Bilder Spam

Damit Spamassassin Bilderspam auch als solchen erkennt, kannt der ToolFuzzyOCR eingesetzt werden. Eine sehr gute funktionierende Anleitung finden Sie hier oder eine zweite hier. Das nützliche Tool "pamthreshold" ist leider nicht in dem Debian-Paket von "netpbm" (zu alt). Auf http://www.morbitzer.de gibt es jedoch schon eine compilierte Version.

cd /usr/bin
wget http://www.morbitzer.de/downloads/pamthreshold
chmod 755 pamthreshold

Links: Heinlein-Support Präsentation zum Thema Clustering/Postfix/Spam

Teilen.

Über den Autor

Seit der Ausbildung zum Fachinformatiker Systemintegration (2002-2005) bei der DaimlerChrysler AG, beruflich im Bereich der E-Mail Kommunikation (Exchange, Linux) sowie des ActiveDirectory, mit entsprechenden Zertifizierungen (MCSE 2003, MCITP Ent.-Admin 2008, MCSE 2012, LPIC 1-3) tätig. Abgeschlossenes Studium zum Master of Science der IT-Management an der FOM sowie zertifizierter Datenschutzbeauftragter. Aktuell im Projektmanagement tätig.

3 Kommentare

Antworten