bayes pro virtual user / amavis-new / spamassassin / SPAM/HAM

Postfix, QMail, Sendmail, Dovecot, Cyrus, Courier, Anti-Spam
knifegunaxe
Posts: 61
Joined: 2006-09-05 08:47

bayes pro virtual user / amavis-new / spamassassin / SPAM/HAM

Post by knifegunaxe » 2007-08-21 22:40

Hallo!

Ich habe folgende Konstellation auf einem Debian Etch Server:

||/ Name Version
+++-==================================-==================================
ii amavisd-new 2.4.2-6.1
ii dovecot-imapd 1.0.rc15-2
ii mysql-common 5.0.32-7etch1
ii postfix 2.3.8-2+b1
ii spamassassin 3.1.7-2

Wie kann ich es schaffen, meinen virtuellen Usern (MySQL Datenbank) eine eigene Bayes Datenbank zu verschaffen? Problematisch ist wohl der Aufruf von Spamassassin durch amavis (kein ~/ möglich), und dass die User nur viruell sind. Im Netz konnte ich leider keinen Lösungsansatz finden, und ich bin mit meinem Latein am Ende...

Szenario:
- keine globale Bayes-DB (bzw. ungenutzt)
- pro user eine Datenbank entweder in MySQL oder im Home-Ordner (/home/vmail/$domain/$user/.bayes_db oder ähnlich)
- pro User einen SPAM Ordner in den von SA erkannte Spam wandert.
- pro User einen HAM Ordner, in den die fälschlich erkannten Spams (vom User) gezogen werden. Diese Ordner soll von einem Chronjob (wüßte nicht wie sonst) per /home/vmail/*/*/.INBOX.ham geparst werden, als HAM markiert, (übergabe an sa-learn) und wieder in /home/vmail/$domain/$user/.INBOX geschoben werden. (So weiß der User das seine Mail "ge-HAMt" wurde, und hat sie direkt wieder im Posteingang.
- Eine Spammail die nicht erkannt wird, soll in den SPAM Ordner geschoben werden. Dieser wird ebenfalls per User via Cronjob gescannt, und Bayes lernt SPAM... (Verschieben nicht nötig, da eh Spam...)

Die ganze Konstelation kommt mir einzigartig vor, da ich wie gesagt im Netz so etwas niergends gefunden habe.
Wichtig momentan ist aber, dass ich überhaupt mal das per-virtual-user-bayes hinbekomme, alles andere (erstmal) nur zur Verbildlichung :)

Danke!

Daniel

dodolin
RSAC
Posts: 4009
Joined: 2003-01-21 01:59
Location: Sinsheim/Karlsruhe

Re: bayes pro virtual user / amavis-new / spamassassin / SPAM/HAM

Post by dodolin » 2007-08-21 23:57

http://wiki.apache.org/spamassassin/Bet ... eadmeBayes
hast du schon gefunden, oder?

Dies und diverse andere Seiten habe ich z.B. mit
http://www.google.de/search?q=spamassas ... r+user+sql
gefunden.

HTH.

knifegunaxe
Posts: 61
Joined: 2006-09-05 08:47

Re: bayes pro virtual user / amavis-new / spamassassin / SPAM/HAM

Post by knifegunaxe » 2007-08-22 00:02

Danke, werde mir das morgen zu Gemüte führen. Ich versichere dir aber, dass ich intesiv Google verwendent habe, und auch auf deser Seite war. Allerdings konnte ich diese Unterseite bisher noch nicht finden...

Ich werde morgen berichten :) Gute Nacht!

Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

Re: bayes pro virtual user / amavis-new / spamassassin / SPAM/HAM

Post by Roger Wilco » 2007-08-22 00:47

dodolin wrote:http://wiki.apache.org/spamassassin/BetterDocumentation/SqlReadmeBayes
hast du schon gefunden, oder?

Das wird mit amavisd-new AFAIK nicht funktionieren, da der SpamAssassin dort immer über den Amavis-Benutzer aufgerufen wird. Eine Bayes-Datenbank pro Benutzer ist damit nicht möglich.

User avatar
daemotron
Administrator
Administrator
Posts: 2800
Joined: 2004-01-21 17:44

Re: bayes pro virtual user / amavis-new / spamassassin / SPAM/HAM

Post by daemotron » 2007-08-22 09:27

http://www.gentoo.org/doc/en/mailfilter ... #doc_chap9
Dort wird beschrieben, wie Du individuelle Antispam- und -virus-Regeln in MySQL hinterlegen kannst und gleichzeitig die Bayes-Daten pro User ebenfalls in MySQL ablegen kannst. Musst nur emerge durch apt-get ersetzen und 'n bissl auf die Versionen aufpassen :wink:

audio07
Posts: 64
Joined: 2003-12-03 02:32
Location: Mainz

Re: bayes pro virtual user / amavis-new / spamassassin / SPAM/HAM

Post by audio07 » 2007-08-22 12:47

Schau dir mal Maia an. Nutze ich bei meinen Kunden mit rund 300 Mailkonten und funzt richtig gut. Dabei wird amavis durch eine modifizierte Version ausgetauscht. Die User können über eine GUI klassifizierten Spam bestätigen oder auch nachträglich als HAM deklarieren. Das Ganze natürlich auch umgekehrt. Jeder User kann auch die Grenzen definieren, ab wann eine Mail als Spam gilt. Es lassen sich jedoch auch 4 Voreinstellungen treffen mit Werten, die man als Enduser einfach auswählen kann, wenn man sich damit nicht auskennt. Virencheck ist natürlich auch dabei.

dodolin
RSAC
Posts: 4009
Joined: 2003-01-21 01:59
Location: Sinsheim/Karlsruhe

Re: bayes pro virtual user / amavis-new / spamassassin / SPAM/HAM

Post by dodolin » 2007-08-23 00:42

Das wird mit amavisd-new AFAIK nicht funktionieren, da der SpamAssassin dort immer über den Amavis-Benutzer aufgerufen wird. Eine Bayes-Datenbank pro Benutzer ist damit nicht möglich.

Verstehe den Einwand jetzt gerade nicht bzw. ich verstehe nicht, warum das ein Problem sein sollte. Die Lösung im genannten Link basiert ja gerade darauf, dass die Bayes-Daten in der DB abgelegt werden, weil es sich nur um virtuelle User und keine System-User handelt. Ergo könnte SA sowieso nicht unter dem jeweiligen Benutzernamen laufen.

Wenn das Standardsetup noch nicht reicht, kann man ja noch folgende Option verwenden:
In addition to the global configuration directives there is a user
preference:

bayes_sql_override_username someusername

This directive, if used, will override the username used for storing
data in the database. This could be used to group users together to
share bayesian filter data. You can also use this config option to
trick sa-learn to learn data as a specific user.

Was übersehe ich?

Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

Re: bayes pro virtual user / amavis-new / spamassassin / SPAM/HAM

Post by Roger Wilco » 2007-08-23 01:24

Ich hatte das noch so in Erinnerung, aber ich will nicht ausschließen, dass ich mich irre oder dass sich das inzwischen geändert hat.

knifegunaxe
Posts: 61
Joined: 2006-09-05 08:47

Re: bayes pro virtual user / amavis-new / spamassassin / SPAM/HAM

Post by knifegunaxe » 2007-08-23 11:29

dodolin wrote:
Das wird mit amavisd-new AFAIK nicht funktionieren, da der SpamAssassin dort immer über den Amavis-Benutzer aufgerufen wird. Eine Bayes-Datenbank pro Benutzer ist damit nicht möglich.

Verstehe den Einwand jetzt gerade nicht bzw. ich verstehe nicht, warum das ein Problem sein sollte. Die Lösung im genannten Link basiert ja gerade darauf, dass die Bayes-Daten in der DB abgelegt werden, weil es sich nur um virtuelle User und keine System-User handelt. Ergo könnte SA sowieso nicht unter dem jeweiligen Benutzernamen laufen.

Deswegen muss man glaube ich amavis-new beibringen MySQL zuverwenden, (und auch spamassassin). Ich bin gerade dran, und werde berichten...

Danke für die Tips!

knifegunaxe
Posts: 61
Joined: 2006-09-05 08:47

Re: bayes pro virtual user / amavis-new / spamassassin / SPAM/HAM

Post by knifegunaxe » 2007-08-26 19:40

Also, ich konnte nicht rausfinden, wie das Gentoo Howto funktionieren soll, auch weil ich die Debian Pakete verwenden. Werde mir mal das Maja anschauen...

Was mir bei der ganzen Geschichte komisch vorkommt: Wie soll ich eine per-user-bayes-datenbank füttern, wenn ich sa-learn nicht selbst aufrufen kann? (Wegen virtuellen Usern...) Das Gentoo HowTo liefert hier auch keine Beispiele...

EDIT: Habe mich nun gegen das Ganze entschieden, und führe eine globale Bayes Datenbank. Schade eigentlich, aber es gibt scheinbar keine vernünftige, saubere Lösung...

dodolin
RSAC
Posts: 4009
Joined: 2003-01-21 01:59
Location: Sinsheim/Karlsruhe

Re: bayes pro virtual user / amavis-new / spamassassin / SPAM/HAM

Post by dodolin » 2007-08-27 02:04

Wie soll ich eine per-user-bayes-datenbank füttern, wenn ich sa-learn nicht selbst aufrufen kann? (Wegen virtuellen Usern...) Das Gentoo HowTo liefert hier auch keine Beispiele...

Nun, gerau darum halte ich nichts von Howtos, sondern schaue lieber direkt in der Originaldoku nach. Die man-page von sa-learn listet dazu den Parameter -u username auf. Oder umgekehrt, der SA Parameter bayes_sql_override_username, dessen Beschreibung ich bereits etwas weiter oben zitiert hatte.