[exim-conf] переделки поддержки mailertable

Victor Ustugov victor на corvax.kiev.ua
Чт Фев 12 21:18:43 EET 2015


Victor Ustugov wrote:

>> Клиентский домен сейчас припаркован у Яндекса.
>> Готовлю сервер для переезда, и хочу сделать так, чтобы Exim в качестве
>> основного МХ-а какое-то время доставлял еще почту и на Яндекс, и на
>> почтовый сервер клиента.
>>
>> Домен клиента указан в domains-relayto (в domains-local не указываю,
>> т.к. почтовые ящики на удаленном сервере Zimbra).
>> Подскажите, как правильно настроить маршрутизацию?
> 
> готового ничего нет.
> 
> можно попробовать использовать тот же механизм, который реализован в
> ноябре для копирования локальной почты путем пересылки писем на
> удаленный SMTP сервер без перезаписи адреса получателя:
> 
> http://mta.org.ua/pipermail/exim-conf/2014-November/001422.html
> 
> только в confMAIL_BACKUP_REMOTE_SMTP_DOMAIN_LIST нужно указывать не
> +local_domains, а +relay_to_domains
> 
> но мне нужно будет еще переделать условие в роутере
> local_delivery_copy_smtp так, чтобы не проверять существование адресов
> получателей. вернее можно сделать эту проверку опциональной.

идея оказалась неудачная.

кроме необходимости убрать условие проверки существования локальных
пользователей нужно еще и роутер local_delivery_copy_smtp поднимать выше
роутеров dnslookup и mailertable_smtp.

да и само название роутер local_delivery_copy_smtp уже не соответствует
той задаче, которая с помощью него будет решаться.

в остальном нужно строить схему, похожую на ту, которая описана по
приведенной мной выше ссылке.

Александр, прошу в site/conf указать:

define(`confMAIL_BACKUP', `REMOTE_SMTP')
define(`confMAIL_BACKUP_REMOTE_SMTP_DOMAIN_LIST', `клиентский_домен')
define(`confMAIL_BACKUP_REMOTE_SMTP_HOST', `клиентский_сервер')

при этом в mailertable для домена "клиентский_домен" должен быть создан
ручной маршрут через mx.yandex.ru (на сколько я понял, он уже создан,
просто из него нужно убрать адрес клиентского сервера).

если confMAIL_BACKUP уже используется с каким-либо значением (например
`SYSTEM_FILTER'), то нужно указать оба значения через пробел:

define(`confMAIL_BACKUP', `SYSTEM_FILTER REMOTE_SMTP')

после этого нужно перегенерировать конфигурационный файл, потом в
роутере local_delivery_copy_smtp вручную убрать condition, а сам роутер
перенести выше роутера mailertable_smtp и перегрузить exim.

если после этого почта будет доставляться корректно в соответствии с
задачей, то нужно будет думать, как обозвать этот новый функционал и как
его описать в m4/conf.default, т. к. он уже не будет иметь отношения к
резервному копированию почты.

возможно придется для mailertable реализовать тип маршрута shadow_smtp
или что-то в этом духе.


>> Использую OpenSUSE и Exim из вашего репозитория.
>>
>> Exim version 4.80.1 #3 built 26-May-2013 00:52:05
>> Copyright (c) University of Cambridge, 1995 - 2012
>> (c) The Exim Maintainers and contributors in ACKNOWLEDGMENTS file, 2007
>> - 2012
>> Berkeley DB: Berkeley DB 4.8.30: (November 17, 2012)
>>
>>
>>
>>
>>
>> 2010-06-07 16:29 GMT+03:00 Victor Ustugov <victor на corvax.kiev.ua
>> <mailto:victor на corvax.kiev.ua>>:
>>
>>     Alexandr Usov wrote:
>>
>>         Виктор, здравствуйте!
>>
>>
>>     добрый день
>>
>>         Хотелось бы уточнить у Вас возможность машрутизации почты по
>>         одному домену для разных юзеров - на разные серверы.
>>
>>
>>     для этого в левой части строки в mailertable нужно указать полный
>>     e-mail, а не домен получателя.
>>
>>         Имеется контора, которая работает с одним доменом, но почту
>>         нужно сделать физически на разных серверах, причем на вход она
>>         должна стучаться на один сервер, и в зависимости от $local_part
>>         доставляться либо локально, либо на удаленный сервер. Через
>>         mailertable это сделать невозможно, насколько я смог понять...
>>
>>
>>     невозможно это только для локальных доменов. в первоначальной
>>     формулировке вопроса шла речь о доставке писем на разные сервера.
>>
>>     изначально у меня в роутере mailertable_smtp указано использовать
>>     его только для писем из нелокальных доменов:
>>
>>             domains         = ! +local_domains
>>
>>         Есть идея сделать это алиасами с пересылкой на другой сервер. Но
>>         может есть вариант попроще в самом паровозе?
>>
>>
>>     я пока закомментировал вышеуказанную строку в роутерах
>>     mailertable_smtp и mailertable_smtp_callout.
>>
>>     возможно в будущем я введу отдельную переменную, в которой в виде `!
>>     +local_domains' будут указаны домены для двух вышеуказанных
>>     роутеров. тогда в этой переменной перед `! +local_domains' можно
>>     будет указать те локальные домены, доставка почты с которые может
>>     производится по SMTP.
>>
>>         Спасибо!
>>
>>
>>         2008/10/24 Victor Ustugov <victor на corvax.kiev.ua
>>         <mailto:victor на corvax.kiev.ua> <mailto:victor на corvax.kiev.ua
>>         <mailto:victor на corvax.kiev.ua>>__>
>>
>>             приветствую
>>
>>             наконец-то дошли руки убрать функционал, который дублировался в
>>             конфигуратор и в самом exim'е, касающийся поддержки доставки
>>         почты
>>             по ручным маршрутам.
>>
>>             итак:
>>
>>             - переменная confMAILERTABLE_CALLOUTTABLE упразднена.
>>             теперь роутер callout_smtp всегда используется при использовании
>>             confMAILERTABLE
>>
>>             - транспорт remote_smtp_callout упразднен
>>             - роутер callout_smtp_another_port упразднен
>>             - транспорт remote_lmtp_mailertable переименован в remote_lmtp
>>
>>             - теперь нельзя использовать конструкцию mx(domain.tld) для
>>         указания
>>             в качестве ручного маршрута набора MX записей домена domain.tld,
>>             теперь нужно использовать штатную форму записи exim'а
>>         domain.tld/MX
>>
>>             - по аналогии с суффиксом /MX теперь можно использовать
>>         /bestMX. для
>>             поддержки суффикса /bestMX нужна поддержка встроенного perl'а
>>
>>             - номер порта SMTP/LMTP серверов нужно указывать не после типа
>>             маршрута smtp/lmtp через пробел (как было до недавнего
>>         времени), а
>>             после хоста через два ":"
>>
>>             - транспорт remote_smtp_mailertable упразднен. отсылка на
>>             нестандартные порты производится штатным транспортом
>>         remote_smtp.
>>             при необходимости доставлять почту на другой порт этого же хоста
>>             необходимо указать параметр allow_localhost в файле
>>             site/configure.smtp_transport___options
>>
>>             - при хранении mailertable в MySQL или SQLite для транспорта
>>         smtp не
>>             нужно поле port, значение порта указывается возле каждого хоста
>>             через два ":"
>>
>>
>>             --     Best wishes Victor Ustugov 
>>          mailto:victor на corvax.kiev.ua <mailto:victor на corvax.kiev.ua>
>>             <mailto:victor на corvax.kiev.ua <mailto:victor на corvax.kiev.ua>>
>>             public GnuPG/PGP key:       
>>         http://victor.corvax.kiev.ua/__corvax.asc
>>         <http://victor.corvax.kiev.ua/corvax.asc>
>>             ICQ UIN: 77186900, 32418694  nic-handle: CRV2-RIPE, CRV-UANIC
>>
>>             _________________________________________________
>>             exim-conf mailing list
>>             exim-conf на mta.org.ua <mailto:exim-conf на mta.org.ua>
>>         <mailto:exim-conf на mta.org.ua <mailto:exim-conf на mta.org.ua>>
>>             http://www.mta.org.ua/mailman/__listinfo/exim-conf
>>         <http://www.mta.org.ua/mailman/listinfo/exim-conf>
>>             http://mta.org.ua/exim-conf/
>>             http://mta.org.ua/exim-conf/__m4/README
>>         <http://mta.org.ua/exim-conf/m4/README>
>>             rsync://rsync.mta.org.ua/exim-__conf/
>>         <http://rsync.mta.org.ua/exim-conf/>
>>         <http://rsync.mta.org.ua/exim-__conf/
>>         <http://rsync.mta.org.ua/exim-conf/>>
>>
>>
>>
>>         ------------------------------__------------------------------__------------
>>
>>         _________________________________________________
>>         exim-conf mailing list
>>         exim-conf на mta.org.ua <mailto:exim-conf на mta.org.ua>
>>         http://mta.org.ua/mailman/__listinfo/exim-conf
>>         <http://mta.org.ua/mailman/listinfo/exim-conf>
>>         http://mta.org.ua/exim-conf/
>>         http://mta.org.ua/exim-conf/__m4/README
>>         <http://mta.org.ua/exim-conf/m4/README>
>>         rsync://rsync.mta.org.ua/exim-__conf/
>>         <http://rsync.mta.org.ua/exim-conf/>
>>
>>
>>
>>     -- 
>>     Best wishes Victor Ustugov   mailto:victor на corvax.kiev.ua
>>     <mailto:victor на corvax.kiev.ua>
>>     public GnuPG/PGP key:       
>>     http://victor.corvax.kiev.ua/__corvax.asc
>>     <http://victor.corvax.kiev.ua/corvax.asc>
>>     ICQ UIN: 77186900, 371808614 nic-handle: CRV-UANIC
>>
>>     _________________________________________________
>>     exim-conf mailing list
>>     exim-conf на mta.org.ua <mailto:exim-conf на mta.org.ua>
>>     http://mta.org.ua/mailman/__listinfo/exim-conf
>>     <http://mta.org.ua/mailman/listinfo/exim-conf>
>>     http://mta.org.ua/exim-conf/
>>     http://mta.org.ua/exim-conf/__m4/README
>>     <http://mta.org.ua/exim-conf/m4/README>
>>     rsync://rsync.mta.org.ua/exim-__conf/
>>     <http://rsync.mta.org.ua/exim-conf/>
>>
>>
>>
>>
>> _______________________________________________
>> exim-conf mailing list
>> exim-conf на mta.org.ua
>> http://mta.org.ua/mailman/listinfo/exim-conf
>> http://mta.org.ua/exim-conf/
>> http://mta.org.ua/exim-conf/m4/README
>> rsync://rsync.mta.org.ua/exim-conf/
>>
> 
> 


-- 
Best wishes Victor Ustugov  mailto:victor на corvax.kiev.ua
public GnuPG/PGP key:       http://victor.corvax.kiev.ua/corvax.asc
ICQ UIN: 371808614          JID: corvax_at_nb на jabber.corvax.kiev.ua
nic-handle: CRV-UANIC



Подробная информация о списке рассылки exim-conf