Auf den Webseiten zu unserem Postfixbuch veröffentlichen wir seit jeher tagesaktuelle Header-/Bodychecks für aktuell kursierende Spam-Mails. Viele Leser und Kunden von uns haben diese Checks in ihre jeweilige Postfix-Konfiguration eingebunden und aktualisieren die Scripte per Cron-Job. Jetzt haben wir unsere Checks umgebaut und veröffentlichen sie ab sofort als SpamAssassin-Ruleset -- bequem aktualisierbar über sa-update.
Das Problem an Header-Body-Checks in Postfix: Sie wirken final. Treffen sie zu, wird die jeweilige Mail sofort abgelehnt und hat keine weitere Chance. Fast immer ist das kein Problem, sind unsere Pattern doch absichtlich sehr konkret gehalten und können oft kaum auf eine andere Mail unberechtigterweise passen. Aber "oft" und "kaum" ist eben nicht "nie" und so kam es immer wieder mal dazu, daß diese Checks auch zu einem False Positive führen konnten.
Seit einem Jahr nutzen wir unsere Checks für unsere hauseigenen Spamfilter bei Heinlein Hosting, dem Hosted Anti-Spam-Service oder unserem Provider JPBerlin.de darum bereits als SpamAssassin-Ruleset. Die meisten Regeln haben dabei eine Gewichtung von 5, so daß sie extrem stark in die Gewichtung eingehen, aber trotzdem immer noch weitere verdächtige Faktoren hinzukommen müssen. Oder andersherum formuliert: Ist eine E-Mail ansonsten sehr sauber, wird sie auch bei einem normalen Treffer unserer Body-/Header-Checks nicht gleich herausgefiltert werden.
Die neuen SpamAssassin-Regeln haben sich bewährt: Sehr gute Filterergebnisse, keine False Positives-Querschläger.
Mit dem heutigen Tag werden wir die bisherigen Body-/Header-Checks von http://www.postfixbuch.de darum nicht mehr weiter pflegen, sondern zeigen lieber hier die Anleitung, wie automatisiert über sa-update unsere Regelsätze in Amavis/SpamAssassin eingebunden werden.
Jede SpamAssassin-Installation sollte so oder so täglich per Cron-Job einen Aufruf des Tools "sa-update" durchführen. Fehlt das Tool, so muß bei einigen Distributionen noch das Paket "spamassassin" ausdrücklich installiert werden.
sa-update prüft über eine DNS-Abfrage sehr performant, ob neue Regelsätze vorliegen und lädt ggf. die jeweiligen Regelsätze per http-Download herunter. Wird sa-update ohne Parameter aufgerufen, lädt es automatisch die Regeln von updates.spamassassin.org.
Über den Aufruf
sa-update --nogpg --channel spamassassin.heinlein-support.de
werden parallel zu den normalen SpamAssassin-Regeln auch unsere Heinlein-eigenen Regeln installiert. Sie finden sich dann in /var/lib/spamassassin/<version>/spamassassin.heinlein-support.de wieder.
Profis, die compilierte SA-Regeln einsetzen, müssen nun re2c ausführen. In allen Fällen aber muß der spamd, bzw. der Amavis neu gestartet werden, je nachdem, was eingesetzt wird.
Die üblichen Distributionen bringen jedoch bereits fertige Cron-Scripte in /etc/cron.daily mit, in denen sich mit wenigen Handgriffen auch der Aufruf unserer Regeln ergänzen läßt. Achten Sie natürlich darauf, daß ein http-Connect zu http://www.spamassassin.heinlein-support.de/ möglich ist!
Das Cron-Script liegt in /etc/cron.daily/spamassassin, dort findet sich ungefähr in Zeile 64 der Aufruf von sa-update:
# Update umask 022 sa-update
Hier wird nun der zweite Aufruf unserer Regelsätze wie folgt ergänzt:
# Update umask 022 sa-update sa-update --nogpg --channel spamassassin.heinlein-support.de
ansonsten kann alles so bleiben, wie es ist. Bitte achten Sie darauf, daß der Cron-Job in /etc/default/spamassassin aktiviert ist:
# Cronjob # Set to anything but 0 to enable the cron job to automatically update # spamassassin's rules on a nightly basis CRON=1
Das Script liegt hier als /etc/cron.daily/suse.cron-sa-update vor, der Aufruf von sa-update sieht per Default so aus:
if [ "$SPAM_SA_UPDATE" = "yes" ] then /usr/bin/sa-update &> /dev/null result=$?
Und kann wie folgt ergänzt werden:
if [ "$SPAM_SA_UPDATE" = "yes" ] then /usr/bin/sa-update --nogpg --channel spamassassin.heinlein-support.de &> /dev/null /usr/bin/sa-update &> /dev/null result=$?
Auch hier ist darauf zu achten, daß der Cron-Job in /etc/sysconfig/spamd wie folgt aktiviert ist:
# Set this varible to yes if you want the daily cron job # to call sa-update. SPAM_SA_UPDATE="yes"
sowie ggf. auch die anderen Parameter in dieser Datei den Neustart von Amavis etc. regeln.
SpamAssassin veröffentlicht nur sehr selten, wenige Male im Jahr, neue Regelupdates, so daß ein täglicher Cron-Job hier ausreichend ist. Wir veröffentlichen jedoch fortlaufend neue Updates, wann immer unser Support-Team unerkannte Spamwellen entdeckt und eingepflegt hat. Aus diesem Grunde können bei unseren Regelsätzen auch stündliche Cron-Jobs sehr sinnvoll sein. In diesem Fall sollte man die Script-Datei von /etc/cron.daily einfach nach /etc/cron.hourly verschieben.
sa-update prüft eh anhand eines sehr schnellen DNS-Lookups die Seriennummer und wird so bei unveränderten Regelsätzen gar keine TCP-Verbindung zum jeweiligen Update-Server aufbauen. Der stündliche Cron-Job hat also keine tiefergehenden Beeinträchtigungen zur Folge.
Kommentare
64 Antworten zu Aktuelle SpamAssassin-Regeln von Heinlein Support
Hallo Peer,
danke für die Filterliste! Nutze ich schon seit längerer Zeit und ist wirklich super!
Kam der Bug https://bz.apache.org/SpamAssassin/show_bug.cgi?id=7645
bereits bei dir an? Die Regeln sind wohl UTF-8 kodiert, müssten aber wohl ISO-8859-1 sein. Daher wirft z.B. sa-compile bei mir täglich Fehler bei dem Heinlein ruleset.
Gruß
Alex
Moin, hat jemand schon etwas bezüglich rspamd fertig?
Mir ist leider nicht klar, wie man das konvertieren kann.
Immerhin wird rspamd ja schon breiter eingesetzt und auch von Heinlein gepusht ;)
Tut sich jetzt nochmal was wegen dem Bug?
https://bz.apache.org/SpamAssassin/show_bug.cgi?id=7645
Hallo,
gibt es eine Regel mit der man Mails ab einer bestimmten Anzahl von Links rausfiltern kann?
Ich bekomme hunderte von Spam Mails die immer mehr als 10 Links enthalten.
Leider kann ich hierzu nichts finden.
Liebe Grüße Michael
Hallo an das Team!
Wurde der Download der Regeln abgeschaltet?
Klappt nicht mehr und beim manuellen Aufruf der Seite erscheint der Hinweis
Please see: http://www.heinlein-support.de
Viele Grüße von der Saar
Moin nach Berlin,
auch wenn der Post ein paar Jahre alt ist: Das scheint aktuell bzw. bereits seit gestern Vormittag wieder der Fall zu sein?
Schaut doch bitte mal nach...
Gruß von der Wieseck
Dirk
[…] Install spamassassin rulesets of Schaal-IT and Heinlein Support. […]
Gerade eben sa-update auf dem heinlein-support channel laufen lassen.
Spuckt leider einen Fehler aus, daß die sha512 nicht stimmen würde!
Ein manueller download der Regeldatei und ihrer Prüfsummen ergab, daß in beiden Prüfsummendateien ein Subdirectory angegeben ist!
Wenn man dieses entfernt und dann sa-update mit '--install' aufruft klappt das ganze!
Hallo ...
... ich versuche nun auch gerade die Rules zu aktivieren, aber ich erhalte nach dem Aufruf von ./etc/cron.daily/spamassin immer die Meldung:
root@kopano1:/etc/cron.daily# ./spamassassin
error: error setting creation time of /var/lib/spamassassin/3.004002/spamassassin_heinlein-support_de/MIRRORED.BY: Operation not permitted
Cannot open file /var/lib/spamassassin/3.004002/spamassassin_heinlein-support_de/1718.tar.gz: No such file or directory at /usr/bin/sa-update line 1600.
Die Rechte auf den Ordnern sind identisch mit denen der originalen SA-Rules.
habe ich was vergessen oder übersehen/überlesen?
Liebes Team von Heinlein-Support,
vielen herzlichen Dank für das Bereitstellen Ihrer SpamAssassin Regeln. Ich habe sie vor kurzem in mein Setup eingebunden und konnte damit die Qualität der Erkennungsrate sehr deutlich steigern. Ich finde es toll, dass Sie den Regelsatz so uneigennützig zur Verfügung stellen. kudos to you!
Hallo,
wenn ich diese Regeln verwende, funktioniert SA hier nicht mehr:
spamc -l -E --max-size=268435450 -R < testmail20191214-194952.txt
0.0/5.0
(no report template found)
Gruß,
Hendrik
Hallo,
seit gestern (23.02.2023) ca. 10 Uhr kann ich keine Updates mehr von 'spamassassin.heinlein-support.de' beziehen ("could not find working mirror, channel failed").
Handelt es sich hierbei um einen technischen Defekt oder gibt es die Regeln nicht mehr öffentlich verfügbar?
VG
Torsten
Ich nutzte bis vor einigen Tagen die spamassassin rules.
root@foxtrot452:/etc/mail/spamassassin/channel.d# sa-update --nogpg --channel spamassassin.heinlein-support.de
channel 'spamassassin.heinlein-support.de': could not find working mirror, channel failed
4|root@foxtrot452:/etc/mail/spamassassin/channel.d#
Wenn der Dienst offiziell eingestellt wurde, wäre eine "offizielle" Aussage dazu nett.
MfG
Hallo,
zei Fragen:
1. gibt es auch Regeln für rspamd?
2. Auf FreeBSD wird beim Aufruf von `sa-update -v --nogpg --channel spamassassin.heinlein-support.de` zwar der Ordner /var/db/spamassassin/4.000000/spamassassin_heinlein-support_de erstellt, allerdings ohne Inhalt. Gibt es die Regeln überhaupt noch?
Seitennummerierung