Postfix Добавить пользовательский заголовок на основе результатов MySQL
У меня есть быстрый вопрос о доступе к базе данных MySQL через Postfix и добавлении настраиваемого заголовка в электронное письмо на основе результата. Итак, мы настроили сервер Ubuntu с Postfix, который использует БД MySQL для виртуальных адресов, теперь мой вопрос таков: можно ли найти адрес в таблице виртуальных адресов и, если он соответствует критериям поиска, добавить пользовательский заголовок в электронная почта? Нам также необходимо, чтобы это происходило, когда приходит электронное письмо, если к учетной записи электронной почты прикреплены экспедиторы.
Я нашел ресурсы о том, как добавить пользовательские заголовки через Postfix: http://saaboke.com/?p=22, но я не знаю, как включить это в MySQL. Любые предложения будут ценны.
Спасибо за ваше время.
1 ответ
Это легко. Вам нужно что-то добавить в
smtp_recipient_restrictions = (...), check_recipient_access mysql:/etc/postfix/header_based_on_recipient.mysql, (...), permit
/etc/postfix/header_based_on_recipient.mysql
должен содержать все необходимое для запроса MySQL, как описано здесь. Я не могу дать вам шаблон, так как это зависит от того, что вы пытаетесь запросить.
Результат запроса должен быть пустым, чтобы не добавлять заголовок. Или результат запроса должен быть
PREPEND X-fancy-new-header: Found you in the database
Если вам нужно более одного заголовка, это не применимо. В этом случае вы должны рассмотреть возможность использования интерфейса MILTER с самодельной мельницей. Выполнение таких расширенных задач не является задачей Postfix и делегируется внешним программам, поскольку Postfix является почтовой программой, а не переписчиком сообщений.
Мне очень жаль - как любителю Postfix - рекомендовать Exim для расширенной обработки сообщений, поскольку такие вещи встроены в Exim.