web-dev-qa-db-ja.com

DKIMではハードに失敗し、SPFではソフトに失敗するドメインの適切なDMARC構成とは

私のドメインから送信されたメッセージは常にDKIM署名され、受信者によってすぐに破棄されるべきではないメッセージは署名されます。ただし、厳密なSPFの適用により、内部のメール転送ルールやその他の種類の実装の詳細が誤った破損を引き起こすという問題が発生します。受信システムがDKIM障害を絶対的な「配信の停止、確かにスパム」として処理するように、SPF、DKIM、およびDMARCレコードの適切なコンステレーションは何ですか?SPFは単なるヒントとしてですか?

1
Glyph

DKIMまたはSPFのいずれかalignedの場合、つまりFromヘッダーと一致する場合、DMARCが通過するのは設計によるものです。 DKIMアライメントは転送に耐えますが、SPFアライメントはそうではないことが知られています。メールを転送するサービスはメールを別のエンベロープに入れる必要があります。つまり、独自のMAIl FROMReturn-Path)アドレスを使用します。 SPF自体が渡されたにもかかわらず、アライメント。

構成について:

  • DKIMを使用してすべてのメールに署名し、DKIMレコードを配置し、DKIM署名をFromヘッダーに揃えます。 DKIMテストのように、ハード/ソフトDKIMの失敗などはありません。署名をDNSから公開された公開キーと比較するだけです。
  • 署名がない場合、DKIMだけでは、署名が必要かどうかを判断する機能がありません。ここにDMARCが必要です。DMARCポリシーにp=rejectを含めることで、DKIMを強制できます。
  • 以前の設定を行うと、[〜#〜] spf [〜#〜]は、Fromヘッダーの保護との関連性が低くなります。たとえば、持っていても大丈夫です。 ~all SPFでのハード障害を防ぎ、エンベロープドメインを部分的に保護しないままにします。 DMARCはSPFを通過させて整列させる必要があるため、SPFsoftfailで失敗しますが、DKIMを介して整列されている限り問題ありません。

DKIMを完全に厳密にしたい場合、整列して渡すSPFだけでDMARCパスも作成されることに注意してください。 DKIMなしでDMARCを常に失敗させたい場合は、別のドメインをエンベロープ送信者として使用し、v=spf1 -all SPFポリシーを設定して、このドメインをエンベロープ送信者として完全に使用しないようにすることができます。ただし、これは一般的な構成ではなく、一部のスパムフィルターでは見栄えが悪くなる可能性があります。

5
Esa Jokinen