LINUX.ORG.RU
решено ФорумAdmin

Exim + Spamassassin: игнорируется required_score.


0

2

Итак, имеем настроеную связку exim+sa. в local.cf:

required_score 3.0
required_hits 3.0

В exim.conf:

acl_check_data:

warn message    = It`s maybe spam. Add to ".Junk" directory.
         condition  = ${if and {{>{$spam_score_int}{3}}{<={$spam_score_int}{16}}}{yes}{no}}
         domains    = !+relay_from_hosts
         spam       = nobody

    warn spam       = nobody:true
         hosts      = !+relay_from_hosts
         message    = X-Spam-Level: $spam_bar

    warn spam       = nobody:true
         hosts      = !+relay_from_hosts
         condition  = ${if >{$spam_score_int}{25}{1}{0}}
         message    = X-Spam-Status: $spam_report

    deny message    = Message scored $spam_score spam points
         spam       = nobody:true
         condition  = ${if >{$spam_score_int}{16}{yes}{no}}
...
begin routers
...
spam_to_user:
    driver = accept
    condition     = ${if and {{>{$spam_score_int}{3}}{<{$spam_score_int}{16}}}{yes}{no}}
    domains     = !+local_domains
    transport = user_spam_delivery
...

Письма, с spam points >0,5 рубятся.

Решение

А разгадка проста: в конфигах exim`а нужный spam points умножаем на 10, т.е. если нужно пропускать все, что до 3.0 - пишем {30}.

★★★★★

Последнее исправление: leg0las (всего исправлений: 4)

Ответ на: комментарий от leg0las

я делаю средствами самого exim

  deny  message = This message scored $spam_score spam points.
        hosts   = !+relay_from_hosts
        log_message  = Spam score $spam_score > 5
        spam    = spamd/defer_ok
        condition = ${if >{$spam_score_int}{50}{1}{0}}

где {50} означает score 5.0

fbiagent ★★★
()
Последнее исправление: fbiagent (всего исправлений: 1)
Ответ на: комментарий от fbiagent

где {50} означает score 5.0

Все! теперь я допер. Вот почему оно у меня фильтровало с 0,5 когда стояло 5...

Поставил <3.0 (30) - не спам, 3.0 - 8.0 (30-80) кладет пользователю в .Junk, более 8.0 (80) не принимается вообще.

leg0las ★★★★★
() автор топика

просто добавлю для понимания, что происходит: при обработке SA писем из exim-a, SA-шные required_* игнорятся. Т.е. Exim передал письмо - получил score. Все. Далее Exim решает что делать с письмом.

В случае, если SA используется как фильтр (т.е. через него прогоняется письмо, как в postfix овских milter), то именно SA-шные настройки позволяют сделать reject или добавить хедеры в письмо.

Bers666 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.