Проблема такая настроил DSPAM по статье http://www.lissyara.su/?id=1301 , отправляю письма со спамом на spam-user@domain.com начию кормить его спамом и он нифига не обучается.
В БД и в Дебагах ничего не появляется (
Роуты и Транспорты из /usr/local/etc/exim/configure
Код: Выделить всё
begin routers
#0
dspam_addspam_router:
driver = accept
domains = +local_domains
local_part_prefix = spam-
transport = dspam_addspam_transport
dspam_notspam_router:
driver = accept
domains = +local_domains
local_part_prefix = notspam-
transport = dspam_notspam_transport
# Поиск маршрута к хосту в DNS. Если маршрут не найден в DNS -
# то это `унроутабле аддресс`. Не проверяются локальные
# домены, 0.0.0.0 и 127.0.0.0/8
dnslookup:
driver = dnslookup
domains = ! +local_domains
transport = remote_smtp
ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8
no_more
# 1.Смотрим системные Алиасы
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}'}}
# 2.Доставляем почты в dovecot
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
t_router:
driver = manualroute
transport = t_transport
route_list = * smtp.domain.com
# смотрим альясы
#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}'}}
dspam_spamscan_router:
driver = accept
domains = +local_domains
no_verify
condition = "${if and {{!eq {$received_protocol}{spam-scanned}} \
{!eq {$received_protocol}{local}} } {1}{0}}"
transport = dspam_spamcheck_transport
require_files = /usr/local/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
#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
Код: Выделить всё
# начинаются транспорты - как доставляем почту
begin transports
# Доставка на удалённые хосты - по SMTP
remote_smtp:
driver = smtp
dspam_addspam_transport:
driver = pipe
command = "/usr/local/bin/dspam --user \
$local_part@$domain --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/local/bin/dspam --user \
$local_part@$domain --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/local/bin/dspam --deliver=innocent \
--user "$local_part@$domain" -- %u
user = mailnull
group = mail
return_path_add = false
log_output = true
return_fail_output = true
headers_remove = X-DSPAM-Result
# Тут создается специальная папка, доступная пользователю по IMAP,
# куда складывается помеченный спам для
# последующего осмотра и разбора.
local_delivery_spam_transport:
driver = pipe
command = /usr/local/libexec/dovecot/deliver -d \
$local_part@$domain -m INBOX.Spam
message_prefix =
message_suffix =
delivery_date_add
envelope_to_add
return_path_add
# Доставка локальным адресатам - в dovecot
# Надо заметить что тут использовалась ранее прямая доставка
# в директорию, но щас с портами стал-таки устанавливаться deliver
# программа dovecot занимающаяся доставкой мессаг.
# Соответственно юзаем его.
dovecot_delivery:
driver = pipe
command = /usr/local/libexec/dovecot/deliver -d $local_part@$domain
message_prefix =
message_suffix =
delivery_date_add
envelope_to_add
return_path_add
log_output
user = mailnull
# Имя программы
address_pipe:
driver = pipe
return_output
# Транспорт для автоответов
address_reply:
driver = autoreply
# Транспорт на smtp.domain.com
t_transport:
driver = smtp
hosts = smtp.domain.com
# Начинаются повторы недоставленных писем.
begin retry
Код: Выделить всё
Home /var/db/dspam
StorageDriver /usr/local/lib/libmysql_drv.so
TrustedDeliveryAgent "/usr/local/sbin/exim -oMr spam-scanned"
OnFail error
Trust root
Trust mail
Trust mailnull
TrainingMode teft
TestConditionalTraining on
Feature noise
Algorithm graham burton
PValue graham
Preference "signatureLocation=headers"
Preference "showFactors=on"
Preference "spamAction=tag"
Preference "spamSubject=SPAM"
AllowOverride trainingMode
AllowOverride spamAction spamSubject
AllowOverride statisticalSedation
AllowOverride enableBNR
AllowOverride enableWhitelist
AllowOverride signatureLocation
AllowOverride showFactors
AllowOverride optIn optOut
AllowOverride whitelistThreshold
MySQLServer localhost
MySQLPort 3306
MySQLUser dspam
MySQLPass ПАСС
MySQLDb dspam
MySQLConnectionCache 1000
HashRecMax 98317
HashAutoExtend on
HashMaxExtents 0
HashExtentSize 49157
HashMaxSeek 100
HashConnectionCache 100
IgnoreHeader X-Spam-Status
IgnoreHeader X-Spam-Score
IgnoreHeader X-Spam-Scanned
IgnoreHeader X-Virus-Scanner-Result
IgnoreHeader Date
IgnoreHeader Envelope-to
IgnoreHeader Delivery-date
IgnoreHeader Received
IgnoreHeader User-Agent
IgnoreHeader Content-Type
IgnoreHeader Content-Transfer-Encoding
IgnoreHeader To
Notifications off
LocalMX 127.0.0.1
SystemLog on
Opt out
MaxMessageSize 200000
ProcessorBias on
Код: Выделить всё
/usr/local/bin/dspam --debug --deliver=innocent --user
local_part@domain.com -- %u < spam.txt
Пересылаю письмо со спамом на адресс spam-имя_юзера@домен.com
Письма в дебаг не попадают и в БД тоже
а вот что говорит при этом /var/log/maillog
Код: Выделить всё
Feb 4 19:42:57 gate exim[41249]: no host name found for IP address 192.168.0.20
Feb 4 19:42:57 gate exim[41249]: Delay 0s for [192.168.0.20] with HELO=SERVERS. Mail from имя_юзера@домен to spam-имя_юзера@домен.
Feb 4 19:42:57 gate exim[41249]: 1LUlm5-000AjJ-FT <= имя_юзера H=(SERVERS) [192.168.0.20] I=[192.168.0.2]:25 P=esmtp S=3352 id=382790591.20090204194810@домен from <имя_юзера@домен> for spam-имя_юзера@домен
Feb 4 19:42:57 gate dspam[41255]: Unable to find a valid signature. Aborting.
Feb 4 19:42:57 gate dspam[41255]: process_message returned error -5. dropping message.
Feb 4 19:42:57 gate exim[41253]: 1LUlm5-000AjJ-FT <spam-имя_юзера@домен>: dspam_addspam_transport transport output: 41255: [02/04/2009 19:42:57] Unable to find a valid signature. Aborting.
Feb 4 19:42:57 gate exim[41253]: 1LUlm5-000AjJ-FT => ukrprice <spam-имя_юзера@домен> R=dspam_addspam_router T=dspam_addspam_transport
Feb 4 19:42:57 gate exim[41253]: 1LUlm5-000AjJ-FT Completed
Помогите разобратся с ДСПАМОМ что бы наконец-то избавится от спама +))