Вот что я хочу достичь с помощью постфикса: мы часто делаем копии нашей производственной системы, которая отправляет почту поставщикам, пользователям и т. Д. Иногда после копирования наш технический специалист забывает отключить отправку электронной почты, поэтому тестовая система начинает отправлять электронную почту поставщикам. и т. д. вызывая путаницу. Чтобы предотвратить это, я попросил нашу команду по обмену не ретранслировать почту с непроизводственного сервера. Тем не менее, нам все еще нужна возможность тестирования из наших систем разработки и контроля качества, поэтому я установил postfix в качестве сервера ретрансляции для всех остальных систем, но я хочу убедиться, что postfix доставляется только небольшому списку разработчиков и тестировщиков. Таким образом, никакая мошенническая или непреднамеренная почта не попадет к непреднамеренному получателю. Таким образом, отклоняйте все письма, кроме людей из списка. Я пробовал различные ограничения, но не видел ни одного, позволяющего добиться того, что я пытаюсь сделать. Я надеюсь, что кто-нибудь сможет помочь. Спасибо.
Это можно сделать с помощью Postfix транспорт (5) (с помощью transport_maps
).
developer1@example.com :
developer2@example.com :
tester3@example.com :
* error:You should not send mail from non-production servers.
Кроме того, вы можете рассмотреть возможность пересылки всей почты из этой тестовой сети в общий почтовый ящик для разработчиков и тестировщиков. Таким образом, вашим техническим специалистам вообще не придется помнить об изменении адресов, что снизит их рабочую нагрузку. Я предполагаю, что этот сервер Postfix является просто шлюзом SMTP для вашей тестовой сети и не имеет других целей. В этом примере вы можете забыть transport_maps
и использовать virtual_alias_maps
, вместо этого:
virtual_alias_maps = regexp:/etc/postfix/virtual-regexp
Затем добавьте регулярное выражение с подстановочными знаками для каждого адреса в /etc/postfix/virtual-regexp
:
/.+@.+/ test-team.shared@example.com
Когда я искал подобное решение, я нашел это:
Если вы не доверяете этому проекту, вы можете написать собственное пополнение. Использует стандартный постфиксный интерфейс http://www.postfix.org/SMTPD_POLICY_README.html В документации есть даже пример фильтра perl.
Postfix спрашивает фильтр о том, что делать с каждым электронным письмом, и фильтр может решить. Таким образом, вы можете реализовать любую логику, какую захотите.