Hamster
 
Ein Projekt der HeimWeb Homepage
 
HeimWeb
HeimWeb Home    |     Hamster    |     Hamsterscripte    |     Mailfilter    |     Hamster@Seti    |     VBS
 

Mailfilter (Hauptverzeichnis)\MailFilt.hst


Einführung

nach oben
Der Mailfilter wurde zum ersten Mal in der Version Vr. 1.3.14.0 (25 Mar 2000) BETA "öffentlich" erwähnt. Davor gab es schon Versionen für Betatester.
- New: Mail-filters (see "MailFilt.hst" in helpfile for details). Additional notes for 1.3.13.100-betatesters: - Fix: "postto" additionally generated a mail-message. - Fix: "notify"-command overwrote recipient-list. - New: settings in Hamster.ini ("mail.filter.*"): - number of TOP-lines to load for notification-msgs - global size-filters (without pre-loading of headers) - Chg: Only one notification should be generated now, if "ignore already loaded mails" is enabled and server supports UIDL. - Fix: Add "Followup-To: poster"-header on "postto", if mail contains a "Mailing-List:"-header. Seitdem hat sich hier einiges geändert, und der Mailfilter ist immer weiter ausgebaut worden.

Ich werde mich hauptsächlich auf die aktuelle Stable, Version 2.0.0.1 vom 19.02.2003, beziehen.
Die aktuelle Beta-Entwicklung hat noch einmal einen gewaltigen Qualitätssprung beim Mailfilter erbracht. Hierauf werde ich gesondert eingehen. (Scoren, Log)

Ich möchte hier nur die prinzipielle Arbeitsweise des Mailfilters beschreiben und auf einige immer wieder gestellte Fragen eine Hilfestellung geben.
Diese Seite soll keine Hilfe zu RegEx oder der Syntax des Mailfilters sein.
Vielmehr sollen ein paar Interna erklärt werden, die zum besseren Verständnis des Mailfilters dienen.
In der Linkliste findet man weitere Seiten zum Thema Mailfilter.

Folgendes aus der Hamsterhilfe bitte ich aber trotzdem unbedingt zu beachten:

Wählen Sie ihre Filterkriterien sorgsam aus, andernfalls kann es zu Verlusten von eventuell wichtigen Nachrichten kommen. Schreiben Sie deshalb keine Filter aus anderen Quellen kritiklos ab und verwenden Sie nur Filter, die sie inhaltlich verstehen.

Zum Verständnis von Mail-Headern empfehle ich die FAQ von Thomas Hochstein: E-Mail-Header lesen und verstehen


Was passiert eigentlich, wenn der Hamster ein Postfach abfragt? Der TOP Befehl

nach oben
Die Abfrage eines POP-Servers geschieht für den Hamster in Verbindung mit dem Mailfilter mit verschiedenen Parametern. Da wären zum einer der Defaultuser und zum anderen die Filtersektion. Hierbei spielt es keine Rolle, ob diese schon in den Servereinstellungen definiert sind oder erst in einem Script mitgegeben werden. HamFetchMail( <server>, <port>, <user>, <pass>, <destuser>, <filter> ) Die Scripteinstellungen überschreiben jedoch gegebenenfalls die Servereinstellungen. Wenn nichts besonderes definiert ist, dann ist der Defaultuser der admin und die Filter-Section [*].
 
Zuerst fragt der Hamster einmal nach, ob es überhaupt neue E-Mails gibt. Wenn ja, bekommt er vom POP-Server eine Liste dieser Mails mit der Größe jeder einzelnen Mail.
Jetzt prüft der Hamster erst einmal, ob evtl. schon die globalen Mailgrößen überschritten werden. (Einstellungen->Mail: Server..->POP3-Einstellungen. Haken bei "Temp. erweiterte Einstellungen". Nicht zu verwechseln mit der Bytes-Abfrage im Mailfilter).
Nur wenn nicht schon hier die Mail gelöscht oder ignoriert wird, geht es beim Mailfilter weiter.  
Im Normalfall holt der Hamster dann nur die Header und ersten xx Zeilen des Body für die Auswertung mit dem Mailfilter. Erst wenn das Ergebnis des Mailfilters ein Laden der Mail ergibt, wird die komplette Mail geholt.
Die xx Zeilen ergeben sich aus dem TOP-Befehl. Die Anzahl kann man in der Hamster.ini mit [Setup] mail.filter.toplines=xx festlegen. Der Default ist 20.
 
Es gibt jedoch Fälle, in denen der Hamster auf diesen ersten Schritt verzichtet und sofort die komplette Mail holt.
1. Das TOP-Kommando ist bei dem jeweiligen POP-Server ausgeschaltet.
2. Der Mailfilter hat keinen Eintrag kill oder ignore.
3. Die Mail ist so klein, dass sich diese zwei Schritte nicht lohnen. Siehe auch Traffic
 

    zu 1. Je POP-Server kann das TOP-Kommando über die Server.ini abgeschaltet werden. [POP3] ; UseTopCommand=0 schaltet den TOP-Befehl ab. Default ist 1 UseTOPCommand=1 Dies war notwendig, da einige Server entweder das Kommando nicht unterstützt haben (dann wurde nach der Fehlermeldung sowieso noch die komplette Mail geholt) oder nicht die richtige Zeilenzahl geliefert haben.
     
    zu 2. Hierbei ist zu beachten, dass dies sich auf die passenden Filtersektionen bezieht.
     
    zu 3. Wenn die Mailgröße kleiner als 70 * (TOPWert+25) ist. Beim Default von 20 Zeilen wären das 3150 Byte.

 
Nach diesem Schritt hat der Hamster entweder den TOP oder sogar die komplette Mail geladen.
Der Mailfilter ist aber noch immer nicht in allen Fällen an der Reihe.
Wenn eine Aktion für "Header der eingehenden" Mail vorhanden ist, so wird erst diese ausgeführt. Der Mailfilter bekommt dann das Ergebnis dieser Aktion.
Jetzt wird der Mailfilter abgearbeitet und, wenn nicht schon die komplette Mail geholt wurde, diese bei einem load noch vom POP-Server geholt.


Aufbau des Filters

nach oben
Der Mailfilter kann in verschiedene Sektionen unterteilt werden.
Sektionen können mehrfach vorkommen.
Die Defaultsektion ist [*].
Der Sektionsname ist eine RegEx Entsprechung. [*] Filterregel ... [Sektion_A] Filterregel ... [*] Filterregel Für die Filterregeln gibt es verschiedene Kategorien der Einträge.

  • Wird die Mail geladen, ignoriert oder gelöscht (load, ignore, kill)
  • Wer bekommt die Mail (add, default, set, postto ...)
  • Status und Steuerinformationen (notify, log , Expire ...)
  • Score (Betahamster)

BETA
Um eine bessere Übersichtlichkeit zu gewährleisten, ist es möglich, Filterabschnitte in eigene Dateien auszulagern.
Sie werden dann mit dem "include"-Befehl im Mailfilter an der gewünschten Stelle eingesetzt. #!include ignore.txt
V2.0.3.0 (16.10.2003) - Die Anweisung #!load wird durch #!include ersetzt, vorläufig sind beide Anweisungen gültig, aber #!load erzeugt eine Warnmeldung. - Wenn die "Include"-Tiefe 5 überschreitet, wird das Laden wie bisher nicht nur abgebrochen, sondern auch ein Fehler im Log vermerkt. V2.0.2.2 (10.08.2003) - Die Anweisung "#!load Dateiname" erlaubt das Auslagern von Teilen des Mailfilters in eine separate Datei. Eine Verschachtelung bis zu fünf Dateien ist zulässig, weitere werden ignoriert, die Anzahl von load-Anweisungen innerhalb des Mailfilters ist egal, intern wird alles in eine Liste zusammengezogen. {HS}


Abarbeitung des Filters

nach oben
Die Mailfilterdatei wird immer von oben nach unten abgearbeitet.
Filter-Sektionen, die nicht zutreffen, werden übersprungen.
 
Beispiele (nur die Sektionen): [*] [Filter_A] [Sektion_A] [*] [Sektion_B] [* -Filter] [Sektion_A] [Filter_B] Sektionen können mehrfach vorkommen.
Ohne eine Angabe einer übergebenen Sektion werden hier nur die Sektionen [*] abgearbeitet.
Bei Angabe von "Sektion" als Filterkriterium zusätzlich noch [Sektion_A] und [Sektion_B],
bei Angabe von "_A" dageben [Sektion_A] und [Filter_A].
Das heißt, die Filtersektionen entsprechen RegEx-Ausdrücken!
 
Weitere Beispiele:
Wird "Filter" angegeben, dann werden [*], [Filter_A] und [Filter_B], jedoch nicht [* -Filter] abgearbeitet.
 
Meine Empfehlung ist, lieber ein paar konkrete einfache Sektionen zu ertellen, als zu versuchen, alles auf einmal durch verschiedene Bedingungen zu erreichen.


Wird die Mail geladen, ignoriert oder gelöscht?

nach oben
load ignore kill Wie schon gesagt, wird der Filter immer von oben nach unten abgearbeitet.
Der Hamster merkt sich, was er mit der Mail machen soll, in einem Flag. Dieses Flag hat drei Zustände load (laden)/ignore (ignorieren)/kill (löschen). Am Anfang steht dieses Flag auf laden. Wenn jetzt eine Anweisung load, ignore oder kill zutrifft, dann wird das Flag entsprechend neu gesetzt. Nach der Abarbeitung des Mailfilters ist also genau ein Ergebnis vorhanden.
Die Abarbeitung des Filters geschieht bis zu seinem Ende oder wenn irgendeine Regel mit einem "=" zutrifft. Dann wird die Abarbeitung in dieser Zeile beendet. Auch weitere Sektionen werden nicht mehr verarbeitet. Was mit der Mail geschehen soll, hängt vom Zustand des Flags zu diesem Zeitpunkt ab.  
Das Ergebnis nach der Abarbeitung des Filters ist also eine von drei Möglichkeiten:
1. Die Mail wird geladen.
2. Die Mail wird ignoriert.
3. Die Mail wird gelöscht.
 
Nur wenn die Mail geladen wird, braucht der Hamster noch ein zweites Ergebnis, nämlich die Empfängerliste.


Wer bekommt die Mail? (Empfängerliste)

nach oben
default adddefault addaccounts add set del postto
Wenn die Abarbeitung des Mailfilters beginnt, dann ist die Empfängerliste leer.
Durch verschiedene Befehle kann diese Empfängerliste gefüllt werden.
Nur wenn am Ende des Mailfilters die Empfängerliste immer noch leer ist, dann wird der Defaultuser übernommen.
 
Wenn man also zu dem bisherigen (im Beispiel: Defaultempfänger = AlterUser) einen zusätzlichen Mailempfänger (NeuerUser) hinzufügen will, reicht es nicht,
add(NeuerUser) in den Mailfilter zu schreiben.
Vielmehr muss man beide, den Alten und den Neuen Empfänger, definieren.
Hierfür gibt es dann mehrere Möglichkeiten:
add(AlterUser, NeuerUser) oder add(AlterUser) add(NeuerUser) oder adddefault() add(NeuerUser) oder ....
 
Weitere Befehle die die Empfängerliste beinflussen. set(User) Es wird auch ein (oder mehrere) User in die Empfängerliste gesetzt, jedoch alle bisherigen gelöscht.

del(User) Es kann ein (oder mehrere) Empfänger aus der Liste gelöscht werden.

default(User) Es wird der Defaultuser neu gesetzt.

posttofüllt ebenfalls die Empfängerliste - nur ist der Empfänger nicht mehr ein Mailpostfach, sondern eine Newsgruppe.
Beiaddaccountswird auf lokal vorhandene Mailadressen geprüft und bei Übereinstimmung der (oder mehrere) jeweilige Benutzer in die Empfängerliste gestellt.
 
Bei allen Befehlen für die Empfängerliste kann man auch noch Bedingungen mitgeben. add(user1) To: "user1" add(user3) To: "user1" #Kopie für User3 add(user2) To: "user2"


Besonderheiten bei Any-Recipient und Any-Sender

nach oben
Bei diesen beiden Befehlen handelt es sich um Gruppenfelder und es gibt oft Missverständnisse.
 
Man muss bei der Anwendung wissen, dass diese Befehle die jeweiligen Headerzeilen einzeln abfragen. Wenn dann bei einer Zeile die Bedingung erfüllt ist, dann ist sie für die Filterzeile erfüllt.
Unter dieser Beachtung ergibt sich, dass die negative Abfrage in der Regel nicht funktionieren kann.
Beispiel: ignore Any-Recipient: "@domain" -"myuser@domain" Ziel: Alle Mails mit Empfänger an "domain" außer mit meiner Adresse sollen ignoriert werden.
Das Ergebnis wird wohl in den allermeisten Fällen sein, dass alle Mails an "domain", auch die mit "myuser", ignoriert werden.
Bei der Abfrage müsste in allen vorhandenen Headerzeilen "To:", "Apparently-To:", "CC:", "BCC:", "Envelope-To:" und "X-Envelope-To:" die Adresse "mydomain" enthalten sein, damit der Filter wie gewünscht funktioniert.
Der Hamster prüft intern z.B. jedoch ignore To: "@domain" -"myuser@domain" ignore CC: "@domain" -"myuser@domain" ignore Envelope-To: "@domain" -"myuser@domain" ignore X-Envelope-To: "@domain" -"myuser@domain" D.h. wenn nur eine dieser Zeilen zutrifft, wird die Mail ignoriert.
 
Das Gleiche trifft auf Any-Sender für die Headerzeilen "From:", "Apparently-From:", "Sender:", "Reply-To:", "X-Sender:", "Envelope-From:" und "X-Envelope-From:" zu.
 
Eine weitere Besonderheit des Gruppenfeldes ist, dass es nicht als weitere zusätzliche Abfrage in Verbindung mit dem @ benutzt werden darf. Ein Konstrukt ignore To: "my@hotmail" +@Any-Sender:"my@hotmail" ist laut Syntax nicht erlaubt.
 
Für die Abfrage aller Headerzeilen auf einen Rutsch gibt es in der aktuellen Betaversion neue Befehle: V2.0.4.0 - Neu: Mailfilter: - Pseudoheader "Age:" analog zum Newsfilter verfügbar. {TGL} - Pseudoheader "All-Senders" prüft nicht alle Senderfelder einzeln, son- dern - mit Zeilenvorschub (#13#10) getrennt - auf einmal, somit kann man auch mit Negationen sinnvoll arbeiten. {TGL} - Pseudoheader "All-Recipients" prüft nicht alle Empfängerfelder einzeln, son- dern - mit Zeilenvorschub (#13#10) getrennt - auf einmal, somit kann man auch mit Negationen sinnvoll arbeiten. {TGL}


Notify

nach oben
notify notifyoff Der Notify-Befehl hat seine Bedeutung im Zusammenhang mit ignore und kill.
Es handelt sich hierbei ebenfalls um ein Flag, welches am Ende der Abarbeitung des Mailfilters (also am Ende des Filters oder bei einer zutreffenden "=" Zeile) ausgewertet wird.
Wenn das Flag gesetzt ist, wird bei einem ignore oder kill für jeden Empfänger der Notify-Liste eine Informationsmail generiert.
notify() # Defaultuser bekommt die Notify notify(user1) =ignore() Bedingung1 notify(user2) # wenn Bedingung1 zutrifft, bekommt user1 die notify, sonnst user2 =ignore() Bedingung2 notify(user1,user3) # die Notify-Info wird für zwei User erzeugt ignore() Bedingung
 
Um das Flag zu löschen, gibt es den Befehl notifyoff.
 
Die Befehle notify und notifyoff können jeweils noch mit einer Bedingung verknüpft werden. notify(admin) Bytes: %>20000


Log

nach oben
 
ab BETA V2.0.2.2
log logoff Bei dem Befehl Log ist es ähnlich wie beim Notify.
Hier wird bei ignore oder kill jedoch keine Infomail erzeugt, sondern ein Eintrag im Killfile-Protokoll.
Dieses Protokoll ermöglicht auch das Nachladen von ignorierten Mails.
Zu beachten ist, dass es sich hierbei nicht wie bei den Newsartikeln um eine Datei handelt. Die Informationen sind in der Mail-History abgelegt.
 
Ich selber nutze den Log-Befehl nicht. Hierfür gibt es mindestens zwei entscheidende Gründe.
Zum einem müsste ich dazu am Hamsterrechner sitzen. Der läuft aber ohne Benutzereingriff so vor sich hin. Für Scripte gibt es ja HamRC.
Zum anderen bin ich auch der Meinung, dass nicht alle möglichen Funktionalitäten in den Hamster hineingehören. Zum Nachladen gibt es zum einen ein Script MailMan von Wolfgang Jäth und zum anderen das von mir genutzte Programm Loki.
Dieses Programm erfüllt hervorragend die Nachladefunktionalitäten über den Mailfilter, und kann auch von einem anderen Rechner aus benutzt werden.


Scoren

nach oben
 
BETA
addscore(scorewert) setscore(Sscorewert) Der aktuelle Beta-Hamster kann jetzt auch wie bei den News Artikel scoren.
D.h. ich kann an Hand einer Bedingung positive und negative Punkte vergeben und am Schluss entscheiden, was ich je nach Punktestand mit der Mail mache.
Dadurch ist eine weitaus feinere Abstimmung zwischen load - ignore - kill möglich. Und außerdem kann ich auf die "=" Zeilen weitgehend verzichten und brauche mich somit nicht mehr um die Reihenfolge von Filterzeilen kümmern.

Der Scorewert kann positiv und negativ sein. Somit habe ich die Möglichkeit, auf die Höhe des Scorewertes entsprechend zu reagieren.
Man kann z.B. definieren, dass bei bestimmten Filterkriterien die Mail ignoriert wird, aber bei einer bestimmten Anzahl solcher Kriterien die Mail gelöscht wird. Erreichen tut man dies, indem die einzelnen Filterkriterien addiert werden. addscore(+10) ~Subject: "Hamster" addscore(-10) From: "Spammer" addscore(-10) To: {(.*@.*\..*){4,}} # ab 4 Adressen im To addscore(-10) ~Subject: {\s{15,}} # 15 Leerzeichen ignore Score: %<0 kill Score: %<20 Wenn also alle drei negativen Bedingungen und nicht die positive zutreffen, wird die Mail gelöscht, bei nur einer oder zwei negativen nur ignoriert. Die positive Bedingung kann eine negative aufheben.


Persönliche Tipps

nach oben
Mailfilter der E-Mail-Aanbieter nutzen. Ich leite z.B. alle Mails über mein GMX-Postfach.
Möglichst allgemeine Filter einsetzen, die viel erschlagen.
Lieber mal ein ignore mehr und dann nachladen als umgekert.
Positivliste gezielt einsetzen.  
Bei Bedingungen, wenn möglich, auf RegEx verzichten, also z.B. ignore() ~Subject: "hamster" statt ignore ~Subject: {hamster}
 


Aufbau meines Mailfiters

nach oben
Hier möchte ich beispielhaft aufzeigen, wie mein Mailfilter aufgebaut ist.
Für die einzelnen Abschnitte load/ignore/kill gibt es reichlich Beispiele im Netz. Hier muss auch jeder selber seine persönlichen Filterkriterien finden.
Teilweise ist die Reihenfolge noch aus den Zeiten ohne Score bestimmt.
Bitte auch die Beispiele nicht ungeprüft übernehmen. Der Filter so wie hier angegeben läuft natürlich nur mit dem Beta-Hamster. Den wiederum kann ich ohne Probleme empfehlen. [*] # Zuerst einmal entscheiden, wohin die Mail gehen soll (Postfach) ############################################ #Postfächer setzen set(user1) Any-Recipient: "user1@" set(user2) Any-Recipient: "user2@" set(user3) Any-Recipient: "user3@" set(pgp) To: "pgp@" set(listen) Reply-To: "ehamsternet@" set(listen) Reply-To: "hamster-sourcen@" set(listen) Reply-To: "hamstertest@" ############################################################################### # Kopien erzeugen add(user1) To: "kino@example.com" add(user3) To: "kino@example.com" add(user1) Any-Recipient: "an_alle" add(user2) Any-Recipient: "an_alle" add(user3) Any-Recipient: "an_alle" ############################################################################### # Nachladen/löschen mit LOKI #LOKI_TEMP# =kill() message-id: "<20040213191017.D521A499B29@kunden.netmarkt24.info>" #LOKI_CLEAR# =load() message-id: "<2ecfe374b06d0a5fef1f9ee1e95c3e95@195.125.111.8>" #LOKI_CLEAR# #LOKI_TEMP_ENDE# # Für bstimmte POP-Konten mit Filter "nurnotify" arbeiten # Mails in diesen Fächern sollen immer ignoriert werden, außer bestimmte Absender # Diese Absender haben einen Scorewert von +800, alles andere -200 [nurnotify] addscore(1000) From: "IhreRechnung@compuserve.de" addscore(1000) From: "rechnung@freenet-ag.de" addscore(-200) Bytes: %>2 [*] ############################################################################### # Notbremse, kann nur durch positiven Scorewert übergangen werden # erschlägt auch die zu großen NL beim postto! # Könnte auch im Hamster direkt eingestellt werden, mir war es aber hier lieber ignore() Bytes: %>250000 ############################################################################### #diese Mails immer in Newsgruppen leiten (load durch das =) =postto(local.nl.gmx) To: "members@gmx.net" =postto(local.nl.gmx) To: "mailings@gmx.net" =postto(local.php.classes) From: "@phpclasses" =postto(local.nl.pcwelt) From: "newsletter@listsrv.idginteractive.de" _ "news@pcwelt.de" "news@tecchannel.de" =postto(local.nl.deka) From: "abo@deka.de" =postto(local.nl.web.de) From: "fminfos@web.de" # newsletter ############################################ # hier nur genau bekannte Adressen # Diese erhalten jeweils einen Scorewert von 1000 bis 4500 # Wenn man unbedingt etwas laden möchte, so wie vorher mit dem "=", # dann muss der Wert nur entsprechend hoch sein. # Das Folgende sieht aus wie ein Kommentar, ist aber keiner, # siehe die Syntax für den Include-Befehl. #!include MailFilt_loadlist.txt ############################################ # immer killen, bekannte Spammer, Viren # addscore ab -30000 #!include MailFilt_hardkill.txt ############################################ # Bedingungen mit Score -5000, können durch "MailFilt_loadlist" zum ignore werden #!include MailFilt_softkill.txt ############################################ # nur ignorieren # Bedingungen Score -500, -1000, -1500, können # durch mehrfache Bedingungen zum kill werden #!include MailFilt_ignore.txt ############################################ # laden / ignorieren / killen load Score: %>0 # positiv immer laden (kann auch entfallen) notify(reply,loki) # loki zum Nachladen, Reply für Auswertung =ignore Score: %<0 # -1 bis -4999 notify(nonotify) # ab -5000 kill notify nur in Newsgruppe kill Score: %<=-5000

Ein paar wichtige Filter aus meinen includierten Files
MailFilt_ignore.txt addscore(-500) Content-Type: "text/html" addscore(-500) Content-Type: "multipart" addscore(-500) TOP: "html" "" -@Content-Type:"text/plain" addscore(-500) From: * -{\.(de|net|com|org|at|ch)([^a-z0-9_\-\.]|$)} addscore(-500) Subject: "$" addscore(-500) X-RBL-Warning: "*" addscore(-500) *X-Warning: "*" addscore(-500) ~Subject: {\s{10,}} # 10 Leerzeichen addscore(-500) From: $To$ +@To:{.+} # From = To addscore(-1000) To: {(.*@.*\..*){4,}} # ab 4 Adressen im To addscore(-1000) CC: {(.*@.*\..*){3,}} # ab 3 Adressen im cc addscore(-1500) Any-Recipient: "webmaster@" # Standardadresse bei Puretec addscore(-1500) Any-Recipient: {(client|news|server)\.heimsoft\.com} # MID
MailFilt_softkill.txt addscore(-5000) *Received: {.\.(ac|com|re|ne|edu|net|or|co|hl)_ \.(tw|jp|cn|es|gr|kr|in)} addscore(-5000) Any-Sender: {.\.(ac|com|re|ne|edu|net|or|co|hl)_ \.(tw|jp|cn|es|gr|kr|in)} addscore(-5500) Any-Recipient: "info@" "sales@" # benutze ich nicht
MailFilt_hardkill.txt addscore(-50000) Any-Recipient: {\w{6,8}\.\w{6,8}\.[1-9]@heimweb\.de} #MID addscore(-35000) To: {(corporation|commercial)\b *(customer|partner|user)\b} addscore(-35000) To: {(net|network|inet|mail|email|internet) _ *(recipient|user|client|receiver)} addscore(-35000) To: {(user|recipient)@smtp} addscore(-50000) ~Subject: {(new|newest|last|latest|current)\b _ *(internet|net|microsoft|security|critical|network){0,} _ *(internet|net|microsoft|security|critical|network){0,} _ *(update|patch|upgrade|pack)} addscore(-50000) ~Subject: "internet patch" "Error Announcement" # alte Usnetadresse addscore(-50000) ~Any-Recipient: "onlynews@heimweb.de" -@Subject:{^Re:|^AW:} addscore(-50000) Bytes: %>147000 +@Bytes:%<148000 #swen Das sind fast alle meine Filter. Es gibt noch ein paar konkrete Adressen, auf die ich filtere, aber die Masse wird mit obigen Einstellungen erschlagen.
 
Seit Anfang 2004 führe ich auch eine Statistik über load/ignore/kill.
Stand 14.2. (ohne NL, die über postto umgeleitet werden):
Von 856 Mails sind 326 im GMX-Spamfilter hängen geblieben (keine fälschlich negativen dabei).
69 habe ich ignoriert und davon 26 nachgeladen.
187 Mails wurden gekillt, keine fälschlich negativen dabei.
Von den 274 sofort geladenen sind 4 Spam-Mails durch den Filter gekommen.


Links zum Mailfilter

nach oben

allgemeines zu Mailfiltern

Gute Übersicht und viele Erläuterungen zum Mailfilter, RegEx und Beispiele
http://www.daut-fenster.de/hamster/mailfilter.htm
 
Viele Beispiele
http://www.earlydream.de/links/hamster/hamster.htm
 
Eine der ersten Anlaufpunkte für den Hamster, erläutert auch den Mailfilter
http://hamster.arcornews.de/micha/mailfilt.htm
 
Vergleich zwichen News und Mailfilter. Hier findet sich auch eine Hochrechnung zum Traffic, welche benutzt werden kann, um zu entscheiden, ob sich ein Filtern überhaupt lohnt.
http://www.x501.de/hamster/mailfilter.htm
 
Auf der Seite von Can Filip Sakrak findet man auch einen Generator für Filterzeilen.
http://spamabwehr.sakrak.net/spam-filter/
Das Helpfile als HTML
Teilweise mit Ergänzungen
 
http://home.wtal.de/fritzwww/hamster/mailfilt.html
http://home.hetnet.nl/~ojb-hamster/SrcDe20021222/DeWeb/html/file3ygg.htm
Sonstige Hamsterlinks
Teilweise mit Bezug zum Mailfilter
 
http://www.alariel.de/spaminfo/?act=mailflt
http://home.nexgo.de/whdk/hamster/index.html
http://www.henrik-k-hansen.dk/Korrnewssiden.html
http://www.aldibaran.de/wilfried/hamster/index.html

Home | Hilfe | Feedback | Impressum | Gästebuch | Suche | Seitmap | Werbung | Mail
28.10.2013
Copyright © 1998 - 2010 HeimSoft.