Вопрос по секции acl_check_mime

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

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
uvetrom
мл. сержант
Сообщения: 80
Зарегистрирован: 2010-02-10 16:35:13

Вопрос по секции acl_check_mime

Непрочитанное сообщение uvetrom » 2010-07-02 12:06:41

Ситуация такая, требуется сделать проверку:
Например есть два почтовых ящика 1@test.ru и 2@.test.ru(на самом деле ящиков порядка 40 штук) все на почтовом сервере exim/dovecote

Хочу сделать что бы с ящика 1 нельзя было писать на ящик (например) admin@mail.ru, а с ящика 2 можно.

Придумал такую конструкцию:

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

acl_check_mime:
warn decode = default
deny message = Blacklisted
    condition = ${if !match {$header_from:}{2@test.ru}{1}{0}}
    condition = ${if match {$header_to:}{admin@mail.ru}{1}{0}}
accept
К сожелению, писать могут все, у меня подозрение, что какая то проблема с переменной $header_to

Подскажете?

Хостинговая компания 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/

_FreeBSD
проходил мимо

Re: Вопрос по секции acl_check_mime

Непрочитанное сообщение _FreeBSD » 2010-07-02 12:50:09

хидер он же раскроется не адресом, а раскроется содержимым строки этого заголовка.

ну, вот например такой заголовок:

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

From: =?UTF-8?B?ItCyINCQLtiI=?= <et@freebsd.org>
на выходе помимо адреса мне кажеца будет все остальное.

uvetrom
мл. сержант
Сообщения: 80
Зарегистрирован: 2010-02-10 16:35:13

Re: Вопрос по секции acl_check_mime

Непрочитанное сообщение uvetrom » 2010-07-02 12:57:51

Хорошо, я понял ошибку.... а кто подскажет как сделать лучше?

_Менделеев
проходил мимо

Re: Вопрос по секции acl_check_mime

Непрочитанное сообщение _Менделеев » 2010-07-02 13:17:17

первое что пришло на ум.

Пользуюсь постфиксом для управления учетками. По умолчанию он сам создает много таблиц. В частности mailbox, в ней хранится все о ящиках.

1) Теперь берешь и добавляешь еще одно поле для таблицы mailbox, например, DenyToDomain,
2) и для каждого требуемого ящика заносишь запретные домены. Если запретных доменов будет больше одного, я бы тебе порекомендовал сразу задавать их в понятном для Exim формате, вида:
mail.ru:rambler.ru ....
3) ну, и в acl_rcpt делаешь:
3.1. делаешь выборку DenyToDomain из mailbox где username=$sender_address
3.2. ищешь совпадения между ${domain} и тем, что находится в DenyToDomain
3.3. если совпадает - блочишь

как-то так пришло на ум...

uvetrom
мл. сержант
Сообщения: 80
Зарегистрирован: 2010-02-10 16:35:13

Re: Вопрос по секции acl_check_mime

Непрочитанное сообщение uvetrom » 2010-07-02 13:43:23

Как не странно, но мне кажется что можно как то проще сделать, нежеле ковырять БД и половину конфига...

uvetrom
мл. сержант
Сообщения: 80
Зарегистрирован: 2010-02-10 16:35:13

Re: Вопрос по секции acl_check_mime

Непрочитанное сообщение uvetrom » 2010-07-02 15:04:14

Если кому то будет полезно :

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

acl_check_rcpt:
deny senders = ! 2@test.ru
     message = restricted
     domains = mail.ru:bk.ru

_9 мая
проходил мимо

Re: Вопрос по секции acl_check_mime

Непрочитанное сообщение _9 мая » 2010-07-02 15:59:04

половину конфига не надо было ковырять.
uvetrom писал(а):Если кому то будет полезно :

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

acl_check_rcpt:
deny senders = ! 2@test.ru
     message = restricted
     domains = mail.ru:bk.ru
ну, то же самое что я тебе порекомендовал, только без замутов с БД.
Замут с БД дал бы тебе гибкое решение, а так ты для всех мыл, перечисленных в senders запрещаешь домены из domains.

Я же не знал что тебе конкретно надо...