В моем Postfix я пытаюсь отклонить отправителей, которые используют поддельные адреса из доменов, управляемых локально. Но я хочу выполнить проверку только для локальных доменов, а не для всех отправителей.
Так что если example.com
управляется локально, я хочу заблокировать unknown_address@example.com
и разреши known_address@example.com
и anything@gmail.com
проходить.
Я заглянул в smtpd_sender_restrictions
с участием reject_unverified_sender
но я не вижу, как делать проверку только для локальных доменов.
Параметр, который вы ищете: smtpd_reject_unlisted_sender
smtpd_reject_unlisted_sender (по умолчанию: нет)
Запросить, чтобы SMTP-сервер Postfix отклонял почту от неизвестных адресов отправителя, даже если нет явного
reject_unlisted_sender
ограничение доступа указано. Это может замедлить распространение поддельной почты от червей или вирусов.Адрес всегда считается "известным", если он соответствует виртуальный (5) псевдоним или канонический (5) отображение.
- Домен отправителя совпадает $ mydestination, $ inet_interfaces или $ proxy_interfaces, но отправитель не указан в $ local_recipient_maps, и $ local_recipient_maps не равно нулю.
- Домен отправителя совпадает $ virtual_alias_domains но отправителя нет в списке $ virtual_alias_maps.
- Домен отправителя совпадает $ virtual_mailbox_domains но отправитель не указан в $ virtual_mailbox_maps, и $ virtual_mailbox_maps не равно нулю.
- Домен отправителя совпадает $ relay_domains но отправитель не указан в $ relay_recipient_maps, и $ relay_recipient_maps не равно нулю.
Эта функция доступна в Postfix 2.1 и новее.
Вы можете включить его, указав smtpd_reject_unlisted_sender = yes
в main.cf
. Другой способ ставится reject_unlisted_sender
в smtpd_*_restriction
стек.
Дополнительное примечание: какая разница между reject_unverified_sender и reject_unlisted_sender?
Разница обоих методов заключается в том, как они выполняют проверку.
reject_unverified_sender
проверит отправителя по telnet на удаленный сервер MX и выполнит незавершенную транзакцию SMTP с получателем = unverified_sender. Если удаленный сервер не отклоняет получателя, постфикс предполагает, что отправитель был проверен. Видеть Как работает проверка адреса в документации по postfix.reject_unlisted_sender
проверит отправителя, проверив действительного получателя в ВСЕ доменные классы (локальный, виртуальный псевдоним, виртуальный почтовый ящик и реле.