MailData

DMARCレコードを作成して公開する方法

DMARCレコードを作成して公開する方法

2024年6月15日
著者: Maitham Al Lawati
翻訳: 岩瀨 彩江

この記事はPowerDMARCのブログ記事 How to Create and Publish a DMARC Record の翻訳です。
Spelldataは、PowerDMARCの日本代理店です。
この記事は、PowerDMARCの許可を得て、翻訳しています。


DMARC(Domain-based Message Authentication, Reporting and Conformance)は、送信メールを認証するための技術的なプロトコルです。
DMARCは、フィッシングやなりすましなど、さまざまなメールベースの脅威に対する最初の防御線として機能します。
DMARCを設定するには、DMARCレコードを作成する必要があります。

作成されたDMARCレコードはTXTレコードであり、DNS上に公開されます。
これにより、メール認証プロセスが開始されます。
DMARCレコードを設定することで、ドメイン所有者は、認可されていないまたは不正な送信元から送信されたメールに対して、受信者がどのように対応すべきかを指示できるようになります。

重要なポイント

  1. DMARCレコードは、送信メールを認証し、なりすましやフィッシング攻撃を防ぐためのDNS TXTエントリです。
  2. 不正なメールの取り扱いを制御するためには、適切なDMARCポリシーを選択することが重要です。
  3. DMARCを導入するには、cPanel、GoDaddy、Cloudflareなどのツールを使用して、レコードをドメインネームシステム(DNS)に公開する必要があります。
  4. メールを積極的に送信しないドメインであっても、悪用を防ぐために「p=reject」と設定された制限的なDMARCレコードを持つべきです。
  5. 最適な結果を得るためには、ドメインごとに1つのDMARCレコードを維持し、メール配信の問題を回避するために段階的に適用を強化することが推奨されます。
  6. PowerDMARCのようなソリューションは、AIによる脅威インテリジェンスを活用して、DMARCレコードの管理を自動化し、監視を容易にします。

DMARCレコードとは何ですか?

DMARCレコードは、認証チェック(SPFおよびDKIM)に失敗したメールをメールサーバがどのように処理すべきかを指定するDNS TXTレコードです。
このレコードは、受信サーバに対して、不正なメールを拒否するか、隔離するか、または許可するかを指示することで、ドメイン所有者がメールのなりすましやフィッシングを防止するのに役立ちます。

DMARCレコードの主要な構成要素

1.DMARCポリシーモード

DMARCポリシーは、DMARC認証に失敗したメールを受信側がどのように処理すべきかを定義します。
このポリシーは「p」で示され、次の3つの値のいずれかを取ることができます。

  • p=none:不正なメールに対して特にアクションを取らない。
  • p=quarantine:疑わしいメールとしてフラグを立てる。
  • p=reject:不正なメールを受信者に届く前に拒否する。
2.DMARCレポートオプション
  • 集計レポート(rua=):ドメインから送信されたすべてのメールの認証結果を示す概要レポートで、指定されたメールアドレスに送信されます。
  • フォレンジックレポート(ruf=):メールがDMARC認証に失敗した際に送信される詳細な失敗レポートです。
3.DMARCアライメントモード
  • SPFアライメント(aspf=):Fromヘッダー内の送信者ドメインがSPFレコードと整合しているかを判定します。
    厳密一致を求める「strict(s)」モードと、組織単位での一致を許可する「relaxed(r)」モードのいずれかを選択できます。
  • DKIMアライメント(adkim=)DKIM署名のドメインがFromヘッダー内のドメインと整合しているかを判定します。
    こちらも、厳密一致の「strict(s)」モードと、組織単位での一致を許可する「relaxed(r)」モードのいずれかを選択できます。

DMARCレコードの作成方法

ドメイン用のDMARC DNSレコードを作成するには、次の準備を整えてください。

以下の手順に従って、レコードを作成します。

1.DMARCレコードを生成する

メールアドレスを使用してポータルにサインアップするか、GmailまたはOffice 365を使用してサインアップします。
次に、[Analysis Tools] > [PowerToolbox] > [DMARC Record Generator]へ進み、DMARCレコードの作成を開始します。

2.DMARCレコードのポリシーを定義する

希望する適用レベル(none、quarantine、またはreject)に応じて、DMARCポリシーを決定します。
DMARCレコードのポリシーは次のように選択します。

3.推奨されるDMARCレコードのオプションフィールドを設定する

すべてのフィールドが必須というわけではありませんが、いくつかの有用なオプションフィールドを設定することをお勧めします。
それぞれの内容は次のとおりです。

集計(rua)レポートフィールド
ruaフィールドを設定すると、DMARC認証データを自分のメールアドレスで直接受け取ることができます。
フォレンジック(ruf)レポートフィールド
rufフィールドをDMARCレコードに設定することで、サイバー攻撃などのフォレンジックインシデントに関する詳細な情報を得ることができます。
DKIM/SPFアライメントモード
SPFおよび/またはDKIMに対して、緩やかな(relaxed)または厳密な(strict)アライメントを選択できます。

DMARCレコードの公開方法

DMARCレコードを公開するには、いくつかの前提条件があります。

cPanelでDMARCレコードを公開する

  1. cPanelのDNS管理コンソールにアクセスします。
  2. [Domains]セクション内で、[DNS Zone Editor]または[Advanced Zone Editor]をクリックします。
  3. TXT(テキスト)タイプのDMARCレコードを追加します。
    「TXTデータ」または「値」フィールドに、以前に作成したDMARCレコードを貼り付けてください。

GoDaddyでDMARCレコードを公開する手順

  1. GoDaddyのドメインポートフォリオにログインして、DNSゾーンにアクセスします。
  2. 「Domain Name(ドメイン名)」の下で、メール送信に使用するドメインを探して選択します。
  3. ドメイン名の下にある「DNS」をクリックします。
  4. 次に「Add New Record(新しいレコードを追加)」を選択し、以下の詳細でレコードを公開します。

CloudflareでDMARCレコードを公開する手順

  1. Cloudflareアカウントにログインします。
  2. 目的のアカウントとドメインを選択します。
  3. 「DNS」に移動し、「Add Record(レコードを追加)」をクリックします。
  4. 生成したDMARCレコードを、「Add Record(レコードを追加)」セクションに貼り付けます。
  5. 以下の例のように設定してください。

DMARCレコードの検証方法

DMARCレコードを検証し、一般的な「No DMARC record found(DMARCレコードが見つかりません)」というエラーを回避するために、無料の検証ツールを使用できます。

  1. 無料でサインアップし、「Analysis Tools(分析ツール)」>「PowerToolbox」>「DMARC Record Checker(DMARCレコードチェッカー)」に進みます。
  2. DMARCレコードのステータス、構文、およびタグを確認して、エラーがないかを確認してください。

一般的なDMARCレコードのエラー

ステータス意味何ができるか
有効お客様のDMARCレコードは正しく、エラーはありません。何もする必要はありません。
無効お客様のDMARCレコードにエラーがあります。これは、不完全または誤った構文が原因である可能性があります。構文を確認し、DMARCタグに関する完全なガイドを参照するか、専門家にご相談ください。
レコードが見つかりませんDNSにDMARCレコードが存在しませんでした。ドメイン用のDMARCレコードを作成し、DNSに公開してください。

記録内にエラーを検出した場合は、DNSに必要な変更を実施し、変更内容を保存する必要があります。
変更が処理された後に、再度記録を確認することができます。

送信を行わないドメインのためのDMARCレコード

多くの人はアクティブなドメインのセキュリティ対策で止まってしまいますが、攻撃者は送信を行わないドメインでさえもあなたになりすまして偽のメールを送信することができることを知らない場合があります。
これを防ぐために、送信を行わないドメインに対してDMARCを実装する手順を以下に示します。

制限付きのDMARCレコードを公開する
p=reject
上記のような強制ポリシーを設定したDMARCレコードを、非アクティブなドメインに対して公開することから始めます。
RUA/RUFレポートの受信設定
この設定をしないとメールを配信しないドメインを騙られて、メールを送信されているかどうかの確認ができません。
制限的なSPFレコードを公開する
メール送信を防ぐために、
v=spf1 -all
を設定します。
統合されたメールサービスを無効にする
ドメインが依然として外部メールサーバにリンクされている場合、そのドメインがすでに使用されていないのであれば、それらを制限することを検討すると良いでしょう。

非アクティブなドメインを保護しないことによる結果

送信を行わないドメインにDMARCを実装しない場合、次のようなさまざまな結果を招く可能性があります。

ドメインごとに1つのDMARCレコード

DMARCレコードを設定する際は、ドメインごとに1つのレコードエントリのみを公開することが重要です。 1つのドメインに複数のDMARCレコードを設定すると、競合や不必要な認証エラーが発生する可能性があります。

複数のDMARCレコードが問題となる理由

メール認証の失敗
メールの受信者が、どのDMARCレコードに従うべきか判断できなくなる可能性があります。
設定ミスや不整合
1つのレコードで p=none、もう1つで p=reject のようにポリシーが競合すると、適用結果が予測不能になります。
不正確なレポート
DMARCレポートが不完全または信頼性の低いものになる可能性があります。

正しいDMARC実装のためのベストプラクティス

DMARCレコードを正しく構成するために、以下の実装上のベストプラクティスを守ることをお勧めします。

DMARCレコード公開後の次のステップ

DMARCレコードの公開が完了したら、次のステップは詐欺師やなりすましからドメインを保護することに注力するべきです。
これは、セキュリティプロトコルやメール認証サービスを実装する際の主たる目的です。
p=none ポリシーのDMARCレコードを公開するだけでは、ドメインスプーフィング攻撃やメール不正に対する保護は一切提供されません。

そのためには、DMARCの強制適用(エンフォースメント)へ移行する必要があります。
配信適性に悪影響を与えずに最適な結果を得るには、DMARCの強制適用へは段階的に移行するアプローチが最善です。
以下は、実行できるステップバイステップのプロセスです。

PowerDMARCがDMARCレコード管理を簡素化する方法

複数のドメインを運用している組織、またはDMARCレコードの手動設定や保守の手間を避けたい方のために、PowerDMARCがあります。
これは、DMARCレコード管理を一元的に自動化する、シンプルでユーザーフレンドリーなソリューションです。
AI駆動の脅威インテリジェンステクノロジーと詳細なレポート機能により、PowerDMARCは世界中の2000社以上の顧客のDMARC導入を支援し、運用の効率化を実現しています。

まずは無料の15日間トライアルで、今すぐプラットフォームを体験してみてください。

DMARCレコードに関するよくある質問

1.なぜDMARCレコードが必要なのですか?
DMARCレコードは、ドメインのなりすましを防止し、フィッシング、スプーフィング、ランサムウェア攻撃などのメールベースの脅威リスクを軽減するのに役立ちます。
DMARCレコードがない場合、ドメインは脅威アクターによって侵害または悪用されるリスクが高まります。
2.よくあるDMARCレコードのエラーは何ですか?

一般的なDMARCの誤設定には次のようなものがあります。

  • 複数のDMARCレコードを設定している(1つのドメインには1つのDMARCレコードしか設定できません)。
  • 構文エラー(セミコロンやスペースの欠落など)。
  • 無効なポリシー値(例:p=reject ではなく p=rejected と誤って設定する)。
  • レポート送信先アドレスの不備(rua または ruf のメールアドレスが誤っていると、レポートが配信されません)。
3.1つのドメインに複数のDMARCレコードを設定できますか?
いいえ、1つのドメインにはDMARCレコードを1つしか設定できません。
複数のレコードが存在すると、メールプロバイダが設定を無視する可能性があり、認証エラーやセキュリティ上の欠陥につながることがあります。
4.DMARCレコードの反映にはどのくらい時間がかかりますか?
DMARCレコードの反映(伝播)には、DNSキャッシュやTTL(Time-to-Live)設定によって異なりますが、数分から最長48時間ほどかかる場合があります。
5.DMARCレコードが無効な場合はどうなりますか?
DMARCレコードが無効な場合、認証試行やチェックの失敗、メール配信の問題など、さまざまな不具合を引き起こす可能性があります。
また、ドメインがスプーフィング攻撃にさらされるリスクも高まります。
6.ドメインにDMARCレコードが公開されていない場合はどうなりますか?
大量送信者でDMARCレコードを公開していない場合、GoogleやYahooの受信トレイへのメール送信時に拒否される可能性があります。
さらに、スプーフィングを防ぐ制限が存在しないため、攻撃者にとって標的になりやすくなります。
7.DMARCレコードはどこに追加しますか?
DMARCレコードは、ドメインのDNS設定に追加します。
これは、ドメイン登録業者またはDNSホスティングサービスが提供するDNS管理コントロールパネル内で、新しいTXTレコードを作成することで行います。
8.DMARCレコードは誰が提供しますか?
DMARCレコードの内容は、ドメイン所有者であるあなた自身が作成します。
その後、DNSホスティングプロバイダを通じて公開します。
9.DMARCレコードでよくある問題

DMARCレコードに関する一般的な問題には、次のようなものがあります。

  • 構文エラー
  • 不正なDNSホスト名
  • p=reject に早急に移行してしまうこと
  • 複数のDMARCレコードを設定していること
  • 無効な rua タグ