SPFレコードの仕組みと設定方法|なりすましメールを防ぐDNS認証技術を理解する

SPFレコードの仕組みと設定方法

SPFレコードの仕組みと設定方法

メールシステムを運用していると、「なりすましメール」や「送信ドメイン認証」という言葉を目にすることがあります。

近年は迷惑メール対策が強化されており、単にメールサーバを構築しただけでは正常にメールが届かないことも珍しくありません。

その対策として広く利用されている仕組みの一つがSPF(Sender Policy Framework)です。

SPFはDNSを利用して「このドメインからメールを送信してよいサーバ」を公開する仕組みです。

本記事ではSPFレコードの仕組みや設定方法、確認方法、実務でよくあるトラブルについて解説します。

SPFとは

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

受信サーバはメールを受け取った際に、送信元ドメインのDNSへ問い合わせを行います。

そして、そのメールサーバが送信を許可されているか確認します。

なぜSPFが必要なのか

メールは送信元アドレスを簡単に偽装できます。

例えば次のような送信も技術的には可能です。


From: president@example.com

しかし実際には第三者が送信しているかもしれません。

SPFはそのようななりすましを防ぐために利用されます。

SPFの動作の流れ


送信サーバ
↓
メール送信
↓
受信サーバ
↓
DNS問い合わせ
↓
SPF確認
↓
受信判定

受信サーバはDNS上のSPF情報を確認します。

SPFレコードはTXTレコードで登録する

現在のSPFはTXTレコードとして登録します。

例です。

example.com. IN TXT "v=spf1 mx -all"

これが最も基本的なSPF設定です。

SPFレコードの構成

v=spf1 mx -all

各要素には意味があります。

意味
v=spf1SPFバージョン
mxMXサーバを許可
-allその他を拒否

mxとは

MXレコードで指定されたサーバからの送信を許可します。

v=spf1 mx -all

最も利用される設定です。

aとは

AレコードのIPアドレスを許可します。

v=spf1 a -all

Webサーバ兼メールサーバで利用されることがあります。

ip4とは

特定のIPv4アドレスを許可します。

v=spf1 ip4:203.0.113.10 -all

指定したIPのみ許可されます。

ip6とは

IPv6アドレスを指定します。

v=spf1 ip6:2001:db8::10 -all

includeとは

外部サービス利用時によく利用します。

v=spf1 include:_spf.google.com -all

Google Workspaceなどで利用されます。

Google Workspaceの例

v=spf1 include:_spf.google.com ~all

Google公式が推奨する設定です。

Microsoft 365の例

v=spf1 include:spf.protection.outlook.com -all

Microsoft公式の設定例です。

-allと~allの違い

実務でよく質問されます。

-all


完全拒否

~all


SoftFail

警告扱いになります。

SPF確認方法

digコマンドで確認できます。

$ dig example.com TXT

結果例です。
"v=spf1 mx -all"

nslookupで確認する

> nslookup -type=TXT example.com

Windowsでも確認可能です。

SPF判定結果

受信サーバは次のような結果を返します。

結果意味
Pass許可された送信元
Fail拒否対象
SoftFail警告
Neutral判定保留

よくある設定ミス① SPF未設定

メールは送信できますが信頼性が低下します。

迷惑メール判定の原因になります。

よくある設定ミス② SPFレコード複数登録

SPFは1つだけ登録する必要があります。

誤りです。

v=spf1 mx -all
v=spf1 include:_spf.google.com -all

複数登録は無効になる場合があります。

よくある設定ミス③ 外部サービス追加忘れ

メール配信サービス利用時によく発生します。

  • Google Workspace
  • Microsoft 365
  • SendGrid
  • Mailchimp

SPFへ追加する必要があります。

よくある設定ミス④ IP変更後の未更新

メールサーバ移行後です。


旧IP
↓
登録済

新IP
↓
未登録

SPF失敗になります。

メールが迷惑メールになる理由

SPFだけではありません。

  • SPF
  • DKIM
  • DMARC
  • 逆引きDNS

複数要素で評価されています。

実務で覚えておきたいポイント

  • SPFは送信元認証技術である
  • TXTレコードとして登録する
  • なりすまし対策に利用される
  • Google WorkspaceやMicrosoft 365でも必須
  • SPFレコードは1つだけ登録する
  • メール障害時はSPFも確認する

まとめ

SPFはメール送信元の正当性を確認するための重要な仕組みです。

DNSのTXTレコードを利用して送信を許可するサーバを公開し、なりすましメール対策を実現しています。

現在ではGoogleやMicrosoftをはじめ、多くのメールサービスがSPFを重視しているため、メール運用において必須の知識と言えるでしょう。

メール障害や迷惑メール判定が発生した場合は、まずSPF設定を確認することが重要です。