Задача. Подключённая платформа сдаёт почту по SMTP, править её ради заголовков нельзя, — а её письма должны уходить своим адресом отправки, а не тем, что у узла по умолчанию.
Из чего складывается:
Области у составляющих разные. Все три действуют через блок <source>, а список правил у источника ровно один: если источник обслуживает несколько платформ, их правила живут в одном упорядоченном списке.
Как они взаимодействуют. Три пути к одной цели, и выбирать надо по тому, что у платформы устойчиво. Обратный адрес обычно устойчивее всего и ничего не стоит. Адрес подключения надёжен, только если он не общий. Своя точка подачи надёжнее всего, но стоит адреса и слушателя на платформу. Все три стоят ниже того, что платформа скажет сама: начни она ставить X-Virtual-MTA там, где разрешён process-x-virtual-mta, схема перестанет действовать молча.
Как выбрать способ:
| Способ | Устойчиво, если | Цена |
|---|---|---|
| по обратному адресу | домен возврата у платформы постоянный | ничего |
| по точке подачи | у платформы свой адрес или порт подачи | адрес и слушатель на платформу |
| по адресу подключения | платформа подключается с адреса, который ни с кем не делит | ничего, но хрупко на чужой инфраструктуре |
<pattern-list platforms> mail-from /@bounce\.platform-a\.com$/ virtual-mta=vmta-a mail-from /@bounce\.platform-b\.com$/ virtual-mta=vmta-b </pattern-list> <source 0/0> pattern-list platforms </source>
pmta show queues '*/vmta-a'