SPFとは、Sender Policy Frameworkの略。これは、電子メールのなりすましを検出し、不正な送信者が特定のドメインを代表してメッセージを送信することを防ぐために設計された電子メール認証プロトコルです。毎 39秒ごとに世界中でサイバー攻撃が発生しています。そのほとんどが電子メールを通じて行われています。SPFは、あなたのドメインが無許可の第三者メール送信者によって操作されないように、送信者を認証するのに役立ちます。SPF(送信者ポリシーフレームワーク)は、ドメイン名を使用したメールの送信を特定のIPのみに許可するメール認証プロトコルです。リスト外のIPアドレスは、SPFの失敗につながるため、受信者のメールボックスに届きません。DNSレコードで定義されるSPFポリシーは、あなたのドメインに代わってメッセージを送信することを許可されたメールサーバーをリストアップします。
SPFメールレコードは、受信サーバーがメールを認証するために一般的に検索して取得できる、あなたのドメインの検証済み送信者のリストを維持するのに役立ちます。 RFC 7208.これにより、ハッカーからメールドメインを保護し、フィッシング、スパム、なりすましメールなどの攻撃を防ぐことができます。SPFのようなメール認証技術は、メールドメインの保護に最適です。
主なポイント
- SPFは、DNSレコードを介して送信サーバーを検証することにより、なりすましを防止する重要な電子メール認証プロトコルである。
- すべての承認済み送信者を含む適切なSPF設定と、ルックアップ/文字数制限の遵守により、メールの配信性と送信者の評価が大幅に向上します。
- SPFは、DKIMやDMARCと組み合わせることで、包括的なメールセキュリティ、レポート、ポリシー実施に最適です。
- SPFだけでは、メール転送の問題や、多数のサードパーティの送信者を管理する場合の複雑さ、DNSルックアップの制限を超えるなどの制限があります。
- SPFレコードを定期的に見直し、更新し、ツールを使って検証することは、よくある間違いを避け、フィッシングやスパムからの保護を維持するために不可欠です。
SPFの仕組みは?
SPFは、ドメイン所有者が自分の代わりにメールを送信することを許可されたメールサーバー(IPアドレスまたはホスト名)のリストを公開することによって機能します。以下、SPFの仕組みを順を追って説明します:
1.SPFレコードの公開
ドメイン所有者は、そのドメインのDNS(ドメインネームシステム)にSPFレコードを公開する。DNSは、人間が読めるホスト名を機械が読めるIPアドレスに変換するシステムです。SPFレコードはDNSのTXTレコードで、そのドメインのメール送信を許可されたサーバーのリストを含んでいます。
2.メールを受信する
電子メールが送信されると、送信者のドメインに関する情報が含まれ、多くの場合、Return-Pathアドレス(envelope senderまたはMAIL FROMアドレスとも呼ばれる)に記載されています。
3.送信者のドメインの抽出
受信者のメールサーバーは、メールヘッダ内のReturn-Pathメールアドレスからドメインを抽出する。
4.DNSルックアップが実行される。
受信者のメールサーバーはDNSルックアップを実行し、前のステップで特定した送信者のドメインのSPF TXTレコードを取得する。
5.SPF認証が実行される。
SPFレコードには、ドメインのメール送信を許可するサーバーを定義するポリシーが含まれています。受信者の電子メールサーバーは、電子メールを送信したサーバーのIPアドレスをSPFレコードで指定された許可されたサーバーのリストと比較します。リターンパスのメールアドレスは、受信者側でクロスチェックされ、送信IPアドレスがSPFレコードに記載されているかどうかが確認されます。
6.最終認証結果の決定
SPFチェックに基づいて、受信者の電子メールサーバーは、電子メールが許可されたサーバーから来たかどうか(Pass、Fail、SoftFail、Neutralなど)を判断します。
7.結果に基づいて行動を起こす
受信者のメールサーバーは、SPFチェックの結果とドメインのDMARCポリシー(存在する場合)に基づいた処理を行います。メールを受け入れるか、スパムとしてマークするか、完全に拒否するかです。承認が肯定的であれば、メールは通常受信トレイに送られます。そうでない場合は、SPFが失敗する可能性があります。
PowerDMARCでSPFを設定する!
電子メールでSPFを使用する方法
SPFメール標準を使用するには、その仕組みを正しく理解し、ドメインとメールサービスプロバイダのSPFサポートを確認する必要があります。その後、SPFのレコードを作成し、DNSにレコードを公開し、SPF DNSの実装をDKIMやDMARCと組み合わせてなりすましを防ぐのが理想的です。SPFは送信サーバーを認証するものであり、必ずしも送信者の身元やメッセージ内容を検証するものではないことに注意すべきである。SPFとDKIM、DMARC、そして場合によってはBIMIを併用し、より徹底したメール認証を行うことで、メールセキュリティを大幅に向上させることができます。
メールのSPFを有効にする方法
SPFレコードを作成するには、以下の一般的な手順を踏む必要がある:
許可されたメールサーバーを決定する
お客様のドメインを代表してメールを送信する権限を持つすべてのメールサーバーのIPアドレスまたはホスト名を特定します。これには、お客様の組織のメールサーバー、サードパーティのメールサービスプロバイダ(Google Workspace、Microsoft 365、SendGrid、Mailchimpなど)、お客様のドメイン名を使用してメールを送信するその他のサービスが含まれます。これらのIPアドレスと送信ドメインの包括的なリストを収集します。
SPFポリシーの定義
SPFのポリシーを決定する。これは、SPFメカニズムを使ってドメイン宛のメールを送信することを許可するサーバーを指定することです。また、受信サーバーがどの程度厳格にポリシーを適用するかを、修飾子を使って決定する必要があります(例えば、Failの場合は`-all`、SoftFailの場合は`~all`)。
SPFフォーマットの決定
SPFレコードは、ドメインのDNSでTXTレコードとして公開されます。レコードは特定の形式で、`v=spf1`で始まり、メカニズム、修飾子、そして修飾子付きの最後の`all`メカニズムが続きます。
SPFレコードの公開
まず、SPFレコードを作成します。無料のSPF生成ツールを使用するか、許可された送信者とポリシーに基づいて手動でレコードを作成します。次に、通常ドメインレジストラまたはホスティングプロバイダが提供するドメインのDNS管理システムにアクセスします。ドメインのDNS設定を探し、新しいTXTレコードを追加します。ホスト名(ルートドメインの場合は通常「@」または空白)を指定し、SPFレコードの完全な文字列を値/データフィールドに貼り付けます。
SPFレコードの例
DNSのSPFレコードTXTは次のようになります:
このレコードは、有効な送信者としてホストのセットを定義する。例えば、`v=spf1 ip4:192.168.0.0/16 include:spf.example.com -all` は次のような意味です:
- v=spf1`:使用するSPFのバージョンを指定する。
- `ip4:192.168.0.0/16`:この範囲内の IP アドレスから送信されたメールを許可します。
- include:spf.example.com`:spf.example.com`のSPFレコードをインクルードし、そこにリストされている送信者を効果的に承認する。これは1つのDNSルックアップとしてカウントされます。
- all`:all`:直前のメカニズムにマッチしない送信者はSPFチェックに失敗する(拒否される)べきであることを示す。
この構造には通常、メカニズム、修飾語、修飾子が含まれる:
メカニズム
これらは、電子メールの送信を許可するサーバーを定義する。一般的な仕組みとしてはa`、`mx`、`ip4`、`ip6`、`include`、`exists`、`all` などである。
- ALL`:常にマッチする。レコードの最後に使用する(例:`-ALL`)。
- `A`:送信者のIPがドメインのAまたはAAAAレコードに一致する場合にマッチする。
- IP4`:送信者のIPが指定したIPv4の範囲内にある場合にマッチする。
- IP6`:送信者のIPが指定されたIPv6範囲内にある場合にマッチする。
- MX`:送信者のIPがドメインのMXレコードのIPアドレスのいずれかと一致する場合にマッチする。
- PTR`:送信者のIPのPTRレコードが送信者のIPに解決されるドメインを指している場合にマッチする。(非効率で信頼性が低いため、使用は推奨されない)。
- EXISTS`:指定されたドメイン名が解決された場合にマッチする。
- `INCLUDE`:別のドメインのポリシーを含めます。再帰処理が行われる。
修飾語:
これらは追加情報を提供したり、レコードの動作を変更したりする。主な修飾子は `redirect` (別のドメインのSPFレコードを指し、現在のレコードを置き換える)と `exp` (SPFの失敗に対する説明を提供する)である。修飾子は最後に、メカニズムの後に記述します。
予選:
マッチをどのように扱うかを示すためにメカニズムに付加される:
- `+`:パス(デフォルト)
- `-`:失敗(メールは拒否される)
- `~`:SoftFail (メールは受理されるが、マーク/精査される)
- `?`:中立 (ポリシーが主張されていない。なしとして扱う)
SPFの確認方法
SPFレコードを設定した後、DNSの変更がインターネット全体に伝搬されるまでに時間がかかる場合があります(最大48時間、多くの場合はもっと短い)。弊社の SPFレコードチェックツールを使用して、レコードを検証およびテストしてください。これにより、構文が正しいことを確認し、DNSサーバーに認識されていることを確認できます。
SPFレコードは、メールインフラ固有の要件によって複雑になる可能性があることに注意することが重要です。構文がよくわからない場合や、より高度な設定が必要な場合は、システム管理者、ITサポート、またはメール認証の専門家に相談し、SPFレコードを正しく作成できるようサポートしてもらうことをお勧めします。
サードパーティーベンダーのSPF
サードパーティベンダーのためのSPFとは?サードパーティ(マーケティングプラットフォーム、CRM、ヘルプデスクなど)があなたの代わりにメールを送信することを許可するには、あなたのドメインの単一のSPFレコードに、それらの特定のIPアドレスまたは指定されたSPF処理ドメイン(`include:`メカニズムを使用)を含める必要があります。ただし 複数のSPFレコードこれはSPFを完全に無効にしてしまうからです!すべての承認済み送信者は、1つの統合レコードにリストされなければなりません。
例えば、SuperEmails.netをメール送信者として使用し、そのSPF処理ドメインがspf.superemails.netの場合、SPFレコードは次のようになります:
v=spf1 include:spf.superemails.net -all
IPが1.2.3.4と5.6.7.8のAnotherSender.comも使っているなら、それらを組み合わせることになる:
v=spf1 ip4:1.2.3.4 ip4:5.6.7.8 include:spf.superemails.net -all
送信者ポリシーフレームワークはなぜ電子メールにとって重要なのか?
SPFは、貴社のドメインから送信されるメールが本物であり、サイバー攻撃者が顧客、従業員、パートナーを騙すために作成した偽の誘いメールではないことを確認するために重要です。毎日何十億通ものスパムメールが送信される中、SPFは貴社のドメインを保護するための基本的なステップです。SPFの主な利点は以下の通りです:
なりすましメールの削減とサイバー攻撃の回避
SPFは、送信サーバーの信頼性を検証することで、電子メールのなりすましに対抗するのに役立ちます。悪意のある業者は、フィッシングやスパムなどのサイバー攻撃になりすましたアドレスを使用することがよくあります。SPFレコードを正しく設定することで、悪意のある行為者があなたのドメインになりすますことは非常に難しくなります。
メール到達率の向上とバウンス率の低減
SPFを導入することで、メールの到達率を高めることができます。受信サーバーがSPFチェックを行い、送信サーバーが認証済みであることがわかると、メールをスパムとしてマークしたり拒否したりするのではなく、受け入れる可能性が高くなります。適切なSPFレコードがないドメインは、バウンス率が高くなったり、迷惑メールフォルダに振り分けられてしまう可能性があります。
偽陽性の低減
SPFは、認証されたメールサーバーを正確に識別することで、正当なメールが受信システムによって誤ってスパムと判定される可能性を低減します。これにより、誤検出を防ぎ、重要な通信が意図した受信者の受信トレイに確実に届くようになります。
送信者の評判の向上
SPFは、メールボックスプロバイダとの良好な送信者レピュテーションを構築し、維持する役割を果たします。SPFを実装することで、ドメイン所有者は、ISPが重視するメールセキュリティと認証のベストプラクティスへのコミットメントを示すことができます。
フィッシングとスパム対策
SPFは、ドメインのなりすましに依存するフィッシングやスパムキャンペーンの効果を低減するのに役立ちます。SPFは、悪意のある行為者が信頼できるドメインからのメールを装って詐欺メールを送信することをより困難にします。
電子メール標準とDMARCへの準拠
多くのメールサービスプロバイダーや組織は、メールポリシーの一環としてSPFの使用を推奨または要求しています。さらに、SPFはDMARC(Domain-based Message Authentication, Reporting, and Conformance)の基本コンポーネントです。DMARCは、受信サーバーが認証されていないメールをどのように扱うべきかを決定するためにSPF(および/またはDKIM)のアライメントに依存しており、SPFはDMARCのコンプライアンスに不可欠です。
SPFの限界とは?
SPFは貴重なツールだが、限界もある:
- **メール転送の問題:** SPFはメール転送で問題に遭遇することがある。メールがあるサーバーから別のサーバーに転送されると、転送先のサーバーのIPアドレスが元の送信者のドメインのSPFレコードにリストされていないため、元のSPF認証が失敗することがあります。DMARCはこれを軽減するのに役立ちますが、SPFの中核的な制限であることに変わりはありません。
- **複雑さと管理:** 認証されたメールサーバーやサードパーティサービスの数が増えるにつれ、単一のSPFレコードを管理・維持することの複雑さは増していく。
- **10 DNS Lookup Limit:** SPFレコードのDNS検索回数は最大10回に制限されている(この制限には `include`、`a`、`mx`、`ptr`、`exists`、`redirect`などのメカニズムがカウントされる)。この制限を超えると恒久的なエラー(PermError)が発生し、SPFレコードは無効になる。多くのサードパーティ・ベンダーを使用している組織では、この制限にしばしばぶつかる。SPFフラット化のようなツールは、ルックアップを静的IPアドレスに置き換えることでこれを軽減するのに役立つが、慎重な管理が必要である。
- **255文字の文字列制限:** DNSの1つのTXTレコード文字列には255文字の制限があります。SPFレコードは1つのTXTレコード内で複数の文字列にまたがることができますが、複雑すぎるレコードは管理が難しくなり、DNSレコード全体のサイズ制限を超える可能性があります。単一の文字列内でSPF文字列の文字数制限を超えると、そのレコードも無効になります。
- **送信サーバを認証し、コンテンツやFromヘッダを認証しない。SPFは、暗号化を提供したり、(DKIMのように)メッセージコンテンツの完全性を検証したり、受信者が目にする「From」アドレスを直接認証したりはしない。攻撃者は、認証されたサーバーを使用し、「From」アドレスを偽装することで、SPFを回避できることがある。
- **報告なし:** SPFそのものは、認証結果や悪用の可能性について、ドメイン所有者に可視性やフィードバックを提供しない。DMARCはSPFの結果を活用し、レポートを提供するため、ここが重要になる。
よくあるSPF設定の間違いを避けるために
設定を誤ると、SPFポリシーの効果がなくなったり、正当なメールがブロックされたりすることさえあります。よくある落とし穴を避けましょう:
- **ドメインはSPF TXTレコードを1つだけ持たなければなりません(MUST)。複数のレコードは検証エラーの原因となります。すべての承認済み送信者を1つのレコードにまとめてください。
- **不正な構文:** SPFレコードには厳格な構文要件があります。タイプミス、不正確なメカニズムの使用法(例:`ip4`や`include`の代わりに`TXT`を使用する)、または要素の配置ミスはレコードを無効にする可能性があります。公開する前に必ずレコードを検証してください。
- **Not Including All Authorized Senders:** 合法的なサードパーティサービスや社内メールサーバーのリストを忘れると、それらのソースから送信されたメールがSPFチェックに失敗し、配信可能性に影響を与えます。完全なインベントリを維持する。
- **DNSルックアップの10回制限を超える:** 制限事項で述べたように、`include`、`a`、`mx`などの仕組みを追加しすぎると、SPFが壊れてしまいます。特に新しいベンダを追加するときは、ルックアップを注意深く監視してください。
- **文字制限の超過:** 文字列ごとの255文字制限とDNSレコード全体のサイズ制限を遵守してください。
- **SPFレコードは、DNSでTXTレコードとして公開する必要があります。一部の古いシステムでは専用のSPFレコードタイプを使用していましたが、これは非推奨であり、使用すべきではありません。
- **メールプロバイダーを変更した場合、新しいサービスを追加した場合、古いサーバーを廃止した場合、それに応じてSPFレコードを更新しなければなりません。更新されていないレコードは、正当なメールをブロックしたり、悪用される可能性があります。
PowerDMARCでSPFをより良くする
SPFは効果的ですが、限界があります。サイバー犯罪者は、特にSPFが直接保護しないユーザーから見える「From」アドレスを標的にすることで、単純なIPアドレスチェックを回避する方法を発見しました。SPFテクノロジーは、DMARCに組み込まれることで、より強力で適切なものになります。
SPFとDKIMおよびDMARCの組み合わせ
DMARCはアライメントを必要とします。つまり、SPFに使用されるドメイン(Return-Path内)および/またはDKIM署名に使用されるドメインは、可視の'From'ヘッダ内のドメインと一致しなければなりません。PowerDMARCは、DMARCを正しく設定し、SPFとDKIMの両方の結果を活用して強固な認証を実現します。さらに、AIベースの脅威インテリジェンスにより、基本的なチェックがパスした場合でもなりすまし攻撃を特定することができます。
報告とフィードバック
SPFやDKIMだけでは、認証に失敗した電子メールや潜在的な不正使用パターンに関するフィードバックをドメイン所有者に与えることはできません。DMARC は、受信メールサーバーが詳細な集計 (RUA) およびフォレンジック (RUF)DMARC レポートをドメイン所有者に送り返すことを可能にします。PowerDMARC プラットフォームは、これらの複雑な XML レポートを読みやすいグラフ、表、およびアラートに処理し、電子メールのエコシステム、送信者のコンプライアンス、および脅威に対する重要な可視性を提供します。この分析データを使用して、SPF/DKIM 設定を改善し、メール戦略を調整することができます。
認証されていないメールへの影響をコントロールする
DMARCでは、ドメイン所有者であるあなたが、SPFとDKIMの両方のチェックに失敗した(またはアライメントに失敗した)メールを受信者がどのように処理するかのポリシーを指定できます。p=none`(監視のみ)、`p=quarantine`(迷惑メールに送信)、`p=reject`(メールを完全にブロック)のいずれかを選択できます。PowerDMARC を使用することで、DMARC ポリシーを管理し、実施に向けて前進させることが非常にシンプルになり、明確なガイダンスと簡単なインターフェイスのコントロールで達成することができます。
- DMARCとは?電子メール保護のための簡単なガイド- 2025年7月11日
- DMARCレポートの読み方:種類、ツール、ヒント- 2025年7月10日
- DMARCレコードの作成と公開方法- 2025年3月3日