DMARC(Domain-based Message Authentication, Reporting & Conformance)について
2024-07-02
DMARC(Domain-based Message Authentication, Reporting & Conformance)は、SPF(Sender Policy Framework)やDKIM(DomainKeys Identified Mail)と連携して、メールの送信元を認証し、不正なメールの送信を防ぐためのプロトコルです。DMARCを導入することで、なりすましメール(フィッシングメールやスパムメール)の防止と、メールの信頼性向上を図ることができます。
DMARCの基本的な仕組み
DMARCポリシーの設定:
ドメイン所有者は、DMARCポリシーをDNS(Domain Name System)にTXTレコードとして設定します。このポリシーには、SPFやDKIMの認証結果に基づいて、メールがどう扱われるべきか(許可、隔離、拒否)が記載されています。
メール送信時の認証:
メールが送信されると、受信者のメールサーバーはまずSPFやDKIMによって送信元の認証を行います。DMARCは、この認証結果をもとにポリシーを適用します。
認証結果の評価とポリシーの適用:
DMARCポリシーは、SPFやDKIMの認証結果に基づいて、メールの処理方法を指示します。例えば、認証に失敗した場合はメールを拒否する、隔離する、または許可するなどの指示が含まれます。
レポートの生成と送信:
DMARCは、受信者のメールサーバーから認証結果に関するレポートをドメイン所有者に送信します。これにより、ドメイン所有者は、どのメールが認証に成功し、どのメールが失敗したかを把握できます。
DMARCの利点
なりすましメールの防止:
DMARCは、SPFやDKIMと連携して、送信元が正当であることを確認し、不正なメールをフィルタリングします。これにより、フィッシングやスパムのリスクが大幅に減少します。
メールの信頼性向上:
DMARCを導入することで、受信者のメールサーバーは送信元ドメインが信頼できるものであると判断しやすくなります。これにより、正当なメールが受信箱に届きやすくなります。
レポートによる監視と改善:
DMARCは、認証結果に関する詳細なレポートを提供します。ドメイン所有者はこれを分析して、メール認証の問題を特定し、改善することができます。
具体的な例
例えば、あなたの会社のドメインが「yourcompany.com」で、DMARCポリシーを設定する場合、DNSに以下のようなTXTレコードを追加します。
_dmarc.yourcompany.com IN TXT “v=DMARC1; p=reject; rua=mailto:dmarc-reports@yourcompany.com; ruf=mailto:forensic-reports@yourcompany.com; adkim=s; aspf=s”
このポリシーの意味は以下の通りです:
v=DMARC1:DMARCのバージョンを示します。
p=reject:認証に失敗したメールを拒否するよう指示します。
rua=mailto @yourcompany.com:認証結果の集計レポートを受け取るメールアドレスを指定します。
ruf=mailto @yourcompany.com:詳細なフォレンジックレポートを受け取るメールアドレスを指定します。
adkim=s:DKIMのアライメントモードを「strict(厳格)」に設定します。
aspf=s:SPFのアライメントモードを「strict(厳格)」に設定します。
まとめ
DMARCは、SPFやDKIMと連携してメールの送信元を認証し、不正なメールの送信を防ぐためのプロトコルです。適切に設定することで、なりすましメールのリスクを軽減し、メールの信頼性を向上させることができます。また、レポート機能を活用して認証結果を監視し、メール認証の精度を改善することができます。
DMARC認証を成功させるため、エンベロープFromメールアドレスと、Fromヘッダメールアドレスのドメインが異なる場合には、Fromヘッダメールアドレスドメインと同一のドメイン(又は サブドメイン)で署名したDKIM署名(※DKIM-Signatureヘッダーのdタグ(d=)値がFromヘッダメールアドレスドメインと同一ドメイン(又はサブドメイン)であるDKIM署名)を付与する必要があります。 またSPF と DKIM を同時に設定することにより、より効果を発揮します。