web-dev-qa-db-ja.com

Postfix-SPFパス後にRBLチェックをスキップする

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チェックは正しいですが、syslogからわかるように、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
1
oobayly

ログによると、メッセージはリストdnsbl.sorbs.netによって拒否されました。

SORBSの使用 からの紹介で説明したように

SORBSリストの見込みユーザーとして、自分自身に尋ねる必要のある最も重要な質問は次のとおりです。使用する予定のリストのリスト基準を理解していますか?

次に、いくつかの選択肢/決定を行う必要があります。

  1. スパムを阻止することにどれほど積極的になりたいですか?
  2. SORBS管理者とテストスクリプトを信頼しますか?
  3. SORBS管理者が不適切に構成されたホストを識別するために使用するスクリプトを信頼しますか?

リストdnsbl.sorbs.netは、spam.dnsbl.sorbs.netを除くすべてのSORBSゾーンを含む集約ゾーンです。つまり、セットアップはスパムの阻止に非常に積極的です。つまり、すでに行ったように、誤検知が発生する可能性があります。

(from Postfix Configuration Parameterssmtpd_recipient_restrictions)というのは本当ですが

制限は、指定された順序で適用されます。一致する最初の制限が勝ちます。

check_policy_serviceは、指定されたポリシーサーバーにクエリを送信するだけで、直接rejectまたはpermitは送信しません。次に、python-policyd-spfPermError_reject = Trueの場合はrejectを返すことができます。それ以外の場合は、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に交換することもできます。

1
Esa Jokinen