Страница 1 из 1

Добавляю 2 правила в Exim перестает работать задержка

Добавлено: 2009-05-24 14:30:40
Cancer
Добавляю 2 проверки в экзим на проверку helo что бы содержалось masterhost.ru
и что бы на левые ящики не отправлялись письма

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

....skipped....
begin acl

acl_check_rcpt:
  accept  hosts = :

  deny    message       = "incorrect symbol in address"
          domains       = +local_domains
          local_parts   = ^[.] : ^.*[@%!/|]

  deny    message       = "incorrect symbol in address"
          domains       = !+local_domains
          local_parts   = ^[./|] : ^.*[@%!] : ^.*/\\.\\./

  deny    message       = "HELO/EHLO require by SMTP RFC"
          condition     = ${if eq{$sender_helo_name}{}{yes}{no}}

  deny    message       = "Your IP in HELO - access denied!"
          hosts         =  * : !+relay_from_hosts : !81-196.mydomain.ru
          condition     = ${if eq{$sender_helo_name}\
    {$sender_host_address}{true}{false}}

  deny    condition     = ${if eq{$sender_helo_name}\
    {$interface_address}{yes}{no}}
          hosts         = !127.0.0.1 : !localhost : *
          message       = "Main IP in your HELO! Access denied!"

  deny    condition     = ${if match{$sender_helo_name}\
    {\N^\d+$\N}{yes}{no}}
          hosts         = !127.0.0.1 : !localhost : *
          message       = "Can not be only number in HELO!"
#####################################################################
# Вот эти 2 проверки
  deny   condition     = ${if match{$sender_helo_name}{masterhost.ru}{no}{yes}}
         hosts         = !127.0.0.1 : !localhost : !192.168.1.66 : !192.168.1.220 : !192.168.1.236 : *
         message       = "Access deny!"

  deny   condition = ${lookup mysql{SELECT `goto` FROM \
         `alias` WHERE \
         `address`='${quote_mysql:$local_part@mydomain.ru}'}{no}{yes}}
         hosts         = !127.0.0.1 : !localhost : !192.168.1.66 : !192.168.1.220 : *
         message       = "No such user!"
#####################################################################

  warn
        set acl_m0 = 30s

  warn
        hosts = +relay_from_hosts:127.0.0.1/8:192.168.1.0/24:192.168.55.0/24
        set acl_m0 = 0s
....skipped....

Re: Добавляю 2 правила в Exim перестает рботать задержка

Добавлено: 2009-05-24 15:26:38
Alex Keda
странно...
с отладкой пошли в поддельной сессии...

Re: Добавляю 2 правила в Exim перестает рботать задержка

Добавлено: 2009-05-24 17:26:51
Cancer
Кстати заметил если поменять {no}{yes} на {yes}{no}, начинает работать но правила не срабатывают, вернее как то по другому нужно сделать походу

Re: Добавляю 2 правила в Exim перестает рботать задержка

Добавлено: 2009-05-27 10:35:37
bubnov-pi
Я бы предложил в

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

${if match{$sender_helo_name}{masterhost.ru}{no}{yes}}
поменять местами "что в чём искать":

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

${if match{masterhost.ru}{$sender_helo_name}{no}{yes}}
По крайней мере у меня ACL на проверку совпадения HELO/EHLO с IP отправляющего хоста заработала только после замены, взятого из статей

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

${if eq{$sender_helo_name}{$sender_host_address}{yes}{no}}
на несколько иной:

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

${if match{$sender_host_address}{$sender_helo_name}{yes}{no}}
Беда в том, что в логах `$sender_helo_name` был заключён в квадратные скобки и при сравнении '12.34.56.78' ну никак не хотел совпадать с '[12.34.56.78]' ;-)