メインコンテンツへ
短.be

SPF / DKIM

メールの送信元を認証する技術。なりすましメールやフィッシングの防止に不可欠な DNS ベースの仕組み。

2026年8月24日 · 約 2 分で読めます

セキュリティ

SPF (Sender Policy Framework) と DKIM (DomainKeys Identified Mail) は、メールの送信元ドメインが正当であることを検証するための認証技術です。両者とも DNS レコードを使って設定し、なりすましメール (スプーフィング) の防止に役立ちます。

SPF は「このドメインからメールを送信できるサーバーの IP アドレスはこれだけです」と DNS の TXT レコードに宣言する仕組みです。受信サーバーは送信元 IP アドレスが SPF レコードに含まれているかを照合しますが、結果は合否の 2 値ではなく、RFC 7208 では pass・fail・softfail・neutral・none・temperror・permerror の 7 種類が定義されています。fail は「そのホストにこのドメインを使う権限はない」というドメイン保有者側の明示的な表明であり、そのメールを拒否するかどうかは受信側のポリシーに委ねられています。逆に pass も、そのホストがドメインを使う権限を持っていたことしか示さず、メールの内容が安全であることの証明にはなりません。

DKIM はメールに電子署名を付与する仕組みです。送信サーバーは本文と、署名対象に選んだヘッダーフィールドのそれぞれについてハッシュ値を計算し、秘密鍵で署名します。公開鍵は「セレクタ._domainkey.ドメイン名」という形の名前で TXT レコードとして DNS に公開され、受信サーバーはそれを取得して署名を検証します。検証が通って言えるのは、署名された範囲の内容が署名後に変わっていないこと、そして署名ドメインがそのメールについて一定の責任を引き受けたことです。RFC 6376 は、それ以上のことはメールについて何も主張しないと明記しています。

短縮 URL を含むメールマーケティングでは、SPF と DKIM の設定が特に重要です。短縮 URL は行き先のドメイン名が隠れるため、受信者はリンクの文字列だけでメールの正当性を判断できません。送信ドメインの認証を整えることは、その足りない分を送信側で補う手立てになります。ただし境目は明確にしておく必要があります。SPF と DKIM が検証するのは送信ドメインであって、本文に書かれた短縮 URL の行き先ではありません。認証を通ったメールに危険なリンクが含まれていることもあるため、受信者側にはリンク先を事前に確かめる習慣が別途必要です。到達率については Google が、2024 年 2 月 1 日以降は Gmail アカウント宛に送るすべての送信者に SPF または DKIM の設定を求め、要件を満たさないメールは期待どおりに配信されない場合やスパムとして扱われる場合があると案内しています。

SPF と DKIM に加えて、DMARC (Domain-based Message Authentication, Reporting and Conformance) を設定すると、認証に失敗したメールの取り扱いを受信側に要請できます。ポリシーの値は none (特別な処理を求めない)、quarantine (疑わしいものとして扱う)、reject (拒否する) の 3 種類で、いずれも要請であり、RFC 7489 は最終的な処置が常に受信側のローカルポリシー次第であると述べています。DMARC でつまずきやすいのは識別子の整合 (alignment) です。SPF または DKIM が pass しても、その認証済みドメインが受信者に見える From ヘッダーのドメインと揃っていなければ DMARC は通りません。配信サービスの既定ドメインのまま送っていると、SPF と DKIM は成功しているのに DMARC だけ失敗する状態になりがちです。個人の Gmail アカウント宛に 1 日 5,000 通を超えて送る送信者に対しては、Google が SPF と DKIM の両方に加えて DMARC レコードの設定 (ポリシーは none でも可) を求めています。

X でシェアはてブ

この記事は役に立ちましたか?

関連用語

関連記事

よくある質問

SPF と DKIM は両方設定すべきですか?
両方を設定しておくのが実務的です。役割が違うだけでなく、壊れ方も違います。SPF は転送されると送信元 IP が転送サーバーのものに変わるため、多くの転送やメーリングリスト経由では失敗します。DKIM の署名は内容が変更されなければ転送先まで残るので、転送を挟む経路では DKIM が支えになります。逆に本文や署名対象のヘッダーを書き換える中継を通ると DKIM の署名は無効になります。片方だけでは埋まらない穴が互いにあるという理由で両方を設定し、さらに両者の結果を From ヘッダーと結び付ける DMARC を加えるのが望ましい構成です。
SPF/DKIM を設定しないとどうなりますか?
Gmail の場合、2024 年 2 月 1 日以降は Gmail アカウント宛に送るすべての送信者に SPF または DKIM の設定が必要で、個人の Gmail アカウント宛に 1 日 5,000 通を超える送信者には SPF と DKIM の両方および DMARC の設定が必要です。要件を満たさないメールについて Google は、期待どおりに配信されない場合やスパムとして扱われる場合があり、5.7.26 のエラーで拒否されることもあると案内しています。他の受信側がどう扱うかは、それぞれのポリシー次第です。
SPF/DKIM の設定は難しいですか?
DNS レコードの追加が必要ですが、メール配信サービス (SendGrid、Amazon SES など) を使っている場合は、サービスの管理画面に設定手順が用意されています。レコードを書く作業自体は短時間で終わることが多く、そのあとに DNS の反映を待つ時間が必要です。つまずきやすいのは SPF の評価で行われる DNS 参照の回数です。RFC 7208 は include や a、mx などの項目の合計を 10 回までに制限することを実装に要求しており、これを超えると評価は permerror で終わります。配信サービスや計測ツールを増やすたびに include を足していくと上限に届くため、追加する前に既存の SPF レコードを整理してください。

知識を、実際のリンクで。

無料で URL を短縮する