DMARCとは?なりすましメール対策

目次
DMARCの仕組みを理解してなりすましメールを防ごう
企業や組織のドメインを悪用したなりすましメールは、現在最も深刻なメールセキュリティ問題の一つです。
フィッシング詐欺、マルウェア配布、ビジネスメール詐欺(BEC)など、多くの攻撃が偽装メールを利用して行われています。
こうした攻撃を防ぐために利用されるのがDMARC(Domain-based Message Authentication, Reporting and Conformance)です。
DMARCはSPFやDKIMと連携して動作し、なりすましメールへの対処方針を受信サーバへ伝える仕組みです。
本記事ではDMARCの仕組みや設定方法、SPF・DKIMとの関係について解説します。
DMARCとは
DMARC(Domain-based Message Authentication, Reporting and Conformance)は送信ドメイン認証技術の一つです。
SPFやDKIMの認証結果を利用し、認証に失敗したメールをどのように扱うかを受信側へ指示します。
また、認証結果のレポートを受け取る機能も提供します。
現在のメールセキュリティでは非常に重要な技術となっています。
なぜDMARCが必要なのか
SPFやDKIMだけでは、認証失敗メールをどう扱うかは受信サーバ側の判断に委ねられます。
そのため受信側によって対応が異なります。
DMARCを導入することで、送信ドメインの所有者がポリシーを明示できます。
SPFとDKIMだけでは不十分な理由
例えば次のようなケースがあります。
SPF失敗 DKIM失敗 ↓ 受信サーバの判断次第
あるメールサーバは受信し、別のメールサーバは拒否する可能性があります。
DMARCはこの問題を解決します。
DMARCの役割
DMARCには大きく3つの役割があります。
- なりすまし対策
- ポリシー通知
- レポート収集
単なる認証技術ではなく、運用管理の仕組みも提供します。
DMARCの仕組み
DMARCはSPFとDKIMの結果を利用します。
メール受信時の流れは次の通りです。
メール受信
↓
SPF確認
↓
DKIM確認
↓
DMARC判定
↓
許可・隔離・拒否
最終判断をDMARCが行います。
DMARCの前提条件
DMARCを利用するためにはSPFまたはDKIMが設定されている必要があります。
一般的には両方設定します。
SPF + DKIM + DMARC
これが現在の標準構成です。
ドメインアライメントとは
DMARCの重要な概念にアライメント(Alignment)があります。
送信者アドレスと認証ドメインが一致しているかを確認します。
例えば以下です。
From: user@example.com
SPF認証: example.com一致していればアライメント成功です。
DMARCレコードとは
DMARCはDNSのTXTレコードとして登録します。
登録場所は次のようになります。
_dmarc.example.com専用のサブドメインを利用します。
DMARCレコードの基本例
最も基本的な設定です。
v=DMARC1; p=none;DMARCを有効化し、まずは監視のみ行います。
v=DMARC1とは
DMARCのバージョンを表します。
v=DMARC1現在はこの値を指定します。
p=とは
ポリシーを指定します。
DMARCで最も重要な設定項目です。
| 値 | 意味 |
|---|---|
| none | 監視のみ |
| quarantine | 隔離 |
| reject | 拒否 |
導入初期はnoneから始めることが一般的です。
p=none
認証失敗メールを受信します。
v=DMARC1; p=none;監視目的で利用されます。
DMARC導入初期に推奨されます。
p=quarantine
認証失敗メールを隔離します。
v=DMARC1; p=quarantine;迷惑メールフォルダへ振り分けられる場合があります。
p=reject
認証失敗メールを拒否します。
v=DMARC1; p=reject;最も厳しいポリシーです。
なりすまし対策として高い効果があります。
レポート機能とは
DMARCにはレポート機能があります。
認証結果をメールで受け取ることができます。
例えば次の設定です。
rua=mailto:dmarc@example.com集計レポートが送信されます。
集計レポート(RUA)
Aggregate Reportとも呼ばれます。
主な内容は以下です。
- 送信元IP
- SPF結果
- DKIM結果
- 認証失敗状況
DMARC運用で最も利用されます。
障害レポート(RUF)
詳細レポートです。
ruf=mailto:dmarc@example.com認証失敗メールの詳細情報を受け取れます。
利用しない環境もあります。
DMARCレコードの例
実際の設定例です。
v=DMARC1;
p=reject;
rua=mailto:dmarc@example.com;企業環境でもよく利用される設定です。
DMARC確認方法
digコマンドで確認できます。
# dig TXT _dmarc.example.com登録内容を確認できます。
nslookupで確認する
Windows環境では以下を利用します。
nslookup -type=TXT _dmarc.example.com
DNS設定確認でよく利用されます。
DMARCのメリット
- なりすまし防止
- フィッシング対策
- ドメイン保護
- 送信元可視化
- レポート取得
企業メール運用に大きな効果があります。
DMARC導入時の注意点
いきなりrejectを設定すると正規メールまで拒否される可能性があります。
そのため一般的には以下の順で導入します。
none ↓ quarantine ↓ reject
段階的な導入が推奨されます。
GoogleやMicrosoftの対応
GmailやMicrosoft 365ではDMARCが重視されています。
送信ドメイン認証が未設定の場合、迷惑メール判定される可能性があります。
現在では事実上必須の技術になっています。
実務での導入例
以下のような環境で利用されています。
- 企業メールサーバ
- Google Workspace
- Microsoft 365
- クラウドメールサービス
- 金融機関
セキュリティ要件の高い組織ほど導入が進んでいます。
まとめ
DMARCはSPFやDKIMの結果を利用して、なりすましメール対策を行う技術です。
認証失敗メールに対するポリシーを受信サーバへ通知し、レポート収集も行えます。
現在のメールセキュリティではSPF・DKIM・DMARCの3つを組み合わせることが標準となっています。
企業ドメインを安全に運用するためには、DMARCの導入を積極的に検討することが重要です。






