Spamassassin 2.64 - Autolearn Problem

tjabo

New Member
Hallo,

ich habe ein Problem, mein Spamassassin macht kein autolearn, in jeder email steht autolearn=no
Woran kann dies liegen?

hier die conf:
# How many hits before a message is considered spam.
required_hits 5.0

# Whether to change the subject of suspected spam
rewrite_subject 1

# Text to prepend to subject if rewrite_subject is used
subject_tag *****SPAM*****

# Encapsulate spam in an attachment
report_safe 1

# Use terse version of the spam report
use_terse_report 0

# Enable the Bayes system
use_bayes 1
bayes_path /var/spool
bayes_file_mode 777
bayes_auto_learn 1
bayes_auto_learn_threshold_spam 6.5

# Enable Bayes auto-learning
auto_learn 1

# Enable or disable network checks
skip_rbl_checks 0
use_razor2 1
use_dcc 1
use_pyzor 1

# Mail using languages used in these country codes will not be marked
# as being possibly spam in a foreign language.
ok_languages all

# Mail using locales used in these country codes will not be marked
# as being possibly spam in a foreign language.
ok_locales all

sa-learn --dump magic gibt folgendes aus:
sa-learn --dump magic
0.000 0 2 0 non-token data: bayes db version
0.000 0 10635 0 non-token data: nspam
0.000 0 907 0 non-token data: nham
0.000 0 74683 0 non-token data: ntokens
0.000 0 1177049360 0 non-token data: oldest atime
0.000 0 1200323627 0 non-token data: newest atime
0.000 0 0 0 non-token data: last journal sync atime
0.000 0 1178179062 0 non-token data: last expiry atime
0.000 0 43200 0 non-token data: last expire atime delta
0.000 0 190597 0 non-token data: last expire reduction count

und ein emailheader sieht in etwa so aus...
X-Spam-Level:
X-Spam-Status: No, hits=-4.9 required=5.0 tests=BAYES_00 autolearn=no
version=2.64
X-Spam-Checker-Version: SpamAssassin 2.64 (2004-01-11) on
...
X-UIDL: <6n"!Np^"!Dh2"!D'f"!

und noch ein problem...
spamassassin --lint

Failed to parse line in SpamAssassin configuration, skipping: loadplugin FuzzyOc r FuzzyOcr.pm
Failed to parse line in SpamAssassin configuration, skipping: focr_word stock
Failed to parse line in SpamAssassin configuration, skipping: focr_word investor
Failed to parse line in SpamAssassin configuration, skipping: focr_word internat ional
Failed to parse line in SpamAssassin configuration, skipping: focr_word company
Failed to parse line in SpamAssassin configuration, skipping: focr_word money
Failed to parse line in SpamAssassin configuration, skipping: focr_word million
Failed to parse line in SpamAssassin configuration, skipping: focr_word thousand
Failed to parse line in SpamAssassin configuration, skipping: focr_word buy
Failed to parse line in SpamAssassin configuration, skipping: focr_word price
Failed to parse line in SpamAssassin configuration, skipping: focr_word trade
Failed to parse line in SpamAssassin configuration, skipping: focr_word banking
Failed to parse line in SpamAssassin configuration, skipping: focr_word service
Failed to parse line in SpamAssassin configuration, skipping: focr_word kunde
Failed to parse line in SpamAssassin configuration, skipping: focr_word volksban k
Failed to parse line in SpamAssassin configuration, skipping: focr_word sparkass e
Failed to parse line in SpamAssassin configuration, skipping: focr_word software
Failed to parse line in SpamAssassin configuration, skipping: focr_word viagra
Failed to parse line in SpamAssassin configuration, skipping: focr_word cialis
Failed to parse line in SpamAssassin configuration, skipping: focr_word levitra
Failed to parse line in SpamAssassin configuration, skipping: focr_word medicine
Failed to parse line in SpamAssassin configuration, skipping: focr_word legal
Failed to parse line in SpamAssassin configuration, skipping: focr_word medicati on
Failed to parse line in SpamAssassin configuration, skipping: focr_word click he re
Failed to parse line in SpamAssassin configuration, skipping: focr_word penis
Failed to parse line in SpamAssassin configuration, skipping: focr_word growth
Failed to parse line in SpamAssassin configuration, skipping: focr_word drugs
Failed to parse line in SpamAssassin configuration, skipping: focr_word pharmacy
Failed to parse line in SpamAssassin configuration, skipping: focr_tmp_path /tmp
Failed to run FUZZY_OCR_CORRUPT_IMG SpamAssassin test, skipping:
(Can't locate object method "dummy_check" via package "Mail::SpamAssassi n::PerMsgStatus" at /usr/lib/perl5/vendor_perl/5.8.1/Mail/SpamAssassin/PerMsgSta tus.pm line 2293.
)
Failed to run FUZZY_OCR SpamAssassin test, skipping:
(Can't locate object method "check_fuzzy_ocr" via package "Mail::SpamAss assin::PerMsgStatus" at /usr/lib/perl5/vendor_perl/5.8.1/Mail/SpamAssassin/PerMs gStatus.pm line 2293.
)
Failed to run FUZZY_OCR_WRONG_CTYPE SpamAssassin test, skipping:
(Can't locate object method "dummy_check" via package "Mail::SpamAssassi n::PerMsgStatus" at /usr/lib/perl5/vendor_perl/5.8.1/Mail/SpamAssassin/PerMsgSta tus.pm line 2293.
)

Warum lernt er keine emails? Waran kann dies liegen?

Danke für die hilfe, habe mich hier im Forum schon eingelesen, jedoch ohne erfolg.
greets
tj
 
Last edited by a moderator:
Nummerieren wir die Probleme mal durch:
a) Wenn Du als root einen sa-learn-dump machst, bekommst Du auch nur die Ergebnisse des Users "root". Denn die anderen Mailbox-User haben eigene Bayes-Dateien. (Zumindest solange bis Du in der globalen local.cf einen Bayes-Pfad vorgibst.)

b) Warum sollte er diese Email mit dem Header gelernt haben?

c) Deine Version von FuzzyOcr passt nicht zur installierten Version von SA.

huschi.
 
also, ich habe nur 2 bayes datenbanken, also für alle user zusammen die selbe.

hier nochmals meine aktuelle conf:

Code:
# How many hits before a message is considered spam.
required_hits           5.0

# Whether to change the subject of suspected spam
rewrite_subject         1

# Text to prepend to subject if rewrite_subject is used
subject_tag             *****SPAM*****

# Encapsulate spam in an attachment
report_safe             1

# Use terse version of the spam report
use_terse_report        0

#whitelist factor
auto_whitelist_factor 0.03
auto_whitelist_path   /var/spool
auto_whitelist_file_mode    777

# Enable the Bayes system
use_bayes               1
bayes_path              /var/spool
bayes_file_mode 777
bayes_auto_learn 1
bayes_auto_learn_threshold_spam 6.5
bayes_auto_learn_threshold_nonspam 0.5

# Enable Bayes auto-learning
auto_learn              1

# Enable or disable network checks
skip_rbl_checks         0
use_razor2              1
use_dcc                 1
use_pyzor               1

# Mail using languages used in these country codes will not be marked
# as being possibly spam in a foreign language.
ok_languages            all

# Mail using locales used in these country codes will not be marked
# as being possibly spam in a foreign language.
ok_locales              all

hier dies ausgabe von spamassassin im debug modus:
Code:
spamassassin --lint -D
debug: Score set 0 chosen.
debug: running in taint mode? yes
debug: Running in taint mode, removing unsafe env vars, and resetting PATH
debug: PATH included '/sbin', keeping.
debug: PATH included '/usr/sbin', keeping.
debug: PATH included '/usr/local/sbin', keeping.
debug: PATH included '/root/bin', keeping.
debug: PATH included '/usr/local/bin', keeping.
debug: PATH included '/usr/bin', keeping.
debug: PATH included '/usr/X11R6/bin', keeping.
debug: PATH included '/bin', keeping.
debug: PATH included '/usr/games', keeping.
debug: PATH included '/opt/gnome/bin', keeping.
debug: Final PATH set to: /sbin:/usr/sbin:/usr/local/sbin:/root/bin:/usr/local/b                                                                              in:/usr/bin:/usr/X11R6/bin:/bin:/usr/games:/opt/gnome/bin
debug: ignore: using a test message to lint rules
debug: using "/usr/share/spamassassin" for default rules dir
debug: using "/etc/mail/spamassassin" for site rules dir
debug: using "/root/.spamassassin" for user state dir
debug: using "/root/.spamassassin/user_prefs" for user prefs file
debug: bayes: 17975 tie-ing to DB file R/O /var/spool/spamassassin_toks
debug: bayes: 17975 tie-ing to DB file R/O /var/spool/spamassassin_seen
debug: bayes: found bayes db version 2
debug: Score set 3 chosen.
debug: Initialising learner
debug: is Net::DNS::Resolver available? yes
debug: trying (3) akamai.com...
debug: looking up MX for 'akamai.com'
debug: MX for 'akamai.com' exists? 1
debug: MX lookup of akamai.com succeeded => Dns available (set dns_available to                                                                               hardcode)
debug: is DNS available? 1
debug: all '*From' addrs: ignore@compiling.spamassassin.taint.org
debug: running header regexp tests; score so far=0
debug: running body-text per-line regexp tests; score so far=2.077
debug: bayes corpus size: nspam = 10635, nham = 907
debug: uri tests: Done uriRE
debug: tokenize: header tokens for *F = "U*ignore D*compiling.spamassassin.taint                                                                              .org D*spamassassin.taint.org D*taint.org D*org"
debug: tokenize: header tokens for *m = " 1200476421 lint_rules "
debug: bayes token 'somewhat' => 0.985096774193548
debug: bayes token 'N:H*m:NNNNNNNNNN' => 0.958
debug: bayes token 'H*F:D*org' => 0.916235283261888
debug: bayes: score = 0.998212287081247
debug: bayes: 17975 untie-ing
debug: bayes: 17975 untie-ing db_toks
debug: bayes: 17975 untie-ing db_seen
debug: Razor2 is not available
debug: running raw-body-text per-line regexp tests; score so far=2.077
debug: running uri tests; score so far=2.077
debug: uri tests: Done uriRE
debug: running full-text regexp tests; score so far=2.077
debug: Current PATH is: /sbin:/usr/sbin:/usr/local/sbin:/root/bin:/usr/local/bin                                                                              :/usr/bin:/usr/X11R6/bin:/bin:/usr/games:/opt/gnome/bin
debug: Pyzor is not available: pyzor not found
debug: Razor2 is not available
debug: DCCifd is not available: no r/w dccifd socket found.
debug: DCC is not available: no executable dccproc found.
debug: all '*To' addrs:
debug: RBL: success for 1 of 1 queries
debug: running meta tests; score so far=2.077
debug: is spam? score=7.477 required=5 tests=BAYES_99,DATE_MISSING,NO_REAL_NAME

und hier die ausgabe von sa-learn im debugmodus
Code:
sa-learn --dump magic -D
debug: Score set 0 chosen.
debug: running in taint mode? yes
debug: Running in taint mode, removing unsafe env vars, and resetting PATH
debug: PATH included '/sbin', keeping.
debug: PATH included '/usr/sbin', keeping.
debug: PATH included '/usr/local/sbin', keeping.
debug: PATH included '/root/bin', keeping.
debug: PATH included '/usr/local/bin', keeping.
debug: PATH included '/usr/bin', keeping.
debug: PATH included '/usr/X11R6/bin', keeping.
debug: PATH included '/bin', keeping.
debug: PATH included '/usr/games', keeping.
debug: PATH included '/opt/gnome/bin', keeping.
debug: Final PATH set to: /sbin:/usr/sbin:/usr/local/sbin:/root/bin:/usr/local/bin:/usr/bin:/usr/X11R6/bin:/bin:/usr/games:/opt/gnome/bin
debug: using "/usr/share/spamassassin" for default rules dir
debug: using "/etc/mail/spamassassin" for site rules dir
debug: using "/root/.spamassassin/user_prefs" for user prefs file
debug: bayes: 18025 tie-ing to DB file R/O /var/spool/spamassassin_toks
debug: bayes: 18025 tie-ing to DB file R/O /var/spool/spamassassin_seen
debug: bayes: found bayes db version 2
debug: Score set 2 chosen.
debug: Initialising learner
0.000          0          2          0  non-token data: bayes db version
0.000          0      10635          0  non-token data: nspam
0.000          0        907          0  non-token data: nham
0.000          0      74683          0  non-token data: ntokens
0.000          0 1177049360          0  non-token data: oldest atime
0.000          0 1200413410          0  non-token data: newest atime
0.000          0 1200413419          0  non-token data: last journal sync atime
0.000          0 1178179062          0  non-token data: last expiry atime
0.000          0      43200          0  non-token data: last expire atime delta
0.000          0     190597          0  non-token data: last expire reduction count
debug: bayes: 18025 untie-ing
debug: bayes: 18025 untie-ing db_toks
debug: bayes: 18025 untie-ing db_seen
debug: bayes: 18025 untie-ing


das /var/spool/spamassassin_journal wird angelegt und wird auch immer größer,
heißt das er lernt oder hat das mit was anderem zu tun?
sollte ich bei den einstellungen etwas ändern?

und wo finde ich eigentlich das log-file von spamassassin? unter
/var/log ist nichts?

danke.
greets
tj
 
Last edited by a moderator:
das /var/spool/spamassassin_journal wird angelegt und wird auch immer größer,
heißt das er lernt oder hat das mit was anderem zu tun?
Die Antwort ist ein entschiedenes "Jein".
"Ja", weil das Journal gefüttert wird, "nein" weil er es noch nicht lernt.
"Lernen" tut er, sobald er das Journal abarbeitet und in die Bayes-DB übernimmt.
Dazu gibt es ein Commando unter sa-learn (Sync o.ä.), der das manuell anstößt. Ansonsten einfach warten. Er macht den Sync irgendwann von selber.

PS: Bitte Puntk 3.2 unserer Nutzungsbedingungen nochmal lesen.

huschi.
 
Hallo,
entschuldigung, an das habe ich gar nicht gedacht (Ich spreche jetzt von der Groß- und Kleinschreibung) ist natürlich keine Problem, nur manchmal, wenn man grad schnell was reintippt kann es vorkommen, dass mal ein Fehler passiert ;)


Immerhin, es gibt da bei meiner Spamassassin version den Befehl rebuild
also:
Code:
sa-learn --rebuild -D
debug: Score set 0 chosen.
debug: running in taint mode? yes
debug: Running in taint mode, removing unsafe env vars, and resetting PATH
debug: PATH included '/sbin', keeping.
debug: PATH included '/usr/sbin', keeping.
debug: PATH included '/usr/local/sbin', keeping.
debug: PATH included '/root/bin', keeping.
debug: PATH included '/usr/local/bin', keeping.
debug: PATH included '/usr/bin', keeping.
debug: PATH included '/usr/X11R6/bin', keeping.
debug: PATH included '/bin', keeping.
debug: PATH included '/usr/games', keeping.
debug: PATH included '/opt/gnome/bin', keeping.
debug: Final PATH set to: /sbin:/usr/sbin:/usr/local/sbin:/root/bin:/usr/local/bin:/usr/bin:/usr/X11R6/bin:/bin:/usr/games:/opt/gnome/bin
debug: using "/usr/share/spamassassin" for default rules dir
debug: using "/etc/mail/spamassassin" for site rules dir
debug: using "/root/.spamassassin/user_prefs" for user prefs file
debug: bayes: 20048 tie-ing to DB file R/O /var/spool/spamassassin_toks
debug: bayes: 20048 tie-ing to DB file R/O /var/spool/spamassassin_seen
debug: bayes: found bayes db version 2
debug: Score set 2 chosen.
debug: Initialising learner
debug: Initialising learner
debug: Syncing Bayes journal and expiring old tokens...
debug: lock: 20048 created /var/spool/spamassassin.lock.1285-2.1st-housing.de.20048
debug: lock: 20048 trying to get lock on /var/spool/spamassassin with 0 retries
debug: lock: 20048 link to /var/spool/spamassassin.lock: link ok
debug: bayes: 20048 tie-ing to DB file R/W /var/spool/spamassassin_toks
debug: bayes: 20048 tie-ing to DB file R/W /var/spool/spamassassin_seen
debug: bayes: found bayes db version 2
..
synced Bayes databases from journal in 1 seconds: 2122 unique entries (4660 total entries)
debug: Syncing complete.
debug: bayes: 20048 untie-ing
debug: bayes: 20048 untie-ing db_toks
debug: bayes: 20048 untie-ing db_seen
debug: bayes: files locked, now unlocking lock
debug: unlock: 20048 unlink /var/spool/spamassassin.lock

synced Bayes databases from journal in 1 seconds: 2122 unique entries (4660 total entries)

mein Problem ist nun, das spamassassin_journal ist verschwunden.
Jedoch hat er keine mail dazugelernt, die Anzahl der gelernten Spam und Ham-Mails ist immer noch die selbe:
Code:
debug: Initialising learner
0.000          0          2          0  non-token data: bayes db version
0.000          0      10635          0  non-token data: nspam
0.000          0        907          0  non-token data: nham
0.000          0      74683          0  non-token data: ntokens
0.000          0 1177049360          0  non-token data: oldest atime
0.000          0 1200480265          0  non-token data: newest atime
0.000          0 1200480283          0  non-token data: last journal sync atime
0.000          0 1178179062          0  non-token data: last expiry atime
0.000          0      43200          0  non-token data: last expire atime delta
0.000          0     190597          0  non-token data: last expire reduction count

Woran kann dies liegen?

Immer noch 907 Ham mails und 10635 Spam mails, wie schon vorher.


Ach ja, die Frage von vorhin, wo finde ich denn eigentlich die Spamassassin log files? Denn unter: /var/log ist nichts zu finden? Auch sonst konnte ich mit locate nichts ausfindig machen?

Danke.
lg
tj
 
mein Problem ist nun, das spamassassin_journal ist verschwunden.
Was ist daran das Problem? Ich hatte es doch vorhin erst erklärt.

0.000 0 1200480265 0 non-token data: newest atime
0.000 0 1200480283 0 non-token data: last journal sync atime
Die Zeitstempel haben sich aber geändert. D.h. er hat was getan.
Das er keine neuen gelernt hat, kann verschiedene Gründe haben. U.a. das er die Tokens z.B. bereits kannte.

wo finde ich denn eigentlich die Spamassassin log files?
SA schreibt i.d.R. auf die Mail-Facility des Syslogd.

huschi.
 
alles klar verstehe, danke für die Hilfe,
würde es was bringen die gesamte Datenbank mal neu einzulernen? Also die Toks und Seen zu löschen und dann nochmal 200 Spammails reinzuwerfen und 200 ham mails? Denn es könnte gut sein, dass die Datenbank relativ veraltet ist?

lg
tjabo
 
Punkt 1. Weniger Spam in den Postfächern.
Daraus folgt: Spamassissin soll korrekt laufen
Daraus folgt: Er soll aktuelle Daten haben, damit er den Spam richtig wegfiltert.
Daraus folgt. Autolearn muss laufen, damit die Datenbank aktuell bleibt.

Soweit so gut. Das ist und war mein Ziel.

Und danke für die Hilfe.
 
Wenigstens erkennst Du daß der Rest nur (Deine) Folgerungen sind. :)
Das eigentliche Ziel ist: weniger Spam.
Aber Du reitest hier nur auf (Deinen!) Folgerungen rum. Dadurch läßt Du uns und Dir selbst keinen Freiraum für Alternativen.
Oder um es mit Redensarten zu erklären:
Du läufst mit Scheuklappen rum und daher trittst Du auf der Stelle.

Die richtige Frage wäre also:
"Was kann ich tun um weniger Spam's zu erhalten?
Momentan im Einsatz ist...
mit der Konfiguration wie folgt...
Was ich nicht will..."


Zu den einzelnen Folgerungen:
Spamassissin soll korrekt laufen
Wer sagt, daß er es nicht tut?
Welche Anzeichen dafür gibt es?

Er soll aktuelle Daten haben, damit er den Spam richtig wegfiltert.
Du meinst hier den Bayes-Filter. Dies ist lediglich ein (in Zahlen: 1) Bestandteil von SA.
SA hat noch mehr Tuning-Möglichkeiten die Du noch nicht nutzt:
Code:
debug: Pyzor is not available: pyzor not found
debug: Razor2 is not available
debug: DCCifd is not available: no r/w dccifd socket found.
debug: DCC is not available: no executable dccproc found.

Daraus folgt. Autolearn muss laufen, damit die Datenbank aktuell bleibt.
Laut den o.g. Timestamps ist Deine Datenbank sehr aktuell.
Und da dies lediglich eine Folgerung aus einer Fehlannahme ist, ist sie sowieso hinfällig.

Weitere Alternativen:
- Greylisting installieren

huschi.
 
Back
Top