web-dev-qa-db-ja.com

接尾辞はRBLクエリをキャッシュしますか?

これは私を狂わせています…LinuxDebian + postfix…/ etc/postfix/main.cfには次の行があります:

smtpd_recipient_restrictions =
    check_recipient_access hash:/etc/postfix/access,
    reject_invalid_hostname,
    reject_non_fqdn_recipient,
    reject_non_fqdn_sender,
    reject_unauth_destination,
    reject_unauth_pipelining,
    reject_unknown_recipient_domain,
    reject_rbl_client cbl.abuseat.org,
    reject_rbl_client sbl-xbl.spamhaus.org,
    check_policy_service unix:private/policyd-spf,
    check_policy_service inet:127.0.0.1:10023,
    permit_auth_destination,
    reject

最近のpostfixは、単一のIPからの着信メッセージを拒否しています。

 [email protected]
   SMTP error from remote mail server after RCPT TO:<[email protected]>:
   Host mail.server.ext [123.123.123.123]: 554 5.7.1 Service unavailable; Client Host [234.234.234.234] blocked using cbl.abuseat.org; Blocked - see http://cbl.abuseat.org/lookup.cgi?ip=234.234.234.234

ええと… http://cbl.abuseat.org/lookup.cgi?ip=234.234.234.234 234.234.234.234のブラックリストは報告されていません(明らかにIP 234.234.234.234は実際のものではありません)。

同じ理由でこれまでに12通の電子メールがブロックされましたが、手動でRBLにクエリを実行するたびに、IPはクリーンであると報告されます。

ポストフィックスキャッシングクエリはRBLにありますか?何が足りないのですか?

よろしくお願いします。

2
Gabriele

最上位層の観点から、PostfixはDNSルックアップ(RBLを含む)を行うためにlibcリゾルバーに依存しているため、動作はライブラリによって異なります。たとえば、接尾辞は常にNS /etc/resolv.conf.で定義されたサーバーを介してルックアップを実行します

NSサーバーにキャッシュメカニズムがある場合、postfixはキャッシュ結果も取得します。これは、次の場合にも発生します。プロバイダーには " DNSハイジャック "(DNSパケットがNSサーバー)に転送されました。この場合、キャッシュもヒットします(有効になっている場合)。

DNSルックアップの出力を確認するには、Digコマンドを使用できます。たとえば、IPアドレス216.154.195.36がcbl.abuseat.orgにリストされているかどうかを確認します。

$  Dig  36.195.154.216.cbl.abuseat.org

; <<>> Dig 9.10.1-P1 <<>> 36.195.154.216.cbl.abuseat.org
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 48609
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1

戻り値がNXDOMAINの場合、IPアドレスはリストされていません。


最下層の観点から、各smtpdプロセス 独自のDNSBLルックアップ結果をキャッシュしています 。これらの結果は、他のPostfixプロセスと共有されません。各smtpdプロセスは、 max_use または max_idle に達するまで再利用されます。 smtpdプロセスが停止すると、RBLキャッシュも失われます。新しいsmtpdプロセスがmasterデーモンによって作成されたとき、 新しい構成を取得しますmain.cfmax_idlemax_useを含む)。したがって、実際には接尾辞を再起動する必要はありません。

3
masegaloeh