DMARC確認:DMARCレコードをわかりやすく読み解く
DMARCレコードは、あなたになりすましたメールがどう扱われるかを決める、1行のテキストです。ドメインを入力するとレコードを取得し、各タグを解説して、そのポリシーがドメインを実際に守っているのか、単に監視しているだけなのかを確認できます。
SPFとDKIMにDMARCが加えるもの
DMARCポリシーは、_dmarc.yourdomain.comにあるTXTレコードに置かれます。あなたのドメインからだと名乗るメッセージが届くと、受信側はSPFとDKIMを確認します。DMARCは、少なくとも一方がpassし、そのドメインが読み手に表示されるFromアドレスと一致していれば、passになります。どちらも条件を満たさなければ、受信側があなたのポリシーを適用します。
この最後の部分、アライメントがあるからこそ、DMARCは単にSPFとDKIMを組み合わせたものではありません。攻撃者が自分のドメインでSPFをpassしつつ、Fromの行にあなたのドメインを表示する、という手口を防ぎます。
3つのポリシーと、強化するタイミング
| ポリシー | 認証に失敗したメールの扱い | 使うタイミング |
|---|---|---|
| p=none | 通常どおり配送し、レポートを送信する | 出発点。監視しながら学ぶ段階 |
| p=quarantine | 疑わしいものとして扱う(通常は迷惑メールフォルダー) | レポートで、正規のメールがpassしていることを確認できたあと |
| p=reject | メッセージを拒否する | 確実にメールを送信するドメインの目標 |
すべてのDMARCタグをわかりやすく解説
| タグ | 意味 |
|---|---|
| v=DMARC1 | バージョン。先頭に置く必要がある |
| p | ドメインのポリシー:none、quarantine、reject |
| sp | サブドメインのポリシー。指定がなければ、サブドメインはpに従う |
| pct | 認証に失敗したメールのうち、ポリシーを適用する割合 |
| rua | 毎日の集計レポートの送信先(mailto:のアドレス) |
| ruf | 個別の失敗レポートの送信先。送信する受信側は少ない |
| adkimとaspf | DKIMとSPFのアライメントモード:r(relaxed、既定)またはs(strict) |
| fo | どの失敗で失敗レポートを生成するか |
正規のメールを失わずにDMARCを導入する
- v=DMARC1; p=none; rua=mailto:dmarc-reports@yourdomain.comを公開します。配信には何の影響もなく、レポートが届き始めます。
- 数週間、レポートを読みます。あなたのドメインとしてメールを送信しているすべての送信元と、その認証結果が一覧になっています。DMARCレポートサービスを使えば、XMLを読みやすい形に変換できます。
- 認証に失敗している正規の送信者は、SPFに追加するか、DKIM署名を有効にして、すべて修正します。
- p=quarantineに移行します。問題がないか確認しながら、必要に応じてpct=25から始め、徐々に上げていきます。
- レポートで失敗するのが許可されていないメールだけになったら、p=rejectに移行します。