[exim-conf] Особенности greylisting-а при встречной проверке отправителя

Victor Ustugov victor на corvax.kiev.ua
Чт Июн 7 11:01:05 EEST 2007


Sasha Usov wrote:
> Здравствуйте!
> В последнее время у моего exim-а наблюдаются проблемы с отправкой
> сообщений, если удаленные сервера перед разрешением залить им письмо
> проверяют у меня отправителя.
> 
> exim -bh показал, что при проверке отправителя одним из таких хостов
> срабатывает грейлистинг, который дает defer на 9 минут.
> 
> Грейлистинг собран с параметрами (версия конфигуратора 4.61):
> 
> define(`confGREYLIST_DBM', `YES')dnl
> define(`confGREYLIST_DBM_CACHE', `/var/spool/exim/db/greylist.db')dnl
> define(`confGREYLIST_DBM_BLOCKED', `9')dnl
> define(`confGREYLIST_DBM_RECORD_EXPIRE_MIN', `300')dnl
> define(`confGREYLIST_DBM_RECORD_EXPIRE', `36')dnl
> define(`confGREYLIST_SKIP', `AUTH FROM_<> FROM_POSTMASTER TO_POSTMASTER TO_ABUSE')
> define(`confGREYLIST_MESSAGE', `Message delayed - greylisting. Please try again later')dnl
> define(`confGREYLIST_DBM_ADDR_PRELOAD', `YES')
> define(`confGREYLIST_DBM_ADDR_PRELOAD_TTL',`240')
> 
> По совету Виктора Устугова, пытался добавить параметр, исключающий из грейлистинга для пустого
> envelepe from. Но, похоже, не туда добавляю (или не так).

исключение сделано правильно (строка FROM_<> в confGREYLIST_SKIP)

> С
> вышеуказанными параметрами конфиг имеет такой блок (проверяющий
> необходимость применения серых списков):
> 
> ...
>         warn    recipients      = @@wildlsearch;CONFDIR/skip_greylist_recipients
>                 set acl_m0      = skip
>                 set acl_m15     = ${acl_m15}\t\
>                                 skip greylist by recipient address\n
>         warn    senders         = @@wildlsearch;CONFDIR/skip_greylist_senders
>                 set acl_m0      = skip
>                 set acl_m15     = ${acl_m15}\t\
>                                 skip greylist sender address\n
> ...
> 
> Скопировал оттуда секцию senders и ставил до этого же "sender"
> (пробовал и после):
> 
>         warn    senders         = :
>                 set acl_m0      = skip
>                 set acl_m15     = ${acl_m15}\t\
>                                 skip greylist sender address\n
> 
>         warn    senders         = @@wildlsearch;CONFDIR/skip_greylist_senders
>                 set acl_m0      = skip
>                 set acl_m15     = ${acl_m15}\t\
>                                 skip greylist sender address\n                                

я не совсем понял, конфиг после генерации подвергается ручной правке?

> Проблему не решило. Каким параметром в конфигураторе можно исключить
> грейлистинг для встречной проверки отправителя?

при использовании FROM_<> в confGREYLIST_SKIP в конфиг должен быть
добавлен фрагмент:

        warn    condition       = ${if
eq{$sender_address_local_part}{}{yes}{no}}
                set acl_m0      = skip
                set acl_m15     = ${acl_m15}\t\
                                skip greylist for empty sender address\n

который функционально делает тоже самое, что и

         warn    senders         = :
                 set acl_m0      = skip
                 set acl_m15     = ${acl_m15}\t\
                                 skip greylist sender address\n

если при этом исключение из грейлистинга не производится, то нужно в
exim -d -bh имитировать встречную проверку отправителя со стороны вашего
получателя и посмотреть, почему не производится исключение

-- 
Best wishes Victor Ustugov   mailto:victor на corvax.kiev.ua
public GnuPG/PGP key:        http://victor.corvax.kiev.ua/corvax.asc
ICQ: 77186900, 32418694      CRV2-RIPE, CRV-UANIC




Подробная информация о списке рассылки exim-conf