URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 89918
[ Назад ]

Исходное сообщение
"Exim и пересылка почты."

Отправлено onu , 29-Сен-10 18:34 
Здравствуйте.
Установлен релей с Exim'ом. В файле конфигурации есть роутер:

exchange_router:
    driver        =    "manualroute"
    domains        =    +relay_to_domains
    transport    =    remote_smtp
    route_list    =    * mailserver1.domain.ru
    no_more

Как сделать так, чтобы письма по определенным адресам получателей пересылались на mailserver2.domain.ru, а все остальные на mailserver1.domain.ru ?
В postfix'е это делается просто:

user@domain.ru smtp:[mailserver2.domain.ru]
domain.ru smtp:[mailserver1.domain.ru]


Содержание

Сообщения в этом обсуждении
"Exim и пересылка почты."
Отправлено Bosh , 29-Сен-10 20:32 
В exim то же просто и врианты разные есть.
Ну так побыренькому ,  что бы с sql  не заморочиваться

/etc/exim/mailserver*.txt txt файлы вида
ss@mailserver1.domain.ru
или глобально
*@mailserver1.domain.ru
и т.д.

exchange_router_mailserver1:
    driver        =    manualroute
    domains        =    +relay_to_domains
    local_parts = lsearch*@;/etc/exim/mailserver1.txt
    transport    =    remote_smtp
    route_list    =    * mailserver1.domain.ru
    

exchange_router_mailserver2:
    driver        =    "manualroute"
    domains        =    +relay_to_domains
    local_parts = lsearch*@;/etc/exim/mailserver2.txt
    transport    =    remote_smtp
    route_list    =    * mailserver2.domain.ru
    


>[оверквотинг удален]
>  driver  = "manualroute"
>  domains  = +relay_to_domains
>  transport = remote_smtp
>  route_list = * mailserver1.domain.ru
>  no_more
> Как сделать так, чтобы письма по определенным адресам получателей пересылались на mailserver2.domain.ru,
> а все остальные на mailserver1.domain.ru ?
> В postfix'е это делается просто:
> user@domain.ru smtp:[mailserver2.domain.ru]
> domain.ru smtp:[mailserver1.domain.ru]


"Exim и пересылка почты."
Отправлено onu , 30-Сен-10 01:51 
Спасибо, все получилось :)
Небольшое дополнение:
в случае:
local_parts = lsearch*@;/etc/exim/mailserver1.txt
необходимо указывать в файле mailserver1.txt часть адреса до символа "@" т. е.
ss
user1
user2
и т. д. Если домен не один, то гораздо удобнее использовать переменную $domain, в этом случае файл списка адресов должен называться domain.ru, а роутер примет вид:

exchange_router_mailserver1:
    driver        =    manualroute
    domains        =    +relay_to_domains
    local_parts = lsearch*@;/etc/exim/$domain
    transport    =    remote_smtp
    route_list    =    * mailserver1.domain.ru

Подробнее:
http://exim.org/exim-html-current/doc/html/spec_html/ch15.html


>[оверквотинг удален]
>>  driver  = "manualroute"
>>  domains  = +relay_to_domains
>>  transport = remote_smtp
>>  route_list = * mailserver1.domain.ru
>>  no_more
>> Как сделать так, чтобы письма по определенным адресам получателей пересылались на mailserver2.domain.ru,
>> а все остальные на mailserver1.domain.ru ?
>> В postfix'е это делается просто:
>> user@domain.ru smtp:[mailserver2.domain.ru]
>> domain.ru smtp:[mailserver1.domain.ru]


"Exim и пересылка почты."
Отправлено Bosh , 30-Сен-10 12:02 
согласен ,nо же вариант ,  более универсальный.

>[оверквотинг удален]
>>>  driver  = "manualroute"
>>>  domains  = +relay_to_domains
>>>  transport = remote_smtp
>>>  route_list = * mailserver1.domain.ru
>>>  no_more
>>> Как сделать так, чтобы письма по определенным адресам получателей пересылались на mailserver2.domain.ru,
>>> а все остальные на mailserver1.domain.ru ?
>>> В postfix'е это делается просто:
>>> user@domain.ru smtp:[mailserver2.domain.ru]
>>> domain.ru smtp:[mailserver1.domain.ru]