Page 1 of 1

Spamassasin - Wie schnell lernt er...?!

Posted: 2006-09-25 12:59
by tjabo
Hallo,

wie schnell lernt eigentlich der Spamassasin, sodass er eine gute Trefferquote hat, gibt es möglichkeiten unter confixx 3, Postfix und spamassasin, dieses lernen zu beschleunigen, oder gibt es gewisse tricks um spam noch besser abzufangen als einfach nur zu warten...


danke

mfg
tjabo

Re: Spamassasin - Wie schnell lernt er...?!

Posted: 2006-09-25 13:18
by suntzu
Hi,

ich habe irgendwas von je 200 SPAM und HAM im Kopf.

Wenn das Lernen lange dauert, dann kann es auch nicht so viel Spam sein, wenn es schnell geht, dann ist der Schlimmste Teil des Lernens schnell vorbei.

Gruß,
Dominik

Re: Spamassasin - Wie schnell lernt er...?!

Posted: 2006-09-25 14:10
by tjabo
perfekt danke, wie kann ich es denn einstellen, dass es die emails in einen eigenen ordner verschiebt? gibts da ne möglichkeit, sodass die dann nach einer woche oder 2 deleted werden...

also ich denke es sind an die 500 spammails pro tag, also sollte es nicht so lange dauern :)

Re: Spamassasin - Wie schnell lernt er...?!

Posted: 2006-09-25 16:04
by daemotron
tjabo wrote:wie kann ich es denn einstellen, dass es die emails in einen eigenen ordner verschiebt? gibts da ne möglichkeit, sodass die dann nach einer woche oder 2 deleted werden...
SpamAssassin verändert nur den Mail-Header, wrappt den Mail-Body und schreibt ggf. das Subject um. Mails anhand bestimmter Kennzeichen verschieben oder löschen kann procmail

HTH

Re: Spamassasin - Wie schnell lernt er...?!

Posted: 2006-09-25 16:51
by elias5000
Statt mit Procmail sollte man sich lieber mit Sieve beschäftigen. Diese Scriptsprache zum Mailhandling ist in vielen IMAP-Servern enthalten.

Der News-Flash auf der Procmail ist übrigens von 2001, was nicht gerade auf eine lebendige Maintenance schließen lässt...

Re: Spamassasin - Wie schnell lernt er...?!

Posted: 2006-09-25 19:34
by tjabo
procmail ist drauf, ein imap client noch nicht... gibts irgendwo ein gutes tutorial um procmail so zu konfigurieren, dass es die mails in einen getrennten ordner schiebt und eine zusammenfassende email sendet oder brauche ich dazu einen imapd courier ? (wenn jemand auch dazu ein passendes confixx tutorial hätte, wäre super /oder ne funktionierende RPM)

mfg
tj

Re: Spamassasin - Wie schnell lernt er...?!

Posted: 2006-09-25 21:17
by zg0re

Re: Spamassasin - Wie schnell lernt er...?!

Posted: 2006-09-26 13:24
by tjabo
ach ja, wie sehe ich denn eigentlich ob der spamfilter lernt oder nicht? braucht es dazu ein eigenes programm?! danke

Re: Spamassasin - Wie schnell lernt er...?!

Posted: 2006-09-26 14:40
by zg0re
sa-learn --dbpath /var/amavis/.spamassassin/bayes --dump magic

Wenn du sowas in der Art:

0.000 0 3 0 non-token data: bayes db version
0.000 0 951 0 non-token data: nspam
0.000 0 2457 0 non-token data: nham
0.000 0 134902 0 non-token data: ntokens
0.000 0 1152988675 0 non-token data: oldest atime
0.000 0 1159213224 0 non-token data: newest atime
0.000 0 0 0 non-token data: last journal sync atime
0.000 0 1158533884 0 non-token data: last expiry atime
0.000 0 5529600 0 non-token data: last expire atime delta
0.000 0 30952 0 non-token data: last expire reduction count

siehst, heisst es, dass er lernt.

Re: Spamassasin - Wie schnell lernt er...?!

Posted: 2006-09-26 18:46
by tjabo
0.000 0 2 0 non-token data: bayes db version
0.000 0 0 0 non-token data: nspam
0.000 0 0 0 non-token data: nham
0.000 0 0 0 non-token data: ntokens
0.000 0 0 0 non-token data: oldest atime
0.000 0 0 0 non-token data: newest atime
0.000 0 0 0 non-token data: last journal sync atime
0.000 0 0 0 non-token data: last expiry atime
0.000 0 0 0 non-token data: last expire atime delta
0.000 0 0 0 non-token data: last expire reduction count habe das erhalten...

also scheint da nichts richtig zu laufen...
wie kann ich es aktivieren?
danke

Re: Spamassasin - Wie schnell lernt er...?!

Posted: 2006-09-26 19:11
by zg0re
Du musst das Programm sa-learn ausführen mit spam bzw. hammails als Input. Ich selbst hab ein kleines script, das ich per cronjob ausführe:

Code: Select all

#!/bin/bash -e

SADIR=/var/amavis/.spamassassin
DBPATH=/var/amavis/.spamassassin/bayes
SPAMFOLDERS="
/var/vmail/*/*[^postmaster]*/.spam/cur 
"
HAMFOLDERS="
/var/vmail/*/*[^postmaster]*/cur
"

for spamfolder in $SPAMFOLDERS ; do 
echo Learning spam from $spamfolder ; 
nice sa-learn --spam --showdots --dbpath $DBPATH $spamfolder
done

for hamfolder in $HAMFOLDERS ; do 
echo Learning ham from $hamfolder ; 
nice sa-learn --ham --showdots --dbpath $DBPATH $hamfolder
done
Das script nimmt sich also alle mails aus den Spamordnern der User und lernt sa damit an. Danach werden die Mails aus dem Hauptordner des Posteingangs genommen. Hierbei ist es aber wichtig, dass die User darauf achten, dass keine Spammails im Posteingangshauptordner rumliegen. Alternativ kann man auch ein separates Verzeichnis für ham einrichten, was aber für den User auch recht aufwändig ist, da er dann die normalen Mails reinkopieren müsste. Naja, egal, so funktioniert das bei mir recht gut.

Hab das extra auf Ordnerbasis eingerichtet anstatt es auf Weiterleitungsbasis zu machen (User bekommt ne spammail, und leitet sie an spam@domain.tld weiter), da beim weiterleiten die ganzen Header verloren gehen und damit das Ergebnis verfälscht würde.

Allgemein hab ich aber mit dspam statt oder mit spamassassin zusammen bessere Erfahrungen gemacht. Den fütterst du einmal mit nem Hamcorpus (sprich paar hundert hammails) und die nicht erkannten Spams werden vom user dann wie oben beschrieben weitergeleitet. Hier geht das, da dspam eine Datenbank pflegt, in welcher die Originalen Mails verwahrt werden. Er hängt dann beim ausliefern an die Mail ne Signatur an, und wenn die Mail nun weitergeleitet wird, kann sich dspam anhand dieser Signatur die Originalmail aus der DB holen.

Auf meinem Hauptserver läuft dspam zusammen mit Spamassassin. Beide haben die gleiche Anzahl mails gesehen, und dspam ist eindeutig zuverlässiger. SA lass ich eigentlich nur noch laufen, da er dank dem FuzzyOCR Plugin auch Spam in Mails entdeckt, die nur Bilder enthalten.

Re: Spamassasin - Wie schnell lernt er...?!

Posted: 2006-09-26 19:24
by tjabo
danke, aber ich habe momentan noch viel zu viele spammails im posteingang, kann ich dem learn auch mal nur spam geben? oder geht das nicht?
welche funktion hat denn (--showdots)?

kann ich auch per procmail die mails in einen spamordner schieben?
also sodass ich die spam 1 mails in einen ordner schiebe...?!

gibts dann ne möglichkeit die alle 14 tage zu löschen? denn per cronjob geht das ja nicht, da dann einfach alle 14 tage alles weg geht, und nicht das 14tage alte zeug... danke

Re: Spamassasin - Wie schnell lernt er...?!

Posted: 2006-09-28 10:57
by tjabo
habe nun noch ne frage, habe jetzt erstmal 500 spam mails einlernen lassen, ham mails habe ich noch nicht 200,
wie sehe ich dann aber ob der bayesfilter arbeitet?
gibts da ne möglichkeit?! wohin werden die mails dann verschoben, welche erkannt werden? oder was passiert mit diesen, kann ich da irgendwo regeln festlegen?

danke...
ach ja und in meinem mailheader steht autelearn=no

danke fuer eure hilfe.

Re: Spamassasin - Wie schnell lernt er...?!

Posted: 2006-09-28 11:43
by daemotron
tjabo wrote:gibts dann ne möglichkeit die alle 14 tage zu löschen? denn per cronjob geht das ja nicht, da dann einfach alle 14 tage alles weg geht, und nicht das 14tage alte zeug... danke
Das geht durchaus per Cron-Job. Du darfst eben nicht stumpf alle 14 Tage alles löschen, sondern musst täglich mit find ermitteln, welche Dateien 14 Tage alt sind und diese dann löschen:

Code: Select all

find /pfad/zu/mails -mtime +14 -print | xargs rm -f

Re: Spamassasin - Wie schnell lernt er...?!

Posted: 2006-09-28 12:11
by tjabo
jfreund wrote:
tjabo wrote:gibts dann ne möglichkeit die alle 14 tage zu löschen? denn per cronjob geht das ja nicht, da dann einfach alle 14 tage alles weg geht, und nicht das 14tage alte zeug... danke
Das geht durchaus per Cron-Job. Du darfst eben nicht stumpf alle 14 Tage alles löschen, sondern musst täglich mit find ermitteln, welche Dateien 14 Tage alt sind und diese dann löschen:

Code: Select all

find /pfad/zu/mails -mtime +14 -print | xargs rm -f
es handelt sich aber um die daten... also die mails sind bei mir in einer mailbox gespeichert, nicht als einzelne dateien, ich denke das ist das problem?! geht das irgendwie...
danke

Re: Spamassasin - Wie schnell lernt er...?!

Posted: 2006-09-28 12:17
by daemotron
Das mbox-Format ist pfui - zumindest, wenn Du die Mails filtern, verhackstücken, braten und pürieren möchtest. Tja, dann dürfte es Dir auch schwerfallen, mit Ordnern zu hantieren und Mails automatisch irgendwo abzulegen. Von inkrementellen Backups mal ganz zu schweigen... :roll:

Ich würde auf's maildir-Format wechseln - für Mail-Gateways mit mehreren sequenziellen Filterfunktionen ist das deutlich besser geeignet... und zur Not kann man auch mal mit nem Shell-Skript beigehen.

Tutorials zum Wechsel von mbox auf maildir gibt's massenhaft - einfach mal bei google schauen, dann kannst Du auch den Aufwand dafür abschätzen.

Re: Spamassasin - Wie schnell lernt er...?!

Posted: 2006-09-28 12:25
by tjabo
jfreund wrote:Das mbox-Format ist pfui - zumindest, wenn Du die Mails filtern, verhackstücken, braten und pürieren möchtest. Tja, dann dürfte es Dir auch schwerfallen, mit Ordnern zu hantieren und Mails automatisch irgendwo abzulegen. Von inkrementellen Backups mal ganz zu schweigen... :roll:

Ich würde auf's maildir-Format wechseln - für Mail-Gateways mit mehreren sequenziellen Filterfunktionen ist das deutlich besser geeignet... und zur Not kann man auch mal mit nem Shell-Skript beigehen.

Tutorials zum Wechsel von mbox auf maildir gibt's massenhaft - einfach mal bei google schauen, dann kannst Du auch den Aufwand dafür abschätzen.
ich frage mich gerade ob sich der aufwand überhaupt lohnt und ob mir confixx (v.3.09) nicht probleme macht...?!

Re: Spamassasin - Wie schnell lernt er...?!

Posted: 2006-09-28 13:28
by tjabo
wie kann ich denn per procmailrc alle emails kopieren, die spamstatus auf no haben, also die die unter den 5.0 punkten liegen, und wie kann ich alle emails kopieren die total 0 spampunkte haben? danke

mfg
tjabo

Re: Spamassasin - Wie schnell lernt er...?!

Posted: 2006-09-28 14:53
by daemotron
tjabo wrote:ich frage mich gerade ob sich der aufwand überhaupt lohnt und ob mir confixx (v.3.09) nicht probleme macht...?!
Sollte ansich nicht - auf die Postfächer selbst greifen ja nur der MDA (z. B. Postfix) und der MRA (z. B. Courier) zu, alle anderen Programme nutzen einen der beiden für den Zugriff.

Probleme könnte es nur geben, wenn der von Dir eingesetzte MRA nicht mit dem maildir-Format zurecht kommt. Postfix tut es jedenfalls...

Re: Spamassasin - Wie schnell lernt er...?!

Posted: 2006-09-28 19:37
by tjabo
postfix ist drauf...

aber ich habe nun ein anderes problem als die maildir, oder mailbox, das läuft ja momentan...

nur habe ich nun eine regel erstellt in procmail:

Code: Select all

:0:
* ^X-Spam-Level: ***************
/var/spool/mail/spam

:0:
* ^X-Spam-Status: Yes
/var/spool/mail/spam


:0 c
* ^X-Spam-Status: No
/var/spool/mail/ham
soweit so gut... diese funktionieren jetzt aber nicht wirklich...
da der erste user für den es dies angewandt hat, war user web2p2, jetzt werden nur die mails von web2p2 nach ham kopiert und nach spam verschobene, da er der besitzer dieses ordners ist. ich möchte aber alle mails von allen usern auf dem server, wenn es sich um spam handelt verschieben, dass ich es mit sa-learn lernen kann und alle ham mails kopieren, sodass ich auch möglich viele von diesen (nach einer manuellen aussortierung) einlernen kann, kann mir jemand sagen, wie ich diese regeln user unabhängig erstellen kann? sodass alle spammails in der mbox (spam) landen und alle ham, in der ham....

danke.
lg
tjabo

Re: Spamassasin - Wie schnell lernt er...?!

Posted: 2006-09-28 22:28
by daemotron
BTW: Wenn Du Mails einfach kopierst (egal zu welchem Zweck) begibst Du Dich rechtlich auf sehr dünnes Eis... Wenn auf dem Server nur Deine eigenen E-Mail-Konten rumfuhrwerken, kannst Du so vorgehen. Aber wenn Kunden drauf sind... autsch.

Re: Spamassasin - Wie schnell lernt er...?!

Posted: 2006-09-29 10:40
by tjabo
also sind zu 100% eigene mails die da ankommen, von dem her ist das nicht das problem...

nur müsste ich möglichst viel ham vor dem abrufen herbekommen und das aus allen mailboxen, um sa-learn möglich schnell und gut anzulernen...

hat jemand ahnung wie ich mit procmail alle mails von allen usern die einem best. kriterium entsprechen in die selbe mailbox bekomme=?

danke

Re: Spamassasin - Wie schnell lernt er...?!

Posted: 2006-09-29 13:31
by tjabo
hmm habe nun noch ein problem, wo kann ich denn userspezifisch die spammails verschieben, also in eine mailbox, wo dann der spam drinnen ist`? ist die mit mailboxen überhaupt möglich? denn seid die bayes aktiv sind, läuft das ganze wunderbar, bis jetzt eine super spamerkennung ;) nun möchte ich aber den spam verschieben, da ich den wirklich nicht brauche, aber dies klappt nicht wirklich, wo kann ich denn dies pro user angeben, dass es für jeden user eine eigene mailbox zum bsp: web4p1-spam erstellt, die dann alle 14 tage geleert wird? oder gibt es sonst noch möglichkeiten?! mit procmail das ganze zu verschieben? danke 4 help