Rspamd: From Blacklist

Eine Blacklist für Wörter und Zeichenketten für den Absender / From einer Email lässt sich in Rspamd anhand des Moduls Multimap und Regex umsetzen. Einfach folgendes in die multimap hinzufügen.

 

				
					#/etc/rspamd/local.d/multimap.conf

FROM_BLACKLISTED {
        type = "header";
        header = "From";
        map = "${LOCAL_CONFDIR}/maps.d/blacklist_from.map";
        regexp = true;
        action = "reject"; # Prefilter mode
        description = "Blacklist map for FROM_BLACKLISTED";
}
				
			
				
					# /etc/rspamd/maps.d/blacklist_from.map

/cialis/i
/erektion/i
/errektion/i
/v[i!1][a@]gr[a@]/i   # deckt unterschiedliche Schreibweisen von viagra ab
/voegeln/i
/poppen/i
/kaufland abteilung/i
/ficken/i
/sex[^yu]/i   # findet sex, aber nicht sexy oder sexualkunde 
/mcafee/i
/sofort abnehmen/i
/smava/i
/druckerpatronen.de/i
/bei arte/i
/bet-at-home/i
/jetzt klicken/i
/testsieger arte/i
/testsieger pro7/i
/k-tropfen/i
				
			

Damit das dann auch über die Weboberfläche ohne Fehlermeldung gepflegt werden kann, habe ich noch mit chmod 777 /etc/rspamd/maps.d Schreibrechte gegeben. 

In der Weboberfläche unter Smbols nach FROM_BLACKLISTED suchen und den Wert 15 eintragen (wenn eine RegEx in der Map zutrifft 15 Punkte geben). 

Die Map checkt das From der Spammails nach den Zeichenketten, wenn die gefunden werden, gibt es Strafpunkte und die Mail wird gleich rejected. Die Mails werden mit der Fehlermeldung 554 5.7.1 Matched map: FROM_BLACKLISTED rejected.

Die Website regex101.com ist nützlich beim ausprobieren der Regular Expressions.
Rspamd benutzt Hyperscan für die Regular Expressions. Alles, was nicht von Hyperscan unterstützt wird, sollte generell nicht in regulären Ausdrücken von Rspamd verwendet werden, ansonsten bekommt man im Logfile eine Fehlermeldung, wie diese: cannot create tree of regexp when processing ‘sex(?!y|u)’: Zero-width assertions are not supported.

 

Eine Zeile pro Regular Expression. 
Jede startet und endet mit einem /, das i am Ende steht für Case insensitive match, als Groß- / Kleinschreibung ignorieren. 

.*     bedeutet beliebig viele Zeichen oder keines
\s    steht für Leerzeichen / Whitespace
|      steht für oder
$     steht für Ende der Zeile
[i!1] bedeutet, dass eines der Zeichen in den Klammern an die Stelle kommt, in dem Fall also i oder ! oder 1.  Setzt man ein ? dahinter, bedeutet das, es könnte eines der Zeichen dort stehen, muss aber nicht. *? bedeutet, eines oder mehrere dieser Zeichen könnten dort stehen, muss aber nicht. 


Hier ist der Beitrag, wie man die Betreffzeile filtert

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Vielleicht gefällt dir auch folgendes?

.user.ini auf NGINX ausblenden

Die “.user.ini”-Datei, die Wordfence erstellt, kann vertrauliche Informationen enthalten, und der öffentliche Zugriff darauf sollte eingeschränkt werden. Wenn NGINX genutzt ist, muss man das selber

Mehr lesen »

php-fpm Optimierung

Ich nutze php-fpm und mir sind starke Performance-Probleme bei der Verwendung von WordPress aufgefallen. Die Oberfläche reagierte träge, oft gab es lange Wartezeiten. Zur php-fpm

Mehr lesen »
WordPress Cookie Plugin von Real Cookie Banner