Все настроил, все работает, обучил. Вот только все письма определяются как innocent.
Не могу понять.
Попробую кинуть всю информацию относящуюся к делу, вдруг кто поможет:
Итак:
/etc/dspam.conf
Код: Выделить всё
Home /var/db/dspam
StorageDriver /usr/lib/libmysql_drv.so
TrustedDeliveryAgent "/usr/sbin/exim -oi -oMr spam-scanned"
OnFail error
Trust root
Trust mail
Trust mailnull
Trust smmsp
Trust daemon
TrainingMode teft
#TrainingMode toe
TestConditionalTraining on
Feature whitelist
Algorithm graham burton
Tokenizer chain
PValue bcr
WebStats off
Preference "signatureLocation=headers"
Preference "showFactors=on"
Preference "spamAction=tag"
AllowOverride trainingMode
AllowOverride statisticalSedation
AllowOverride enableBNR
AllowOverride enableWhitelist
AllowOverride showFactors
AllowOverride optIn optOut
AllowOverride whitelistThreshold
MySQLServer /var/lib/mysql/mysql.sock
MySQLPort 3306
MySQLUser dspam
MySQLPass ********
MySQLDb dspam
MySQLCompress true
MySQLConnectionCache 95
HashRecMax 98317
HashAutoExtend on
HashMaxExtents 0
HashExtentSize 49157
HashPctIncrease 10
HashMaxSeek 10
HashConnectionCache 10
Notifications off
PurgeSignatures 14 # Stale signatures
PurgeNeutral 90 # Tokens with neutralish probabilities
PurgeUnused 90 # Unused tokens
PurgeHapaxes 30 # Tokens with less than 5 hits (hapaxes)
PurgeHits1S 15 # Tokens with only 1 spam hit
PurgeHits1I 15 # Tokens with only 1 innocent hit
LocalMX 127.0.0.1
SystemLog on
UserLog on
Opt out
ProcessorURLContext on
ProcessorBias on
## EOF
Код: Выделить всё
dspam_addspam_router:
driver = accept
domains = +local_domains
local_parts = spam
transport = dspam_addspam_transport
dspam_notspam_router:
driver = accept
domains = +local_domains
local_parts = notspam
transport = dspam_notspam_transport
system_aliases:
driver = redirect
allow_fail
allow_defer
data = ${lookup mysql{SELECT `goto` FROM `alias` WHERE \
`address`='${quote_mysql:$local_part@$domain}' OR \
`address`='${quote_mysql:@$domain}'}}
dnslookup:
driver = dnslookup
domains = ! +local_domains
transport = remote_smtp
ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8
no_more
dspam_spamscan_router:
driver = accept
domains = +local_domains
no_verify
local_parts = cat
condition = "${if and {{!eq {$received_protocol}{spam-scanned}} {!eq {$received_protocol}{local}} } {1}{0}}"
transport = dspam_spamcheck_transport
require_files = /usr/bin/dspam
address_test = false
local_delivery_spam_router:
driver = accept
domains = +local_domains
condition = ${if match{$h_X-DSPAM-Result:}{Spam}}
transport = local_delivery_spam_transport
no_more
dovecot_user:
driver = accept
condition = ${lookup mysql{SELECT `goto` FROM \
`alias` WHERE \
`address`='${quote_mysql:$local_part@$domain}' OR \
`address`='${quote_mysql:@$domain}'}{yes}{no}}
transport = dovecot_delivery
Код: Выделить всё
begin transports
dspam_addspam_transport:
driver = pipe
command = "/usr/bin/dspam --user system --class=spam --source=error"
return_path_add = false
return_fail_output = true
log_output = true
home_directory = "/var/db/dspam"
current_directory = "/var/db/dspam"
user = mailnull
group = mail
dspam_notspam_transport:
driver = pipe
command = "/usr/bin/dspam --user system --class=innocent --source=error --deliver=innocent %u"
return_path_add = false
return_fail_output = true
log_output = true
home_directory = "/var/db/dspam"
current_directory = "/var/db/dspam"
user = mailnull
group = mail
dspam_spamcheck_transport:
driver = pipe
command = /usr/bin/dspam --deliver=innocent --user "$local_part@$domain" -- %u
user = mailnull
group = mail
home_directory = "/var/db/dspam"
current_directory = "/var/db/dspam"
return_path_add = false
log_output = true
return_fail_output = true
headers_remove = X-DSPAM-Result
local_delivery_spam_transport:
driver = pipe
#это временно, для теста
command = /usr/libexec/dovecot/deliver -d garbage@chcat.net
message_prefix =
message_suffix =
delivery_date_add
envelope_to_add
return_path_add
remote_smtp:
driver = smtp
dovecot_delivery:
driver = pipe
command = /usr/libexec/dovecot/deliver -d $local_part@$domain
message_prefix =
message_suffix =
delivery_date_add
envelope_to_add
return_path_add
log_output
group = mail
user = mailnull
address_pipe:
driver = pipe
return_output
address_reply:
driver = autoreply
в базе mysql, в таблице dspam_stats есть тому свидетельство (в таблицах токенов и сигнатур тоже данные присутствуют):
Код: Выделить всё
+-----+--------------+------------------+--------------------+------------------------+----------------+--------------------+-----------------+---------------------+
| uid | spam_learned | innocent_learned | spam_misclassified | innocent_misclassified | spam_corpusfed | innocent_corpusfed | spam_classified | innocent_classified |
+-----+--------------+------------------+--------------------+------------------------+----------------+--------------------+-----------------+---------------------+
| 5 | 2604 | 298 | 14 | 0 | 2587 | 255 | 0 | 0 |
+-----+--------------+------------------+--------------------+------------------------+----------------+--------------------+-----------------+---------------------+
в /var/db/dspam
Код: Выделить всё
[root@chcat ~]# ls /var/db/dspam -al
total 500
drwxr-xr-x 3 mailnull mail 4096 Mar 12 11:11 .
drwxr-xr-x 3 root root 4096 Mar 12 10:32 ..
drwxrwx--- 4 mailnull mail 4096 Mar 12 11:19 data
-rw-r--r-- 1 mail mailnull 15 Mar 12 10:34 group
-rw-rw---- 1 root mail 488855 Mar 12 13:15 system.log
Код: Выделить всё
tail /var/db/dspam/data/chcat.net/cat/cat.log
...
1236860545 I "Elina Kathrine" <elinakathrine_fq@eds.com> 49b8fe8179741289883057 Get Cheap Pills Online, NoPrescription. Brand and Generic Drugs, Visa Accepted ovxisd m9 Delivered <1236857928.2034@eds.com>
1236860587 I <cat@chcat.net> 49b8feab92731465223968 from admin Delivered
Код: Выделить всё
[root@chcat ~]# cat /var/db/dspam/group
system:shared:*[root@chcat ~]#
ну вот еще кусок messages
Код: Выделить всё
Mar 12 13:32:31 chcat deliver(cat@chcat.net): auth input: cat@chcat.net
Mar 12 13:32:31 chcat deliver(cat@chcat.net): auth input: uid=47
Mar 12 13:32:31 chcat deliver(cat@chcat.net): auth input: gid=12
Mar 12 13:32:31 chcat deliver(cat@chcat.net): auth input: home=/var/mail/exim/cat@chcat.net
Mar 12 13:32:31 chcat deliver(cat@chcat.net): auth input: allow_all_users=yes
Mar 12 13:32:31 chcat deliver(cat@chcat.net): maildir: data=/var/mail/exim/cat@chcat.net
Mar 12 13:32:31 chcat deliver(cat@chcat.net): maildir: root=/var/mail/exim/cat@chcat.net, index=/var/mail/exim/cat@chcat.net, control=, inbox=
Mar 12 13:32:32 chcat deliver(cat@chcat.net): msgid=<49B900F0.50304@npbnk.ru>: saved mail to INBOX
Код: Выделить всё
X-DSPAM-Result: Innocent
X-DSPAM-Processed: Thu Mar 12 13:22:25 2009
X-DSPAM-Confidence: 0.6850
X-DSPAM-Probability: 0.0000
X-DSPAM-Signature: 49b8fe8179741289883057
X-DSPAM-Factors: 27,
To*chcat.net>, 0.00438,
Received*by+mail.chcat.net, 0.00452,
Received*mail.chcat.net+with, 0.00452,
Received*mail.chcat.net, 0.00452,
Received*Thu, 0.00728,
Date*Thu, 0.00837,
Date*2009+04, 0.99000,
Received*12+Mar, 0.01284,
Received*Thu+12, 0.01284,
Date*Thu+12, 0.01344,
Date*12+Mar, 0.01344,
*Thu, 0.02133,
*From, 0.02133,
*Mar, 0.02133,
*12, 0.02133,
*Thu+Mar, 0.02184,
*Mar+12, 0.02184,
360, 0.02781,
360, 0.02781,
offer, 0.05412,
60, 0.93239,
60, 0.93239,
better, 0.07905,
Date*0700, 0.88463,
30, 0.88190,
30, 0.88190,
Subject*Get, 0.12515