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

отключить проверку на вирусы для авторизированных

Добавлено: 2007-12-28 17:29:48
Casufi
Есть две секции

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

acl_smtp_rcpt = acl_check_rcpt
acl_smtp_data = acl_check_virus
Вот кусок кода из этих секций

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

begin acl

acl_check_rcpt:

    accept  authenticated = *
...
...
...
    accept  domains       = +local_domains
          endpass
          verify        = recipient

acl_check_virus:


    deny message= Your message were recognise as SPAM, spam score $spam_score spampoints.\nYou can contact to mail administrator by phone +7 495 476-75-56
         spam = nobody:true
         condition = ${if >{$spam_score_int}{45}{${lookup pgsql{select * from white_mail where lower(mail) = lower('$sender_address') or lower(whost) = lower('$sender_host_name') or lower(wip) = lower('$sender_host_address')}{0}{1}}}{0}


     accept
Насколько я понял, наблюдая за поведением Эксима, сообщения, которые получили accept в секции acl_check_rcpt проходят проверку всеми правилами из acl_check_virus: (в документации об этом явно нигде не написанно)

Так вот, можно ли использовать в теле acl_check_virus: правило accept authenticated = * , чтобы исключить проверку спамассасином для авторизированных пользователей ?

Re: отключить проверку на вирусы для авторизированных

Добавлено: 2007-12-28 21:45:13
dikens3
в документации об этом явно нигде не написанно
Искать не буду, но ты ошибаешься. Смысл тут в работе EXIM, который ты не очень понял. Обработка происходит поэтапно. (т.е сначала acl_smtp_connect, затем acl_smtp_mail, acl_smtp_rcpt, acl_smtp_predata, acl_smtp_data и т.д.) Если на любом из этапов сработает deny и т.п., тогда и перехода на следующий этап обработки не будет.
Так вот, можно ли использовать в теле acl_check_virus: правило accept authenticated = * , чтобы исключить проверку спамассасином для авторизированных пользователей ?
Конечно, завести переменную, к примеру так:

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

warn
         authenticated = *
         acl_m19 = 999999
А потом исключить проверку SPAMассасином, если в переменной m19 находится чило 999999 и т.д.

Re: отключить проверку на вирусы для авторизированных

Добавлено: 2007-12-29 14:29:27
Casufi
Никак не могу разобраться с condition и с lookup
1) Я хочу проверять вернул ли мне запрос из базы хотябы одну строку
Сейчас я это делаю так

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

  warn
      condition = ${lookup pgsql {select mail from white_mail where lower(mail)=lower('$sender_address')}{yes}{no}}
      acl_m1 = 
Это правильно ?

2) Иногда бывает что переменная $sender_host_name пустая, я н совсем понял как сделать так чтобы проверка

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

  warn
      condition = ${lookup pgsql {select whost from white_mail where lower(whost)=lower('$sender_host_name')}{yes}{no}}
      acl_m1 = 1
в этом случае не выполнялась.

Re: отключить проверку на вирусы для авторизированных

Добавлено: 2007-12-29 15:43:44
dikens3
Иногда бывает что переменная $sender_host_name пустая, я н совсем понял как сделать так чтобы проверка в этом случае не выполнялась.

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

  warn
      condition = проверка $sender_host_name на наличие данных
      condition = ${lookup pgsql {select whost from white_mail where lower(whost)=lower('$sender_host_name')}{yes}{no}}
      acl_m1 = 1

Re: отключить проверку на вирусы для авторизированных

Добавлено: 2008-04-15 16:16:54
gmn
dikens3 писал(а):
Иногда бывает что переменная $sender_host_name пустая, я н совсем понял как сделать так чтобы проверка в этом случае не выполнялась.
Да, тоже получаю пустую $sender_host_name. Но в spec.txt еще не смотрел ...

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

warn condition   = ${if eq{$sender_host_name}{}{1}}
     log_message = TEST: no hostname $sender_host_name for IP $sender_host_address
И получаю часто пустую $sender_host_name ...

Re: отключить проверку на вирусы для авторизированных

Добавлено: 2008-04-15 19:56:23
gmn
Чтобы вопрос не возникал больше - нашел в рассылке exim.org.ua:)
> SVI> хочется таким же образом проверять обратный резолвинг, в рассылке нашел упоминание что вместо проверки
> SVI> по $sender_host_name лучше использовать ${lookup dnsdb{ptr=$sender_host_address}}, а чем это лучше?
>
> оно не лучше, оно в другой плоскости, тк $sender_host_name будет что либо
> содержать только в том случае если совпадает прямая и обратная зона

Re: отключить проверку на вирусы для авторизированных

Добавлено: 2008-04-16 0:12:26
Alex Keda
э...
ещё это в документации написано, насколько я помню...

Re: отключить проверку на вирусы для авторизированных

Добавлено: 2008-04-16 9:05:47
gmn
Как я писал, что вопрос задал не заглядывая в доку ... :)
gmn писал(а):Но в spec.txt еще не смотрел ...
Потом появилось время - нашел ответ.
Ответ может быть полезным ищущим через Инет :)