Страница 1 из 1
Exim: фильтр для определенного ящика
Добавлено: 2011-04-04 18:35:07
v_d_v
Есть конфигурация Exim&Dovecot c этого сайта. Спасибо Cancer.
Стоит задача настроить фильтр входящих сообщений для одного определенного ящика.
Т.е. принимаем почту только с определенных доменов на один ящик
test@dmn.ru, все остальное приходящее на этот ящик режем.
Другие ящики dmn.ru работают в обычном режиме.
Как проще организовать?
Можно ли организовать с помощью acl или использовать system-filter?
Спасибо
Re: Exim: фильтр для определенного ящика
Добавлено: 2011-04-04 19:10:58
Alex Keda
а как угодно.
exim, однако
Re: Exim: фильтр для определенного ящика
Добавлено: 2011-04-04 20:51:57
dikens3
Код: Выделить всё
deny local_parts = test
!sender_domains = domain1 : domain2
Если своих доменов много:
Код: Выделить всё
deny recipients = test@dmn.ru
!sender_domains = domain1 : domain2
Re: Exim: фильтр для определенного ящика
Добавлено: 2011-04-04 23:42:16
v_d_v
Спасибо за ответы
deny
recipients =
test@dmn.ru
!sender_domains = domain1 : domain2
hosts = !127.0.0.1 : !localhost : *
message = "Only registred users!"
Так работает!
deny
recipients =
test@dmn.ru
!sender_domains = ${lookup mysql{SELECT `domain` \
FROM `domain_support` WHERE \
`domain`='${domain}' }}
hosts = !127.0.0.1 : !localhost : *
message = "Only registred users!"
А так нет. Не подскажете почему?
Re: Exim: фильтр для определенного ящика
Добавлено: 2011-04-05 0:28:50
v_d_v
Думаю нужно писать
${sender_domain}' }}
Но такой переменной нет
Re: Exim: фильтр для определенного ящика
Добавлено: 2011-04-05 10:16:41
hizel
см. особенности раскрытия sql запросов, используйте тэг code
думаю надо
Код: Выделить всё
${lookup mysql{SELECT GROUP_CONCAT(`domain` SEPARATOR ':') FROM `domain_support` WHERE `domain`='${domain}' }}
Re: Exim: фильтр для определенного ящика
Добавлено: 2011-04-05 10:31:57
v_d_v
Сделал такую универсальную конструкцию:
deny
condition = ${if eq {${lookup mysql{SELECT sendername FROM domain_support WHERE (sendername LIKE SUBSTRING ('$sender_address',INSTR('$sender_address','@')+1)) or (sendername='$sender_address')}}}{}{yes}{no}
recipients =
test@dmn.ru
message = "Only registred users!"
Соответственно, в sendername перечисленны, как email, так и домены разрешенных отправителей.