Login
Newsletter
Werbung

Do, 7. August 2014, 15:00

Spamfilterung mit bogofilter

Von dknof

Anwendung in KMail

Der E-Mail-Client KMail enthält einen Assistenten zur Spam-Bekämpfung, der bei der Einrichtung von Filterregeln für die Verwendung von bogofilter hilft. Für eine allgemeine Einführung in den Filtermechanismus von KMail siehe »E-Mails filtern mit KMail«.

Der Assistent lässt sich im Menü Extras -> Anti-Spam-Assistent aufrufen. Er bietet eine Auswahl der zur Verfügung stehenden Systeme an, darunter auch bogofilter, sofern das Programm installiert ist.

Im zweiten Schritt erscheinen zwei Abfragen für den Filter: diese entsprechen den Filteraktionen von den Spam-Filtern. Damit die Spam-E-Mails alle im Ordner Spam landen, muss hier der Ordner von »Papierkorb« in »Spam« geändert werden.

Im dritten Schritt des Assistenten werden die Filter angezeigt, die mit Betätigung von Fertigstellen erzeugt werden: »Bogofilter Check«, »Spam-Bekämpfung«, »Als Spam klassifizieren« und »Als Nicht-Spam klassifizieren«.

Assistent Seite 1

Dr. Diether Knof

Assistent Seite 1

Assistent Seite 2

Dr. Diether Knof

Assistent Seite 2

Assistent Seite 3

Dr. Diether Knof

Assistent Seite 3

Der Assistent legt nun die Filter an. Es sind ganz normale Filter, die in den Filterregeln angeschaut sowie verändert werden können:

Der Filter »Bogofilter Check« wird auf alle E-Mails bis zur Größe von 250 kB angewendet. Diese E-Mails werden durch das Programm bogofilter -p -e geleitet. Dieser Aufruf ergänzt die Kopfzeilen der E-Mail um das Feld »X-Bogosity«, das enthält, ob die E-Mail als Spam eingeschätzt wurde. Weiterhin ist eingestellt, dass auch die folgenden Filter geprüft werden.

Filter »Bogofilter Check«

Dr. Diether Knof

Filter »Bogofilter Check«

Filter »Spam-Bekämpfung«

Dr. Diether Knof

Filter »Spam-Bekämpfung«

Der Filter »Spam-Bekämpfung« prüft anschließend das Feld »X-Bogosity«. Wenn dort ein Spamverdacht eingetragen ist, wird die E-Mail in den Ordner Spam verschoben, als Spam markiert und als gelesen gesetzt.

Die Filter »Als Spam klassifizieren« und »Als Nicht-Spam klassifizieren« sind Filter, die nicht auf eingehende E-Mails angewendet werden, sondern nur manuell über das Menü Filteraktionen anwenden und über die Werkzeugleiste aufgerufen werden können. Dazu gibt es in der Werkzeugleiste die beiden weitere Schaltflächen »Spam« und »Ham«.

Filter »Als Spam klassifizieren«

Dr. Diether Knof

Filter »Als Spam klassifizieren«

Filter »Als Nicht-Spam klassifizieren«

Dr. Diether Knof

Filter »Als Nicht-Spam klassifizieren«

Über die Schaltflächen werden die markierten E-Mails als Spam beziehungsweise Ham registriert und eine entsprechende Funktion wird durchgeführt.

Wird beim Filter »Als Spam klassifizieren« die Filteraktion »In Ordner verschieben« durch »Nachricht löschen« ersetzt, werden manuell als Spam klassifizierte E-Mails per Knopfdruck entfernt.

Wenn der Filter »Als Nicht-Spam klassifizieren« um das Filterkriterium »In Ordner verschieben Posteingang« ergänzt wird, lassen sich irrtümlich als Spam klassifizierte E-Mails mit einem Klick auf »Ham« aus dem Spam-Ordner in den Posteingang verschieben und gleich als Ham klassifizieren.

Modifizierter Filter »Spam-Bekämpfung«

Dr. Diether Knof

Modifizierter Filter »Spam-Bekämpfung«

Angepasste Filter

Mit den vom Assistenten erzeugten Filtern ist für die Registrierung von E-Mails noch viel Handarbeit nötig. Diese wird sich der Anwender oft sparen. Um alle E-Mails in der Datenbank von bogofilter zu registrieren, ist es daher am einfachsten, die Registrierung automatisch vom Filter durchführen zu lassen. Dazu sind die folgenden Änderungen am Filter vorzunehmen:

Den Filter »Spam-Bekämpfung« ergänzt man um die Filteraktion »Befehl ausführen bogofilter -s«.

Den Filter »Spam-Bekämpfung« dupliziert man und benennt ihn in »Ham-Registrierung« um. Die Filterbedingung ändert man in »X-Bogosity passt auf regulären Ausdruck (no)|(ham)|(unsure)\b« (nur der reguläre Ausdruck wird verändert). Alle Filteraktionen löscht man und fügt als einzigen Filter »Befehl ausführen bogofilter -n« ein. Die weiteren Einstellungen »Diesen Filter bei der manuellen Filterung anwenden« und »Bearbeitung hier beenden, falls Filterbedingung zutrifft« wählt man ab.

Modifizierter Filter »Als Spam klassifizieren«

Dr. Diether Knof

Modifizierter Filter »Als Spam klassifizieren«

Erweiterte Einstellungen des modifizierten Filters »Als Spam klassifizieren«

Dr. Diether Knof

Erweiterte Einstellungen des modifizierten Filters »Als Spam klassifizieren«

Beim Filter »Als Spam klassifizieren« ändert man die zweite Filteraktion in »Befehl ausführen bogofilter -N -s«, fügt also die Option -N hinzu.

Modifizierter Filter »Als Spam klassifizieren«

Dr. Diether Knof

Modifizierter Filter »Als Spam klassifizieren«

Modifizierter Filter »Als Nicht-Spam klassifizieren«

Dr. Diether Knof

Modifizierter Filter »Als Nicht-Spam klassifizieren«

Entsprechend ändert man beim Filter »Als Nicht-Spam klassifizieren« die zweite Filteraktion in »Befehl ausführen bogofilter -S -n«.

Zum Verständnis der Änderungen hilft es, sich zu überlegen, was in den folgenden Fällen passiert:

  • Eine Spam-E-Mail wird empfangen und als Spam klassifiziert.
  • Eine Spam-E-Mail wird empfangen und nicht als Spam klassifiziert (falsch-Positiv-Klassifizierung). Anschließend wird der Filter »Als Spam klassifizieren« manuell aufgerufen.
  • Eine Ham-E-Mail wird empfangen und als Ham oder Unbekannt klassifiziert.
  • Eine Ham-E-Mail wird empfangen und als Spam klassifiziert (falsch-Negativ-Klassifizierung). Anschließend wird der Filter »Als Nicht-Spam klassifizieren« manuell aufgerufen.

Bogofilter bietet mit dem Schalter -u die Möglichkeit, E-Mails entsprechend der Klassifizierung zu registrieren (siehe oben). Dies wird hier nicht verwendet, da ansonsten E-Mails, die weder als Spam noch als Ham erkannt werden, nicht klassifiziert werden. Aber gerade für als Unbekannt klassifizierte E-Mails ist eine Registrierung wichtig, damit der Filter immer besser wird.

Um E-Mails von bestimmten Personen nie als Spam einzuordnen, kann man die Filterkriterien bei »Bogofilter Check« entsprechend ergänzen. Alternativ kann man direkt darauf folgend einen separaten Filter erstellen, in dem das Feld »X-Bogosity« entfernt wird.

Kommentare (Insgesamt: 0 )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung