Как я могу заблокировать исходящую почту на определенный адрес с помощью Postfix?
Мне частично удалось заблокировать исходящую электронную почту с помощью header_checks
. Однако header_checks не распространяется на BCC.
Я также протестировал это решение: http://www.linuxmail.info/postfix-restrict-sender-recipient/ но это не сработало.
Чтобы заблокировать кого-либо (локальных (команда mail / sendmail) системных пользователей и пользователей SMTP) от отправки на адрес электронной почты, на который вы не можете полагаться smtpd_recipient_restrictions
. Вам нужно поместить ограничение в qmgr
фаза. Для этого я обнаружил, что transport_maps
работает хорошо.
main.cf
:transport_maps = pcre:/etc/postfix/transport_maps
transport_maps
:/^user(\+[^@]+)?@host\.com/ discard:
/.*/ :
Возможно, есть лучшее решение, но оно работает для всех типов доставки. FYI, это регулярное выражение поддерживает user@host.com
и user+anything@host.com
предполагая +
разделитель. Это предотвращает To, CC и BCC.
Также убедитесь, что в вашем постфиксе включена поддержка pcre. В операционных системах на основе Debian (Ubuntu и т. Д.), Предоставляемых пакетом postfix-pcre.
Как описано в доступ (5)просто добавьте карту check_recipient_access в свой smtpd_recipient_restrictions; если вы хотите заблокировать этих получателей и для своих пользователей, обязательно поместите его перед allow_mynetworks и / или permission_sasl_authenticated.
smtpd_recipient_restrictions = check_recipient_access hash:/etc/postfix/bad_recipients, permit_mynetworks, reject_unauth_destination, permit
И в / etc / postfix / bad_recipients:
bad_user1@example.com REJECT We don't like him
bad_user2@example.org REJECT Delivery to this user is prohibited
Самый простой способ сделать это без поддержки регулярных выражений:
Добавьте это в main.cf, если его там еще нет:
transport_maps = хеш: / и т.д. / постфикс / транспорт
Добавьте эту строку в файл "/ etc / postfix / transport"
address_to_discard@example.com отменить
Запустить postmap
postmap / etc / postfix / транспорт
Перезагрузить постфикс
перезагрузка постфикса службы
У нас был вариант использования для этого сценария, когда нам нужно было заблокировать некоторых пользователей, получающих (согласных) рассылки из списка. Пользователи, которые отказались нажимать ссылку «Отписаться» в тех пользователь запросил рассылки (так что нет, это не был спам). Через некоторое время мы получили письма о злоупотреблениях от интернет-провайдеров, которые получали жалобы от этих странных ленивых пользователей, что было действительно трудоемкой ерундой. Поэтому мы решили создать карту для постфикса. Однако добавление их для REJECT создало новые проблемы с программным обеспечением, отправляющим им почту через postfix, поэтому в итоге мы вместо этого сопоставили это:
lazy_user@aol.com DISCARD Delivery to this user is ignored as a result of annoying abuse-responses from even lazier ISPs.