2024年版「No SPF record found」エラーの修正方法
なりすまし対策の第一歩、SPFを設定する
2024年3月24日
著者: Maitham Al Lawati
翻訳: 逆井 晶子
この記事はPowerDMARCのブログ記事 How to Fix “No SPF record found” in 2024? の翻訳です。
Spelldataは、PowerDMARCの日本代理店です。
この記事は、PowerDMARCの許可を得て、翻訳しています。
「SPFレコードが見つかりません(No SPF record found)」というエラーが表示される場合、それはドメインのDNS設定にSPFレコードが存在しないことを意味します。
修正するには、SPF DNSレコードを公開する必要があります。
以下のようなメッセージが表示される場合があります。
- SPFレコードが見つかりません(No SPF record found)
- SPFレコードがありません(SPF record is missing)
- SPFレコードが存在しません(No SPF record)
- SPFレコードが見つかりません(SPF record not found)
- SPFレコードが公開されていません(No SPF record published)
- SPFレコードを見つけることができませんでした(Unable to find SPF record)
これらのメッセージは、ドメインがメール送信元の正当性を確認するためのSPF設定が行われていないことを意味します。
SPFレコードとは何か?
SPFレコードは、DNS TXTレコードの一種で、ドメインのDNSに公開されます。
このレコードは、メールの送信元IPアドレスが承認されたものかどうかをチェックすることで、メールを認証します。
SPFはSender Policy Frameworkの略で、メール認証プロトコルです。
他の認証メカニズムと組み合わせて使用することで、攻撃者がメールを偽装することを防ぐことができます。
SPFはDNSレコードを使用して、メールを送信しているサーバが、あなたのドメイン名を使用してメールを送信する権限を持っているかどうかを検証します。
これは「パスベース」の認証システムです。
これは、送信サーバから受信サーバまでのメールの経路に関連しています。
SPFレコードが見つからない理由
SPFレコードが見つからない主な理由は2つあります。
1つ目は、ドメインにSPFレコードが存在しない場合です。
2つ目は、SPFレコードが無効または誤っている場合です。
SPFを設定する理由
SPF(Sender Policy Framework)メール認証が必要だと言われたことがあるかもしれません。
しかし、企業とって本当に必要なのでしょうか?
もし必要なら、どのようなメリットがあるのでしょうか?
この質問は、企業や小規模事業者が組織の大規模なメール交換を行うようになったときに理解されます。
SPFを使用すると、あなたのドメイン名から送信されたメールがあなたによって承認されたものかどうかを検証することができます。
SPFレコードがない場合、あなたのドメインは次のように悪用される可能性があります。
- 攻撃者があなたになりすましてフィッシングメールを送信する可能性がある。
- 攻撃者はあなたのドメインをより簡単に偽装することができる。
- あなたのドメインは大量のスパムメールを送信するために使用される可能性がある。
- あなたのメールはGmailやYahooの受信ボックスでブロックまたはフラグ付けされる可能性がある。
PowerDMARCの2024 DMARC Adoption Reportによると、75%以上のドメインで SPFが未設定であることが明らかになりました。
このため、組織は電子メールベースの脅威に対してますます脆弱になっています。
SPF構文の解説
次に、正しい構文を持つダミードメインのSPFレコードの例を示します。
v=spf1 ip4:29.337.148 include:domain.com -all
- v=spf1
- "v" フィールドは SPF プロトコルのバージョンを指定します。
- ip4/ip6
- ドメインの代わりにメールを送信できる有効な IPv4 (32 ビット) および IPv6 (128 ビット) アドレスを指定します。
- include
- 受信サーバが、指定されたドメインのSPFレコード値を含める必要があることを指定します。
- -all
-
SPF レコードが "-all" で終わる場合、厳格なポリシーを示します。
つまり、ドメイン所有者は、そのドメインからのすべてのメールは、レコードに明示的にリストアップされたサーバからのみ送信されるべきであることを主張しています。
レコードに承認されていない送信者からのメールは、ハードフェイル(SPF認証失敗)と見なされます。SPF レコードが "~all" で終わる場合、より緩いポリシーを示します。
つまり、ドメイン所有者は、レコードで承認されたサーバからのみメールを送信することを推奨していますが、厳格に強制しません。
承認されていないサーバからメールが受信された場合は、ソフトフェイル (SPF 認証に問題あり) と見なされます。
受信メールサーバがソフトフェイルを検出した場合、メールをすぐに拒否しません。
代わりに、メールを潜在的に疑わしいものとしてマークする可能性があります。
「SPFレコードが見つかりません(No SPF Record Found)」エラーの修正方法
「SPFレコードが見つかりません(No SPF Record Found)」という厄介なエラーを解消したい場合は、以下の手順に従ってください。
ステップ1:欠落しているSPFレコードの確認
最初のステップは、SPFレコードが実際に欠落していないかどうかを確認することです。
PowerDMARCに無料でサインアップし、SPFチェッカーツールを使用してDNSを調べます。
この例では、ドメインがSPFルックアップに対して「レコードが見つかりません(No records found)」というステータスを返しています。
ステップ2:SPFレコードの作成
次に、DNS TXTレコードを作成して、ドメインのSPFを設定する必要があります。
当社のポータルにある無料のSPFレコードジェネレーターを使用して、正しい構文で即座にレコードを作成することができます。
ステップ3:SPF構文フィールドの設定
- MXとしてリストされているサーバがドメインのメールを送信することを許可するかどうかを選択します。
- ドメインの現在のIPアドレスがドメインのメールを送信することを許可するかどうかを選択します。
- ドメインからメールを送信する権限を持つIPアドレスを入力します。
- ドメインのメールを配信または中継する可能性のある他のサーバのホスト名またはドメインを追加します。
- SPFポリシーモードまたは受信サーバの厳格さのレベルを選択します(Fail:非準拠メールは拒否、Soft-fail:非準拠メールは受け入れられるがマーク付け、Neutral:メールはおそらく受け入れられる)。
- 「SPFレコードを生成」をクリックすると、即座にレコードが作成されます。
ステップ4:レコードをDNSに公開
ドメインレジストラに連絡して、DNS管理コンソールにアクセスします。
新しいSPFレコードを追加して、DNSレコードを編集する必要があります。
ステップ5:SPF実装の検証
最後に、同じSPFチェッカーツールを使用して、公開されたSPFレコードを検証します。
「有効なSPFレコードが見つかりません(No valid SPF record found)/ 有効なSPFレコードが存在しません(No valid SPF record)」とは?
「SPFレコードが見つかりません(No SPF record found)」または「有効なSPFレコードが見つかりません(No valid SPF record found)」というエラーが表示されることがあります。
これは、DNSにSPFレコードが存在しないか、存在していても有効でないことを意味します。
これは、構文エラーや冗長なメカニズムなど、レコード内のエラーが原因である可能性があります。
この問題を解決するには、以下の方法があります。
- オンラインツールを使用してレコードをチェックする。
- レコードを最適化してエラーを修正する。
- メールサービスプロバイダーと相談する。
- 問題が解決しない場合は、外部のサービスプロバイダーに管理を委託するか、メール認証の専門家に相談してください。
SPFレコードが有効かどうかを確認する方法
SPFチェッカーのようなオンライン検証ツールを使います。
「Valid」というステータスに緑色のチェックマークが付けば、SPFレコードが有効であることを示します。
有効なSPFレコードを追加する方法
正しいSPFレコードを追加するには、手動ではなく、PowerDMARCのような自動化されたレコード生成ツールを使用することをお勧めします。
これにより、構文エラーのリスクを減らすことができます。
有効なレコードを設定する際に考慮すべき要素は次のとおりです。
- DNSルックアップの制限(10回まで)を超えないようにする
- ボイドルックアップの制限(2回まで)を守る。
- SPFレコーレコードの長さが最大制限を超えないようにする。
- ドメインに複数のSPFレコードを設定しない。
SPFレコードの公開だけで十分ですか?
答えはノーです。
SPFだけでは、ブランドのなりすましを完全に防ぐことはできません。。
直接的なドメインなりすまし、フィッシング攻撃、BEC(Business Email Compromise)から最適に保護するには、ドメインに対してDKIMとDMARCを設定する必要があります。
さらに、SPFには10回のDNSルックアップ制限があります。
この制限を超えるとSPFが機能しなくなり、正当なメールでさえ認証に失敗する可能性があります。
この問題を解決するためには、当社のホスト型SPFソリューションを活用してください。
このソリューションは、10回のDNSルックアップ制限内に収めるだけでなく、プロバイダー側の変更を気にせず、メールの認証や配信が安定して行える仕組みを提供します。
このブログが問題解決に役立ち、「SPFレコードが見つかりません(No SPF record found)」というエラーに悩まされることがなくなることを願っています。
メール配信率とメールセキュリティを向上させるために、ぜひ無料のDMARCトライアルに登録してください!
「私たちのビジネスは信頼に基づいており、それはクライアントとの間だけでなく、パートナーとの間にも言えることです。
PowerDMARCとの優れたパートナーシップにより、クライアントに卓越したサービスを提供できています。」
スティーブ・スミス(オークランド地区マネージャー, Advantage)
コンテンツのレビューと事実確認プロセス
この記事は、15年以上の業界経験を持つサイバーセキュリティ専門家によって執筆されました。
実際にクライアントの問題解決に役立った実践的な戦略に基づく解決策を提供しています。
皆様の問題解決に役立つことを心から願っています!