Назад | Перейти на главную страницу

Postfix Изменить тему в зависимости от получателя

Мы используем postfix в качестве почтового ретранслятора. Я пытаюсь изменить тему электронного письма в зависимости от адреса получателя. Похоже, что check_header - это, возможно, инструмент, который мне нужен, но я не могу фильтровать его по получателю, а заменять его по теме.

Вероятно, вам понадобится фильтр содержимого.

В Документация Postfix по встроенным фильтрам (включая header_checks) указывает:

«Проверка заголовка / тела не может зависеть от получателя сообщения».

Разница между фильтром содержимого и milter в том, что milter происходит перед очередью:

Postfix: контент-фильтр против milter

Ты можешь использовать header_checks чтобы отправлять в рассматриваемый фильтр только электронные письма с привязкой к получателю (чтобы избавить постфикс от лишней работы):

Как переписать тему письма в постфиксе для исходящей почты, если От содержит конкретный адрес?

Это можно сделать с помощью транспортов и проверок заголовков.

В файле / etc / postfix / transport добавьте:

destination@address.com custom_transport:

Это активирует конкретный транспорт для желаемого получателя, который затем будет связан с изменениями темы. Замените destination@address.com фактическим адресом. Имя custom_transport произвольно, но все ссылки должны иметь одно и то же имя.

В /etc/postfix/main.cf добавьте:

header_checks = regexp:/etc/postfix/header_checks

transport_maps = hash:/etc/postfix/transport

Эти строки будут включать проверки заголовков и транспортные карты соответственно.

В /etc/postfix/master.cf добавьте:

custom_transport ... smtp 
  -o smtp_header_checks=regexp:/etc/postfix/rewrite_headers

Замена ... остальными параметрами транспорта smpt, уже определенными в этом файле.

Наконец, создайте файл / etc / postfix / rewrite_headers (имя произвольное, но оно должно совпадать с именем в строке, добавленной в главный файл) со следующим содержимым:

/^Subject:(.*)/ REPLACE Subject: Desired subject text

Это заменит тему на желаемую.

Перезагрузите или перезапустите postfix.

Ссылки: http://www.postfix.org/header_checks.5.html