Мой вопрос, похоже, противоположен Как настроить postfix для проверки записи SPF только для доменов, которые я хочу check -
Как мне изменить свой сервер Postfix, чтобы он по умолчанию проверял SPF на входящие электронные письма, но позволял мне сохранять белый список доменов, которые могут обойти проверку?
Мой main.conf файл включает строфу:
smtpd_recipient_restrictions = check_policy_service inet:127.0.0.1:10031,
permit_mynetworks,
permit_sasl_authenticated,
reject_unauth_destination,
check_policy_service unix:private/spfpolicy
(10031 - это политика, кстати)
Мой файл master.conf включает строфу:
spfpolicy unix - n n - - spawn
user=nobody argv=/usr/bin/perl /usr/sbin/postfix-policyd-spf-perl
Я использую этот метод.
У меня есть список доменов из белого и черного списка:
/ etc / postfix / sender_checks
example.com REJECT Spam detected
example.org REJECT Spam detected
example.net OK
Этот файл должен быть хешироваться при его изменении.
postmap /etc/postfix/sender_checks
На хеш-карту ссылается check_sender_access
в директиве smtpd_recipient_restrictions
:
smtpd_recipient_restrictions =
reject_invalid_hostname
reject_unknown_recipient_domain
reject_unauth_pipelining
reject_non_fqdn_sender
reject_unknown_sender_domain
reject_non_fqdn_recipient
permit_mynetworks
permit_sasl_authenticated
reject_unauth_destination
check_sender_access hash:/etc/postfix/sender_checks
reject_rbl_client ix.dnsbl.manitu.net,
reject_rbl_client zen.spamhaus.org,
reject_rbl_client bl.spamcop.net,
reject_rbl_client b.barracudacentral.org,
reject_rbl_client dnsbl-1.uceprotect.net,
check_policy_service unix:private/policy-spf,
check_recipient_access hash:/etc/postfix/custom_replies
Вы можете переместить проверку check_sender_access
дальше вперед, если нужно.