Привет!
Создать дополнительную таблицу, например:
senders: id, sender, aliases_id
Добавить в роутер параметр:
senders = ${lookup mysql{SELECT sender FROM senders, aliases WHERE
local_part='${local_part}' AND
domain='${domain}' AND senders.alias_id == aliases.id AND senders.sender =
$sender_address}}
Запрос примерный, он отражает только суть. :) Нужно проверять!!!
On Thu, 03 Oct 2013 18:05:49 +0300
Павел Завада <[email protected]> пишет:
>Добрый день.
>
>Имеется почтовый сервер с exim.
>Работает в связке с mysql базой данных.
>
>Роутер для почтовых алиасов:
>
>system_aliases:
> driver = redirect
> allow_fail
> allow_defer
> file_transport = address_file
> pipe_transport = address_pipe
> data = ${lookup mysql{SELECT recipients FROM aliases WHERE
>local_part='${local_part}' AND domain='${domain}'}}
>
>Делает выборку из БД, таблицы aliases, смотрит на адрес назначения
>письма и достаёт получателей.
>Им и направляет письмо, полученное на определённый алиас.
>
>Появилась задача.
>Нужно сделать так, чтобы доставка на определённый алиас была
>контролируема, нужно фильтровать письма на основании того - кому
>разрешено отправлять на конкретный алиас, а кому - нет. В рамках данной
>задачи приемлемым фильтрацию только по from - адресу отправителя,
>осознавая, что адрес можно подменить и т.д, и валидацио отправителя
>осуществлять не будем.
>
>К примеру, в таблице aliases добавить поле accept_from типа text, в
>котором вписывать те адреса (их может быть несколько, указываются через
>запятую в поле), которым разрешено отправлять письма на тот или иной алиас.
>
>Транспорты:
>
>local_delivery:
> driver = appendfile
> check_string = ""
> create_directory
> delivery_date_add
> directory = /mail/$domain/$local_part
> directory_mode = 770
> envelope_to_add
> group = mail
> maildir_format
> maildir_tag = ,S=$message_size
> message_prefix = ""
> message_suffix = ""
> mode = 0660
> quota = ${lookup mysql{SELECT quota FROM users WHERE
>login='${local_part}' AND domain='${domain}'}{${value}M}}
> quota_size_regex = S=(\d+)$
> quota_warn_threshold = 75%
> return_path_add
>
>address_pipe:
> driver = pipe
> return_output
>
>address_file:
> driver = appendfile
> delivery_date_add
> envelope_to_add
> return_path_add
>
>
>Просьба порекомендовать - каким образом это можно сделать.
>Если нужны дополнительные данные из конфигурации exim, могу предоставить.
>Спасибо.
>
--
Best regards,
Aleksey Tsvetkov
System Administrator
Company Grand Vision
tel. +7(495)933-39-79, ext. 184
_______________________________________________
Exim-users mailing list
[email protected]
http://mailground.net/mailman/listinfo/exim-users