SpamAssassin · 4 min read · Jan 29, 2026

Hinzufügen und Aktualisieren von SpamAssassin-Regelsätzen mit RulesDuJour

Hinzufügen und Aktualisieren von SpamAssassin-Regelsätzen mit RulesDuJour

Version 1.0
Autor: Falko Timme

Dieser Artikel erklärt, wie Sie zusätzliche SpamAssassin-Regelsätze herunterladen bzw. diese Regelsätze automatisch mit einem Shell-Skript namens RulesDuJour aktualisieren können. Diese zusätzlichen Regelsätze können Ihre Spam-Erkennungsrate dramatisch erhöhen. Die meisten der von RulesDuJour unterstützten Regelsätze finden Sie auf der Website des SA Rules Emporium.

Ich gebe keine Garantie, dass dies bei Ihnen funktioniert!

1 Vorbemerkung

Ich gehe davon aus, dass Sie SpamAssassin bereits eingerichtet haben (es spielt keine Rolle, ob es sich um einen eigenständigen Daemon handelt oder über einen anderen Daemon wie amavisd aufgerufen wird - RulesDuJour unterstützt all diese Konfigurationen).

2 Herunterladen von RulesDuJour

Ich möchte das RulesDuJour-Skript im Verzeichnis /usr/local/sbin speichern, also gehe ich dorthin und lade das Skript herunter:

cd /usr/local/sbin  
wget http://sandgnat.com/rdj/rules_du_jour  
chmod 750 rules_du_jour

3 Konfigurieren von RulesDuJour

Wann immer das RulesDuJour-Skript aufgerufen wird, versucht es, die Konfigurationsdatei /etc/rulesdujour/config zu lesen. Daher erstellen wir diese Datei jetzt:

mkdir /etc/rulesdujour  
vi /etc/rulesdujour/config

| TRUSTED_RULESETS="TRIPWIRE SARE_EVILNUMBERS0 SARE_RANDOM"; # TRIPWIRE, SARE_EVILNUMBERS0, SARE_EVILNUMBERS1, SARE_EVILNUMBERS2, BLACKLIST, BLACKLIST_URI, RANDOMVAL, BOGUSVIRUS, SARE_ADULT, SARE_FRAUD, SARE_BML, SARE_SPOOF, SARE_BAYES_POISON_NXM, SARE_OEM, SARE_RANDOM, SARE_HEADER, SARE_HEADER0, SARE_HEADER1, SARE_HEADER2, SARE_HEADER3, SARE_HEADER_ENG, SARE_HTML, SARE_HTML0, SARE_HTML1, SARE_HTML2, SARE_HTML3, SARE_HTML4, SARE_HTML_ENG, SARE_SPECIFIC, SARE_OBFU, SARE_OBFU0, SARE_OBFU1, SARE_OBFU2, SARE_OBFU3, SARE_REDIRECT, SARE_REDIRECT_POST300, SARE_SPAMCOP_TOP200, SARE_GENLSUBJ, SARE_GENLSUBJ0, SARE_GENLSUBJ1, SARE_GENLSUBJ2, SARE_GENLSUBJ3, SARE_GENLSUBJ_ENG, SARE_HIGHRISK, SARE_UNSUB, SARE_URI, SARE_URI0, SARE_URI1, SARE_URI3, SARE_URI_ENG, SARE_WHITELIST, SARE_WHITELIST_RCVD, SARE_WHITELIST_SPF, ZMI_GERMAN, SARE_STOCKS SA_DIR="/etc/mail/spamassassin"; # Ändern Sie dies in Ihr SA-Lokalkonfigurationsverzeichnis, wahrscheinlich /etc/mail/spamassassin. # Für amavisd chrooted kann dies sein: # /var/amavisd/etc/mail/spamassassin MAIL_ADDRESS="[email protected]"; SINGLE_EMAIL_ONLY="true"; # Setzen Sie dies auf "true", um nur eine Benachrichtigung # pro RDJ-Durchlauf mit "interessanten" # Aktivitäten zu senden. Setzen Sie auf "", um eine separate # für jede interessante Aktivität zu senden. EMAIL_RDJ_UPDATE_ONLY=""; # Setzen Sie dies auf "true", um Benachrichtigungen nur # zu senden, wenn ein Update für RDJ abgerufen wurde. Setzen # Sie auf "" (Standard), um Benachrichtigungen zu senden, # wann immer sich ein Regelsatz geändert hat. (Hat keine # Auswirkungen, es sei denn, SINGLE_EMAIL_ONLY ist gesetzt) SA_LINT="/usr/bin/spamassassin --lint"; # Befehl zum Überprüfen der Regeln SA_RESTART="/etc/init.d/amavisd restart"; # Befehl zum Neustarten von spamd # Kann /etc/rc.d/init.d/spamassassin restart sein # Für amavisd kann es /etc/init.d/amavisd restart sein # Für minedefang kann es /etc/init.d/mimedefang restart sein CURL_PROG="/usr/bin/curl"; # Speicherort des curl-Programms CURL_OPTS="-w %{http_code} --compressed -O -R -s -S -z"; # Parameter des curl-Programms CURL="${CURL_PROG} ${CURL_OPTS}"; # Curl-Programm mit Parametern WGET_PROG="/usr/bin/wget"; # Speicherort des wget-Programms WGET_OPTS="-N" # Parameter des wget-Programms WGET="${WGET_PROG} ${WGET_OPTS}"; # Wget-Programm mit Parametern PERL="/usr/bin/perl"; # Speicherort des perl-Programms GREP="/bin/grep"; # Speicherort des grep-Programms TAIL="/usr/bin/tail -n 1"; # Speicherort (und Parameter) für 'tail -n 1' HEAD="/usr/bin/head -n 1"; # Speicherort (und Parameter) für 'head -n 1' MAILCMD="/bin/mail"; # Speicherort des Mail-Programms # das das -s-Flag akzeptiert und versteht # DEBUG="true"; # Kommentieren Sie dies aus, um den Debug-Modus zu aktivieren (oder verwenden Sie -D) |

Die Zeile TRUSTED_RULESETS enthält alle Regelsätze, die Sie verwenden möchten (stellen Sie sicher, dass Sie diese testen, bevor Sie sie in Produktionssystemen verwenden!); Ich habe alle verfügbaren Regelsätze in einem Kommentar am Ende der Zeile aufgelistet.

Die Zeile SA_DIR muss Ihr SpamAssassin-Konfigurationsverzeichnis enthalten; normalerweise ist das /etc/mail/spamassassin.

Die MAIL_ADDRESS sollte eine E-Mail-Adresse enthalten, an die Sie von RulesDuJour Benachrichtigungen über den Download-/Aktualisierungsprozess erhalten möchten.

Alle anderen Optionen sind im obigen Skript (als Kommentare) erklärt. Der SA_RESTART sollte der Befehl sein, der verwendet wird, um SpamAssassin neu zu starten. Wenn Sie SpamAssassin als eigenständigen Daemon ausführen, ist es wahrscheinlich etwas wie /etc/init.d/spamassassin restart oder /etc/init.d/spamd restart; wenn SpamAssassin über amavisd aufgerufen wird, müssen Sie den Befehl angeben, der verwendet wird, um amavisd neu zu starten (z. B. /etc/init.d/amavisd restart).

Es ist eine gute Idee, vollständige Pfade zu allen Programmen im obigen Skript zu verwenden (z. B. /usr/bin/spamassassin anstelle von spamassassin oder /usr/bin/curl anstelle von curl). Sie können den vollständigen Pfad jedes Programms mit which herausfinden, z. B.

which spamassassin  
which curl  
which wget  
which perl  
which grep  
which tail  
which head  
which mail
[root@server1 sbin]# which spamassassin  
/usr/bin/spamassassin  
[root@server1 sbin]# which curl  
/usr/bin/curl  
[root@server1 sbin]# which wget  
/usr/bin/wget  
[root@server1 sbin]# which perl  
/usr/bin/perl  
[root@server1 sbin]# which grep  
/bin/grep  
[root@server1 sbin]# which tail  
/usr/bin/tail  
[root@server1 sbin]# which head  
/usr/bin/head  
[root@server1 sbin]# which mail  
/bin/mail  
[root@server1 sbin]#

4 Ausführen von RulesDuJour

Wenn Sie sich im Verzeichnis /usr/local/sbin befinden, können Sie RulesDuJour wie folgt ausführen:

./rules_du_jour

In einem anderen Verzeichnis können Sie es so aufrufen:

rules_du_jour

Natürlich können Sie auch immer den vollständigen Pfad verwenden:

/usr/local/sbin/rules_du_jour

5 Erstellen eines Cron-Jobs

Natürlich möchten Sie RulesDuJour nicht jedes Mal manuell ausführen; daher richten wir einen Cron-Job wie folgt ein:

crontab -e

| 0 3 * * * /usr/local/sbin/rules_du_jour 2&>1 > /dev/null |

Der obige Cron-Job würde RulesDuJour jede Nacht um 3:00 Uhr ausführen.

6 Links

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.