Exim: фильтр для определенного ящика

EXIM, sendmail, postfix, Dovecot и прочие. Решение проблем связанных с работой электронной почты

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
v_d_v
проходил мимо
Сообщения: 4
Зарегистрирован: 2011-04-04 18:11:47

Exim: фильтр для определенного ящика

Непрочитанное сообщение v_d_v » 2011-04-04 18:35:07

Есть конфигурация Exim&Dovecot c этого сайта. Спасибо Cancer.

Стоит задача настроить фильтр входящих сообщений для одного определенного ящика.
Т.е. принимаем почту только с определенных доменов на один ящик test@dmn.ru, все остальное приходящее на этот ящик режем.
Другие ящики dmn.ru работают в обычном режиме.
Как проще организовать?
Можно ли организовать с помощью acl или использовать system-filter?

Спасибо

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35315
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Exim: фильтр для определенного ящика

Непрочитанное сообщение Alex Keda » 2011-04-04 19:10:58

а как угодно.
exim, однако
Убей их всех! Бог потом рассортирует...

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Re: Exim: фильтр для определенного ящика

Непрочитанное сообщение dikens3 » 2011-04-04 20:51:57

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

deny local_parts = test
     !sender_domains = domain1 : domain2
Если своих доменов много:

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

deny recipients = test@dmn.ru
     !sender_domains = domain1 : domain2
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.

v_d_v
проходил мимо
Сообщения: 4
Зарегистрирован: 2011-04-04 18:11:47

Re: Exim: фильтр для определенного ящика

Непрочитанное сообщение v_d_v » 2011-04-04 23:42:16

Спасибо за ответы

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!"

А так нет. Не подскажете почему?

v_d_v
проходил мимо
Сообщения: 4
Зарегистрирован: 2011-04-04 18:11:47

Re: Exim: фильтр для определенного ящика

Непрочитанное сообщение v_d_v » 2011-04-05 0:28:50

Думаю нужно писать
${sender_domain}' }}
Но такой переменной нет

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: Exim: фильтр для определенного ящика

Непрочитанное сообщение hizel » 2011-04-05 10:16:41

см. особенности раскрытия sql запросов, используйте тэг code

думаю надо

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

${lookup mysql{SELECT GROUP_CONCAT(`domain` SEPARATOR ':') FROM `domain_support` WHERE `domain`='${domain}' }}
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

v_d_v
проходил мимо
Сообщения: 4
Зарегистрирован: 2011-04-04 18:11:47

Re: Exim: фильтр для определенного ящика

Непрочитанное сообщение v_d_v » 2011-04-05 10:31:57

Сделал такую универсальную конструкцию:

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, так и домены разрешенных отправителей.