dspam (notspam_transport) неправильная работа роутера

EXIM, sendmail, postfix, Dovecot и прочие. Решение проблем связанных с работой электронной почты

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
mediamag
лейтенант
Сообщения: 693
Зарегистрирован: 2008-10-02 20:49:21

dspam (notspam_transport) неправильная работа роутера

Непрочитанное сообщение mediamag » 2011-01-14 11:18:30

Есть exim+dovecot+dspam. Настроил по статье, вообщем работает dspam и обучается...и вот начал приходить долгожданный класифицированый спам (с темой ***SPAM*****) и стали приходить ошибочные спам письма....начал я dspam обучать что это не спам, пересылая письма на notspam-user@domain.ua и эти письма тубо стали приходить мне назад, как будто я не переслал его сам себе. Может косяк в транспорте или в роутере (не в том месте стоит), хотя настраивал по статье и читал много тем на форуме....помогите понять почему так???????..судя по maillog я как будто отсылаю обычное письмо, оно даже сканируется на спам и все такое))))...привожу листинг роутеров и транспортов:

Код: Выделить всё

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


# Cистемные Алиасы

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}'}}


# DNS lookup router

dnslookup:
  driver = dnslookup
  domains = !+local_domains
  transport = remote_smtp
  ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8 : 10.0.0.0/24
  no_more


############## DSPAM роутеры #######################

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

# Доставляем почтy в 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


# Убивает в очереди bounce сообщения, если bounce всё же прокрался

bounce_killer:
  senders = :
  domains = !+local_domains
  driver = redirect
  allow_fail
  data = :fail: bounce ignored
  no_more
  no_verify


# Стандартный роутер, предназначен для доставки почты в майлбоксы, находящиеся в /var/mail
# В случае, если доставка невозможна, ответит Unknown user

localuser:
  driver = accept
  check_local_user
  transport = local_delivery
  cannot_route_message = Error!!! "Unknown user"



################################################################################################
#                             #Секция транспортов
################################################################################################

begin transports

# Доставка на удалённые хосты - по SMTP

remote_smtp:
driver = smtp

########### DSPAM транспорты ####################################

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

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2520 рублей (8 CPU, 8Gb RAM, 2x500Gb HDD, RAID 3ware 9750):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

mediamag
лейтенант
Сообщения: 693
Зарегистрирован: 2008-10-02 20:49:21

Re: dspam (notspam_transport) неправильная работа роутера

Непрочитанное сообщение mediamag » 2011-01-14 11:24:42

Кстати spam-user или notspam-user я отсылаю с ящика куда редиректятся все письма с проблемных ящиков (office sekretar director) группа у меня shared тоесть база актуальна для всех ящиков

blade_007
ст. прапорщик
Сообщения: 571
Зарегистрирован: 2010-03-12 12:59:08
Контактная информация:

Re: dspam (notspam_transport) неправильная работа роутера

Непрочитанное сообщение blade_007 » 2011-01-14 20:57:46

1.Пересылаете как вложение?
2. exim -bd -d-all+route+transport + тестовая пересылка
3. Уровень логгирования в dspam.conf (Debug параметр)
4. ну и логи вышеперечисленного в студию - может кто то поможет.

mediamag
лейтенант
Сообщения: 693
Зарегистрирован: 2008-10-02 20:49:21

Re: dspam (notspam_transport) неправильная работа роутера

Непрочитанное сообщение mediamag » 2011-01-14 22:09:14

dspam.debug

Код: Выделить всё

18473: [01/14/2011 21:03:28] DSPAM Instance Startup
18473: [01/14/2011 21:03:28] input args: /usr/local/bin/dspam --user hr@domain.ua --class=innocent --source=error --deliver=innocent %u
18473: [01/14/2011 21:03:28] pass-thru args: /usr/local/sbin/exim -oMr spam-scanned %u
18473: [01/14/2011 21:03:28] processing user hr@domain.ua
18473: [01/14/2011 21:03:28] uid = 26, euid = 26, gid = 6, egid = 6
18473: [01/14/2011 21:03:28] loading preferences for user hr@domain.ua
18473: [01/14/2011 21:03:28] default preferences empty. reverting to dspam.conf preferences.
18473: [01/14/2011 21:03:28] Loading preferences from dspam.conf
18473: [01/14/2011 21:03:28] using /var/db/dspam/opt-in/hr@domain.ua.dspam as path
18473: [01/14/2011 21:03:28] using /var/db/dspam/opt-out/hr@domain.ua.nodspam as path
18473: [01/14/2011 21:03:28] assigning user hr@domain.ua to group globalgroup
18473: [01/14/2011 21:03:28] sedation level set to: 0
18473: [01/14/2011 21:03:28] _mysql_drv_getpwnam: successful returning struct for name: globalgroup
18473: [01/14/2011 21:03:28] message is signed.  retaining original text for reassembly
18473: [01/14/2011 21:03:28] found signature '4d2f4ee3162751707111935'
18473: [01/14/2011 21:03:28] _mysql_drv_getpwnam returning cached name globalgroup.
18473: [01/14/2011 21:03:28] processing signature.  length: 3984
18473: [01/14/2011 21:03:28] reversing 332 tokens
18473: [01/14/2011 21:03:28] _mysql_drv_getpwnam returning cached name globalgroup.
18473: [01/14/2011 21:03:28] _mysql_drv_getpwnam returning cached name globalgroup.
18473: [01/14/2011 21:03:28] Control: [10 10] [9 11] Delta: [4294967295 1]
18473: [01/14/2011 21:03:28] reclassifying iteration 1 result: 0
18473: [01/14/2011 21:03:28] _mysql_drv_getpwnam: successful returning struct for name: globalgroup
18473: [01/14/2011 21:03:28] _mysql_drv_getpwnam returning cached name globalgroup.
18473: [01/14/2011 21:03:28] Loading 1 BNR patterns
18473: [01/14/2011 21:03:28] _mysql_drv_getpwnam returning cached name globalgroup.
18473: [01/14/2011 21:03:28] [graham] [0.010000] E: 6585108579934434292 (1frq, 0s, 13i)
18473: [01/14/2011 21:03:28] [burton] [0.010000] E: 6585108579934434292 (1frq, 0s, 13i)
18473: [01/14/2011 21:03:28] [graham] [0.010000] E: 8060226005252249236 (2frq, 0s, 13i)
18473: [01/14/2011 21:03:28] [burton] [0.010000] E: 8060226005252249236 (2frq, 0s, 13i)
18473: [01/14/2011 21:03:28] [burton] [0.010000] E: 8060226005252249236 (2frq, 0s, 13i)
18473: [01/14/2011 21:03:28] [graham] [0.010000] E: 11426791468258627746 (1frq, 0s, 7i)
18473: [01/14/2011 21:03:28] [burton] [0.010000] E: 11426791468258627746 (1frq, 0s, 7i)
18473: [01/14/2011 21:03:28] [graham] [0.010000] E: 17282744031410202237 (1frq, 0s, 11i)
18473: [01/14/2011 21:03:28] [burton] [0.010000] E: 17282744031410202237 (1frq, 0s, 11i)
18473: [01/14/2011 21:03:28] [graham] [0.010000] E: 17003144855752775821 (1frq, 0s, 61i)
18473: [01/14/2011 21:03:28] [burton] [0.010000] E: 17003144855752775821 (1frq, 0s, 61i)
18473: [01/14/2011 21:03:28] [graham] [0.010000] E: 12062479380743041302 (1frq, 0s, 7i)
18473: [01/14/2011 21:03:28] [burton] [0.010000] E: 12062479380743041302 (1frq, 0s, 7i)
18473: [01/14/2011 21:03:28] Graham-Bayesian Probability: 0.000000 Samples: 15
18473: [01/14/2011 21:03:28] Burton-Bayesian Probability: 0.000000 Samples: 27
18473: [01/14/2011 21:03:28] no factors specified; using default
18473: [01/14/2011 21:03:28] Result Confidence: 0.99
18473: [01/14/2011 21:03:28] total processing time: 0.01051s
18473: [01/14/2011 21:03:28] libdspam returned probability of 0.000000
18473: [01/14/2011 21:03:28] message result: NOT SPAM
18473: [01/14/2011 21:03:28] _mysql_drv_getpwnam returning cached name globalgroup.
18473: [01/14/2011 21:03:28] delivering message
18473: [01/14/2011 21:03:28] Opening pipe to LDA: /usr/local/sbin/exim -oMr spam-scanned hr@18473: [01/14/2011 21:03:28] Graham-Bayesian Probability: 0.000000 Samples: 15
18473: [01/14/2011 21:03:28] Burton-Bayesian Probability: 0.000000 Samples: 27
18473: [01/14/2011 21:03:28] no factors specified; using default
18473: [01/14/2011 21:03:28] Result Confidence: 0.99
18473: [01/14/2011 21:03:28] total processing time: 0.01051s
18473: [01/14/2011 21:03:28] libdspam returned probability of 0.000000
18473: [01/14/2011 21:03:28] message result: NOT SPAM
18473: [01/14/2011 21:03:28] _mysql_drv_getpwnam returning cached name globalgroup.
18473: [01/14/2011 21:03:28] delivering message
18473: [01/14/2011 21:03:28] Opening pipe to LDA: /usr/local/sbin/exim -oMr spam-scanned hr@domain.ua
18473: [01/14/2011 21:03:28] LDA returned success
18473: [01/14/2011 21:03:28] DSPAM Instance Shutdown.  Exit Code: 0
18473: [01/14/2011 21:03:28] LDA returned success
18473: [01/14/2011 21:03:28] DSPAM Instance Shutdown.  Exit Code: 0
Вроде по логам всё ок и теперь подобные сообщения от этого адресата больше не класифицируются как спам. Но почему оно прыгает назад в тот же ящик?

blade_007
ст. прапорщик
Сообщения: 571
Зарегистрирован: 2010-03-12 12:59:08
Контактная информация:

Re: dspam (notspam_transport) неправильная работа роутера

Непрочитанное сообщение blade_007 » 2011-01-14 22:14:48

Т.е. вы хотите, чтоб письмо один раз отправленное на переобучение обратно не возвращалось?


blade_007
ст. прапорщик
Сообщения: 571
Зарегистрирован: 2010-03-12 12:59:08
Контактная информация:

Re: dspam (notspam_transport) неправильная работа роутера

Непрочитанное сообщение blade_007 » 2011-01-14 23:04:56

Обратите внимание на следующие строки. Чтоб при переобучении НЕ происходило доставки - уберите --deliver.

Код: Выделить всё

dspam_notspam_transport:
   driver               = pipe
   command              = "/usr/local/bin/dspam --user $local_part@$domain --class=innocent --source=error --deliver=innocent %u"
Как то так.

mediamag
лейтенант
Сообщения: 693
Зарегистрирован: 2008-10-02 20:49:21

Re: dspam (notspam_transport) неправильная работа роутера

Непрочитанное сообщение mediamag » 2011-01-15 13:34:15

Спасибо - в принципе так и думал убрать параметр deliver. Чтобы не создавать новую тему вопрос к вам - вот весь класифицированый спам падает в папку /var/mail/mydomain.ua/usr@mydomain.ua/INBOX.Spam а как заставить почтовые клиенты типа outlook express видеть эту папку? (чтобы юзер мог увидеть неверно класифицированый спам и сообщить админу)

blade_007
ст. прапорщик
Сообщения: 571
Зарегистрирован: 2010-03-12 12:59:08
Контактная информация:

Re: dspam (notspam_transport) неправильная работа роутера

Непрочитанное сообщение blade_007 » 2011-01-15 14:03:21

может папка .INBOX.Spam ? (точка обязательна)
а в другом почтовом клиенте, Mozilla Thunderbird например, папка со спамом видна?

mediamag
лейтенант
Сообщения: 693
Зарегистрирован: 2008-10-02 20:49:21

Re: dspam (notspam_transport) неправильная работа роутера

Непрочитанное сообщение mediamag » 2011-01-15 14:21:08

Да вы правы - .INBOX.spam эта папка не видна ни в одном клиенте (the bat outlook и тд). Вот например в the bat есть такая настройка "добавить папку" но выбор пути разрешен только на локальные диски. Если бы можно было как то показать эту папку почтовым клиентам, было бы шикарно))

blade_007
ст. прапорщик
Сообщения: 571
Зарегистрирован: 2010-03-12 12:59:08
Контактная информация:

Re: dspam (notspam_transport) неправильная работа роутера

Непрочитанное сообщение blade_007 » 2011-01-15 14:28:38

хм.. а вы пробовали на эту папку подписаться (кстати у вас imap или pop3)?
Чтоб автоматически пользователь подписывался на эту папку (.INBOX.Spam) в транспорте local_delivery_spam_transport смотрите параметр -s!

Код: Выделить всё

local_delivery_spam_transport:
  driver = pipe
  command = /usr/libexec/dovecot/deliver -d $local_part@$domain -s -m INBOX.Spam

mediamag
лейтенант
Сообщения: 693
Зарегистрирован: 2008-10-02 20:49:21

Re: dspam (notspam_transport) неправильная работа роутера

Непрочитанное сообщение mediamag » 2011-01-16 0:03:29

У меня pop3, а что будет работать только по imap?