おーみんブログ

C#, ASP.NET Core, Unityが大好きです。

【Outlook】SPFやDKIMの問題はないのに迷惑メールに入っちゃう事象との格闘。

はじめに

Outlookでメールを確認すると、特定のシステムから送られるメールが迷惑メールに入ってしまうという事象がありました。

結論

結論としては今回の僕の場合は「Outlook独自のアルゴリズムにて迷惑メールに振り分けられる」でした。 Outlookアルゴリズムは公開されていないので原因は分かりませんでしたが、Gmailアカウント等の他のソフトウェアで受信した場合は通常の受信トレイに来ていました。

それでは原因解析までの備忘録を以下に記載します。

あるあるだけどメール文を見直してみる

まずはあるあるではありますが、以下を見直してみます。

  • 本文内に外部リンクが多数ないか?
  • 件名が空ではないか?
  • メール本文に不適切な内容等がないか?

外部リンクを省いたり、件名もちゃんと値を入れたり、不適切な表現はなしにして試してみますがやはり迷惑メールへ...。

SPFDKIM認証はされているか

最近Gmailのセキュリティ強化(?)かでSPFレコードがDNSに設定されていない場合に迷惑メールに入るようになっていたのでそれかな?と思って確認。 がしかし...これも設定が行われていたので問題なし...。

メールヘッダを見てみる

仕方ないのでメールヘッダを見てみました。

Authentication-Resultsフィールドを見てみると、改めてではあるのですがspfdkimpassと表示されていました。

「うー--む。」
と、うなりながら各フィールドを調べていると、X-Forefront-Antispam-Reportというフィールドに以下のような値が入っていることを確認しました。

SCL:5
SFV:SPM

Microsoft社の公式ドキュメントによると、これらはそれぞれ以下の意味を表すとのことでした。

SCL:5 → メッセージの SCL (Spam Confidence Level) です。 値が高いほど、メッセージがスパムである可能性が高くなります(※1)。 SFV:SPM → スパム フィルタリングによって、メッセージがスパムとしてマークされました。

※1: 5という値は「スパム」として処理されます。

以下にそれぞれ調査に用いた公式ドキュメントを記載します。

【スパム対策メッセージヘッダ】 docs.microsoft.com

【SCLの値について】 docs.microsoft.com

つまりOutlookMicrosoft 365)的には迷惑メールと判定されているということになります。
しかしながら肝心なことに、Outlookアルゴリズムが分からないために何が原因なのかまでは掴めず...。

おわりに

メールヘッダを細かく見ることってあまりないのでかなり勉強になりました。 今後もより知識を広げていきたいと思います。