Я начал использовать policyd-spf и использую следующее ограничение получателя. Я бы хотел, чтобы отправители, прошедшие проверку SPF, пропустили любые проверки RBL. К сожалению, этого не происходит.
smtpd_recipient_restrictions =
permit_mynetworks,
permit_sasl_authenticated,
reject_non_fqdn_sender,
reject_non_fqdn_recipient,
reject_unauth_destination,
reject_unauth_pipelining,
reject_invalid_hostname,
check_policy_service unix:private/policy-spf
check_sender_access mysql:/etc/postfix/mysql_sender_checks.cf
reject_rbl_client zen.spamhaus.org,
reject_rbl_client bl.spamcop.net,
reject_rbl_client cbl.abuseat.org,
reject_rbl_client dnsbl.sorbs.net
Неудачные проверки SPF верны, но, как вы можете видеть из системного журнала, policyd-spf сообщает, что он пройден, но продолжает проверку RBL:
Mar 29 13:15:51 policyd-spf[6442]: Pass; identity=mailfrom; client-ip=69.171.232.144; helo=mx-out.facebook.com; envelope-from=REDACTED; receiver=REDACTED
Mar 29 13:15:51 postfix/smtpd[5971]: NOQUEUE: reject: RCPT from 69-171-232-144.outmail.facebook.com[69.171.232.144]: 554 5.7.1 Service unavailable; Client host [69.171.232.144] blocked using dnsbl.sorbs.net; Currently Sending Spam See: http://www.sorbs.net/lookup.shtml?69.171.232.144; from=<REDACTED> to=<REDACTED> proto=ESMTP helo=<mx-out.facebook.com>
Кто-нибудь знаком с postfix-policyd-spf-python, и если да, можете ли вы объяснить, почему он работает не так, как ожидалось.
С помощью:
Debian GNU/Linux 7
Linux XXXXX 3.2.0-4-amd64 #1 SMP Debian 3.2.82-1 x86_64 GNU/Linux
Postfix 2.9.6-2
postfix-policyd-spf-python 1.0.2
Согласно журналам, сообщение было отклонено списком dnsbl.sorbs.net
.
Как описано во Введении из Использование SORBS
Как потенциальный пользователь SORBS перечисляет наиболее важный вопрос, который вам нужно задать себе: Понимаю ли я критерии включения в списки, которые я планирую использовать?
Затем вам нужно принять ряд вариантов / решений:
- Насколько агрессивно вы хотите бороться со спамом?
- Вы хотите доверять администраторам SORBS, а также сценарию тестирования?
- Доверяете ли вы сценариям, которые администраторы SORBS используют для определения плохо настроенных хостов?
Список dnsbl.sorbs.net
- это агрегированная зона, содержащая все зоны SORBS, кроме spam.dnsbl.sorbs.net). Это означает, что ваша установка очень агрессивна в борьбе со спамом, то есть у вас, вероятно, будут ложные срабатывания, как вы уже делали.
Хотя правда, что (от Параметры конфигурации Postfix, smtpd_recipient_restrictions
)
Ограничения применяются в указанном порядке; первое совпадающее ограничение побеждает.
в check_policy_service
вызывает только отправку запроса на указанный сервер политики, а не напрямую reject
или permit
. Тогда ваш python-policyd-spf
может вернуться reject
если PermError_reject = True
, иначе он просто добавит Received-SPF
заголовок и ограничения на обработку продолжаются.
Вы должны прочитать Использование SORBS для списка доступных зон. Затем вы можете решить, какие зоны лучше всего подходят для ваших нужд, и добавить их отдельно, например
smtpd_recipient_restrictions =
. . .
reject_rbl_client relays.dnsbl.sorbs.net,
reject_rbl_client web.dnsbl.sorbs.net,
reject_rbl_client escalations.dnsbl.sorbs.net,
reject_rbl_client block.dnsbl.sorbs.net,
reject_rbl_client zombie.dnsbl.sorbs.net,
reject_rbl_client dul.dnsbl.sorbs.net,
reject_rbl_client noserver.dnsbl.sorbs.net,
reject_rbl_client rhsbl.sorbs.net,
. . .
или вы могли бы поменять местами dnsbl.sorbs.net
в менее агрессивную агрегатную зону safe.dnsbl.sorbs.net
.