送信ドメイン認証「SPF」とは

プロモーションを含みます。
プロモーションを含みます。

SPF とは、送信元メールサーバの正当性を確認する仕組みのことです。

なりすましメール対策で利用されています。

また、SPFは「送信ドメイン認証」と呼ばれています。

SPF は、「Sender Policy Framework」の頭文字をとった略語

SPF を直訳すると「メール送信者に対する方策」となります。

もう少し詳しく説明していきます。

SPF を利用したメール送受信の流れ

SPF を利用しない場合と、利用した場合の違いについてみてみましょう。

通常のメール送受信の流れ(SPFを利用しない)

  1. A さんが B さんにメールを送る
  2. A さんのメールが、A さん側のメールサーバ (送信元メールサーバ) に届く
  3. A さん側のメールサーバから B さん側のメールサーバ (宛先メールサーバ) へメールが配送される
  4. B さん側のメールサーバから、B さんへメールを配送する

SPFを利用したメール送受信の流れ

  1. A さんが B さんにメールを送る
  2. A さんのメールが、送信元メールサーバに届く
  3. 送信元メールサーバから、宛先メールサーバへ配送される
  4. 宛先メールサーバが送信元ドメインの DNS サーバに、送信元メールサーバの IP アドレスの開示要求をする(メールサーバの正当性を調べる)
  5. 送信元ドメインの DNS サーバが宛先メールサーバへ、送信元メールサーバの IP アドレスを返答する
  6. 宛先メールサーバは、送信元ドメインの DNS サーバから送られてきた IP アドレスを基にMAIL FROM のメールアドレスのドメインを検証し、正当性が確認できれば宛先メールサーバは B さんへメールを配送し、正しくなければ迷惑メールなどとして取り扱う

上記が SPF (メール送信者に対する方策・仕組み) です。

▼ 以下は、SPF の流れ(簡易図)です。

SPF は、送られてきたメールが正当なドメインから送られてきたものかを確認する仕組みのことです。

SPF 設定方法について

では、SPF は具体的にどのように設定されているのか。

送信元ドメインの DNS サーバのゾーンデータに、送信元メールサーバの IP アドレスを、 TXT レコードとして登録しておきます。

▼ TXT レコードの記述例

example.com. IN TXT "v=spf1 ip4:192.168.123.1 -all"

仕込みはこれだけです。(これは、あくまで一例です。)

SPF 有効性の確認方法

DNS サーバに設定した SPF レコードの確認と有効性の検証は、以下のサイトで実施することができます。

SPF Query Tool
https://www.kitterman.com/spf/validate.html

上記サイトの使い方

以下のメッセージが表示されれば、SPF 検証テストに合格です。

SPF record passed validation test with pySPF
(SPF レコードが pySPF で検証テストに合格しました)

最後に

昨今では、ほとんどの送信元ドメインに SPF が導入されています。

むしろ SPF が導入されていなければ、送信したメールが受信者側で迷惑メールとして扱われてしまう可能性が高くなるので、導入していないところは、ほぼないと言ってもいいでしょう。

他にも、送信元を偽った「なりすましメール」を防ぐ手段として「DKIM」や「DMARC」などがありますが、これらについては特に日本ではあまり普及していないようです。

ちなみに SPF は、RFC 7208 で規定されています。

RFC 7208 - Sender Policy Framework (SPF) for Authorizing Use of Domains in Email, Version 1 日本語訳
この記事を書いた人
TerraYuuki

ITインフラエンジニアのアウトプットブログ。仕事や資格勉強などを通じて得たIT技術やWindows Tips、ガジェットレビュー記事を主に書いています。

written by Terra Yuuki
PR
インターネット
てこエンジニアブログ