BLOG ベアメールブログ
2023.11.28 (火)
メール用語解説DMARCレポートとは? 設定方法や集計レポートの読み方、解析ツールを解説
Last Updated on 2024.08.1
DMARC(Domain-based Message Authentication, Reporting, and Conformance)とは、送信ドメイン認証技術の一種で、なりすましメールの防止、メールの配信状況の把握、認証に失敗したメールの取り扱いの指示などを行うことができます。
DMARCを導入することで、メールの認証結果に関する情報が記載されたDMARCレポートを受け取ることができます。本記事では、DMARCレポートの仕組みや種類、設定方法、集計レポートの読み方、解析ツールなどについて詳しく解説します。
※ DKIMレポートの内容説明において、一部誤りがあったため1/31に更新いたしました。
→<policy_evaluated>内の<dkim>および<spf>の結果と、<auth_results>内のSPFとDKIMの各<result>について
目次
DMARCレポートとは
DMARCレポートとは、受信側サーバーが受け取ったメールの認証結果などをドメイン所有者に対してフィードバックするための機能です。DMARCレポートによって、自社ドメインを使用してメールを送信しているサーバーの情報や、送信したメールの認証状況などを把握することができます。
DMARCレポートの必要性
DMARCレポートを解析することで、自社ドメインをヘッダFromに使用して配信しているメールの全体像を把握することができます。外部サービスも含めてどのメールサーバー(IPアドレス)からメールが配信されているか、そして送信ドメイン認証の結果には問題がないか、確認することができます。自社ドメインから配信している全てのメールについてDMARC認証に合格させ、DMARCポリシーを隔離や拒否などの厳格なルールに変更するためには、DMARCレポートで現状を確認した上で個々の対応を行なっていくことが不可欠です。
DMARCレポートの仕組み
DMARCに対応している受信サーバーがメールを受信すると、ヘッダFromのドメインにDMARCが設定されているか確認します。DMARCが設定されていた場合、DMARC認証に合格するかチェックし、その認証結果とDMARCポリシーに従ってメールを処理します。
DMARCレポートは、受信サーバーが一定の期間に受け取ったメールの認証結果をまとめて送信者に返送する仕組みです。通常、DMARCレポートは1日に1回指定したメールアドレスにメールで送信されます。
DMARCレポートの設定方法
DMARCレコードの設定
DMARCレポートを受信するには、DNSに登録するDMARCレコードに次のように記載します。
記載例)
_dmarc.<ドメイン名> IN TXT “v=DMARC1; p=none; rua=mailto:<メールアドレス>; ruf=mailto:<メールアドレス>”
“rua=”の部分と“ruf=”の部分がDMARCレポートの受信に関わる箇所で、上記の<メールアドレス>でDMARCレポートの送付先を指定します。メールの送信先を複数指定したい場合はカンマ(,)で区切ります。
“rua”と“ruf”はそれぞれレポートの種類を表しており、詳細については次章で解説します。
DMARCレコードについて詳しく知りたい方は以下のブログをご参照ください。
DMARCとは? SPF・DKIMとの関係と仕組み、導入方法まで解説 | ベアメールブログ
レポートを別ドメインで受信したい場合
DMARCレポートを外部ドメインに送信する場合、つまりDMARCを導入するドメインとは別のドメインをruaやrufの送信先として指定する場合は相互の関連性を示す必要があります。
これは、悪意のある第三者がDMARCレポートの宛先として無関係のアドレスを設定することで、大量の望まないレポートが被害者に殺到することを防ぐために設けられたルールです。
具体的には、レポートを送信する先のドメインのDNSサーバーに以下の形式でTXTレコードを追加します。
記載例)
<DMARC導入ドメイン名>._report._dmarc.<レポート送付先ドメイン名>.com IN TXT “v=DMARC1”
DMARCレポートの種類
DMARCレコードに設定する“rua”と“ruf”は、DMARCレポートの種類を表しています。ここではDMARCのruaレポートとrufレポートの違いについて解説します。
集約レポート(ruaレポート)
ruaレポートとは、集計レポートや集約レポートと呼ばれ、その名の通り受信側が受け取ったメールの認証結果を集計したレポートです。
送信される頻度はデフォルトで24時間に設定されています。XML形式のファイルがメールに添付されて送られてきます。レポートには受信側がその期間中に受け取ったメールについて、以下のような情報を集計して記載されています。
- 受信したメールの通数
- SPF、DKIMの認証結果
- SPF、DKIMのアライメントの認証結果
- 送信サーバーのIPアドレス
- レポートを送信した組織情報
- 参照したDMARCポリシーの内容
失敗レポート(rufレポート)
rufレポートとはフォレンジックレポートとも呼ばれ、DMARC認証に失敗した個々のメールについての詳細情報を通知するレポートです。認証が失敗した際に都度送信され、認証結果と失敗理由などの情報と共に、そのメッセージ全体がレポートに含まれる場合があります。集約レポートと違い、プライバシー上の懸念から、失敗レポートを送信しないプロパイダもあります。
DMARCレポートの読み方
集約レポートはXML形式で提供されるため、ローデータでは一覧性に乏しく、確認しづらい状態となっています。ここでは、大まかにDMARCのruaレポートに記載されるデータと読み方について解説します。
レポーター(DMARCレポートを送信する受信側サーバ)やDMARCの設定内容などによってレポートに記載する内容には差異があるため、以下は一例となります。
DMARC集計レポートのサンプル
DMARC集計レポートの内容
<report_metadata>の範囲
<report_metadata>〜</report_metadata>の範囲には次のような内容が記載されています。
<org_name>:レポーターの名称
<report_id>:レポートID
<date_range>:集計期間
<policy_published>の範囲
<policy_published>〜</policy_published>の範囲には設定されているDMARCレコードの仕様が記載されています。
<domain>:対象のドメイン
<adkiim>:DKIMのアライメントモード
<aspf>:SPFのアライメントモード
<p>:DMARCポリシー
<sp>:サブドメインに対するポリシー
<pct>:DMARCポリシーを適用するメールの割合
<fo>:失敗レポートを送信する条件
<record>の範囲
<record>〜</record>の範囲には次のような内容が記載されています。
<source_ip>:送信元IPアドレス
<count>:集計期間に送信された回数
<policy_evaluated>:認証結果の概要
<disposition>:メッセージに適用されたポリシー(none, quarantine, reject)
<dkim>:DKIM認証 & DKIMアライメントの結果
<spf>:SPF認証 & SPFアライメントの結果
<identifiers>
<header_from>:ヘッダfrom
<auth_results>
<dkim>:
<domain>:DKIM認証を行ったドメイン
<selector>:セレクタ
<result>:DKIM認証の結果
<spf>:
<domain>:SPF認証を行ったドメイン
<result>:SPF認証の結果
DMARCレポートの解析ツール
前章のようにDMARCレポートを自力で読み解くこともできますが、基本的にメールを受信したすべてのサーバーから日次でレポートが送信されるため、毎日多くのレポートを受信することになります。
これらを1つ1つ確認するのは現実的でなく、メールの配信状況と認証の問題を把握できるというDMARCレポートのメリットを活かせません。そのため、解析を効率化するツールを使用することがおすすめです。ここでは代表的な解析ツールを紹介します。
Dmarc Report Analyzer
Dmarc Report Analyzer(https://mxtoolbox.com/DmarcReportAnalyzer.aspx)は、DNSや送信ドメイン認証の設定状況などを確認できるMxToolboxサイト内で提供しているツールです。
集計レポートのXMLファイルをアップロードすると、送信IPアドレスごとにDMARC・SPF・DKIMの認証結果を集計してわかりやすく可視化します。無償で利用可能ですが、レポートは1つずつしか確認することができないため、各レポーターから受け取った全てのレポートをまとめて確認することはできない点は要注意です。
表に記載されている内容は以下の通りです。(左側から)
- 送信元IPアドレス
- メールの通数
- DMARCの認証成功数
- DMARCの認証失敗数
- DMARCの認証成功率
- SPFの認証成功
- SPFの認証失敗数
- SPFアライメントの成功数
- SPFアライメントの失敗数
- SPFの認証・アライメント両方に成功した数
- DKIMの認証成功
- DKIMの認証失敗数
- DKIMアライメントの成功数
- DKIMアライメントの失敗数
- DKIMの認証・アライメント両方に成功した数
PowerDMARC
PowerDMARC(https://powerdmarc.com/ja/)はXMLファイルを理解しやすい直感的なチャート、グラフ、データに変換してダッシュボードに表示するツールです。日本語に対応している点もメリットです。有償サービスですが、個人の非営利目的であれば1ドメインまで無料で利用できます。
迷惑メールスコアリング
ベアメールが提供するメールの正常性診断&モニタリングサービス「迷惑メールスコアリング」は、DMARC分析機能を提供しています。
迷惑メールスコアリングが発行するDMARCレコードをDNSに登録するだけで、DMARCレポートを代行受信し、すべてのレポーターからのレポートを自動的に集計して可視化します。誰でも簡単にDMARCの認証状況、SPF・DKIMの認証とアライメントの状況などを確認できます。レポーターや送信元IPアドレス、認証結果の条件などでフィルタリングすることも可能です。
DMARC分析機能の他にも、メールを届けるために重要となるDNS設定やメールフォーマット、ブラックリストのチェックなど、テストメールを送信することで診断が可能です。SPF・DKIM・DMARCの設定や認証結果について確認することも可能です。
無料トライアルも可能ですので、ご興味のある方はお気軽にお問い合わせください。
まとめ
DMARCレポートとは、DMARCを導入したドメインを使用して配信されているメールの認証結果について、受信側サーバからフィードバックを受けることができる機能です。DMARCレポートによって配信したメールの認証状況が可視化されることで、認証に失敗しているメール配信の修正対応や、自社のドメインを詐称するメールの状況を把握したりすることに役立ちます。DMARCレポートを自力で解析するには労力がかかりますが、ツールを利用することで効率化も可能です。ぜひDMARCレポートを活用してみてください。