web-dev-qa-db-ja.com

policyd-spfは「?all」SPFレコードを含むメールを拒否しています

クライアントの1人が、顧客の1人からメールを拒否されています。送信者のSPFレコードは次のとおりです。

v=spf1 +a +mx +ip4:12.34.56.78 ?all

メールは12.34.56.78から発信されていませんが、AFAIUの「?all」は私のメールサーバー(postfix)がそれを受け入れる必要があることを意味します。あれは正しいですか?

'/etc/postfix-policyd-spf-python/policyd-spf.conf'を変更して、これらの電子メールを受け入れるようにすることはできますか?

私はこれをすべきですか?

FWIWpyエラーログのメッセージは次のとおりです。

Message rejected due to: access neither permitted nor denied.

前もって感謝します。

更新:

私のSPFポリシーは次のとおりです。

HELO_reject = SPF_Not_Pass
Mail_From_reject = Fail

メールはHELOの段階で拒否されていましたが、現在は「失敗」に変更しています。

3
DaedalusFall

メールは12.34.56.78から発信されていませんが、AFAIUの「?all」は私のメールサーバー(postfix)がそれを受け入れる必要があることを意味します。あれは正しいですか?

はい、ただしshouldではなく、意図された

here から、NeutralThe SPF record specifies explicitly that nothing can be said about validityを意味することがわかります。

ただし、postfixのデフォルトのSPFポリシーは次のとおりです。

HELO_reject = SPF_Not_Pass

sPFチェックに合格しなかった場合(つまり、Fail、Softfail、Hardfail ...)、PostfixがHELOを拒否することを意味します。

SPFチェックが失敗した場合でも電子メールを受け入れるようにpostfixSPFポリシーを変更できます。

6
cuonglm

あなたは正しい方向に進んでいます。すべてのポリシーを含めることは、送信者がメールの処理方法を希望することを単に示すことです。実際にどのように処理されるかは、システムによって決まります。

ポリシーを投稿していませんが、ポリシーを変更することで、このドメインまたはこの条件を許可するように設定できます。

参照: http://manpages.ubuntu.com/manpages/lucid/man5/policyd-spf.conf.5.html

一部のポリシー条件では、SPFを特定できない場合、電子メールが拒否されることに注意してください(SPFレコード自体のフォーマットエラーやDNSの問題など)。

2
jeffatrackaid