Итак, имеем настроеную связку 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}.