メール設定を確認したときに「DMARCが設定されていません」「Action Recommended」と表示されて、何をすればよいのか迷ったことはありませんか。
DMARCは、メールのなりすまし対策に使われる重要な設定です。特に、独自ドメインでメールを送信している場合、SPFだけでなくDMARCも設定しておくことで、メールの信頼性を高めることができます。
この記事では、DMARCとは何か、SPFやDKIMとの違い、DMARCを設定しない場合のリスク、DNSに追加する具体的な設定例まで、初心者向けにわかりやすく解説します。
DMARCとは?
DMARCとは、独自ドメインを使ったなりすましメールを防ぐための仕組みです。
正式には「Domain-based Message Authentication, Reporting and Conformance」と呼ばれます。
簡単に言うと、DMARCは次のような設定です。
このドメインを使った怪しいメールが届いた場合、受信側のメールサーバーでどのように扱ってください
というルールをDNSに登録する仕組みです。
たとえば、あなたのドメインが「example.com」だとします。
第三者が勝手に「info@example.com」を名乗って迷惑メールを送った場合、受信側のメールサーバーはDMARCの設定を確認し、
- そのメールを受け取るのか
- 迷惑メール扱いにするのか
- 拒否するのか
を判断できます。
つまりDMARCは、ドメインを守るためのメールセキュリティ設定です。
DMARCが必要な理由
DMARCが必要な理由は、メールのなりすましを防ぐためです。
独自ドメインのメールアドレスは、会社やサービスの信用に直結します。
たとえば、以下のようなメールが勝手に送られると、ドメインの信頼性が下がってしまいます。
- 請求書を装った偽メール
- ログイン情報を盗むフィッシングメール
- 会社名を使った迷惑メール
- 問い合わせ先を偽装した詐欺メール
DMARCを設定しておくと、このような不正メールを受信側で判定しやすくなります。
また、GmailやYahooメールなどの大手メールサービスでは、送信元ドメインの認証設定を重視する流れが強くなっています。
そのため、DMARCは単なるセキュリティ対策ではなく、メールを正常に届けるための基本設定とも言えます。
SPF・DKIM・DMARCの違い
メール認証には、主にSPF、DKIM、DMARCの3つがあります。
それぞれの役割は違います。
| 種類 | 役割 |
|---|---|
| SPF | このドメインからメールを送ってよいサーバーを指定する |
| DKIM | メールが改ざんされていないかを確認する |
| DMARC | SPFやDKIMの結果をもとに、不正メールをどう扱うか決める |
SPFは、「このサーバーから送信されたメールなら正しい」と判断するための設定です。
DKIMは、メールに電子署名を付けて、途中で内容が変更されていないかを確認する仕組みです。
DMARCは、SPFやDKIMの認証結果をもとに、
認証に失敗したメールをどう処理するか
を決める設定です。
つまり、SPFとDKIMが「確認する仕組み」で、DMARCは「確認に失敗したときの対応ルール」と考えるとわかりやすいです。
DMARC未設定だとどうなる?
DMARCが未設定でも、すぐにメールが送れなくなるとは限りません。
しかし、未設定のままだと以下のようなリスクがあります。
| リスク | 内容 |
|---|---|
| なりすまし対策が弱い | 第三者がドメインを装ってメールを送る可能性がある |
| メールの信頼性が下がる | 受信側で正規メールか判断しにくくなる |
| 迷惑メール判定されやすい | メールが迷惑メールフォルダに入りやすくなる可能性がある |
| ドメインの評判が下がる | 不正利用されると送信ドメインの評価に影響する可能性がある |
特に、お問い合わせフォーム、会員登録メール、予約通知、請求書メールなどを送っているサイトでは、DMARCを設定しておくことをおすすめします。
ドメインチェックで「DMARC未設定」と表示される意味
メール設定のチェックツールで、次のように表示されることがあります。
Action Recommended: It doesn't look like DMARC has been set up on your domain.
これは、
「あなたのドメインにDMARCが設定されていないようです。設定をおすすめします。」
という意味です。
エラーではなく、改善推奨の警告です。
SPFが成功していても、DMARCが未設定の場合はこのように表示されることがあります。
つまり、
SPFは正しく設定されている
しかしDMARCのルールはまだDNSに登録されていない
という状態です。
DMARCの基本的な設定例
初心者が最初に設定するなら、まずは監視モードから始めるのがおすすめです。
DNSに以下のTXTレコードを追加します。
- 種類:TXT
- 名前:_dmarc
- 値:v=DMARC1; p=none; rua=mailto:postmaster@example.com
example.com の部分は、自分のドメインに置き換えてください。
たとえば、ドメインが tempjp.net の場合は以下のようになります。
- 種類:TXT
- 名前:_dmarc
- 値:v=DMARC1; p=none; rua=mailto:postmaster@tempjp.net
DMARCレコードの意味
DMARCレコードは、いくつかの要素で構成されています。
| 設定 | 意味 |
|---|---|
| v=DMARC1 | DMARCを使う宣言 |
| p=none | 認証に失敗しても拒否せず、まずは監視する |
| rua=mailto:〜 | DMARCレポートの送信先 |
最初は「p=none」で問題ありません。
p=noneは、メールを拒否せずに状況を確認するための設定です。
いきなり厳しい設定にすると、正規のメールまで届かなくなる可能性があります。そのため、最初は監視モードで運用し、問題がなければ段階的に強化していくのが安全です。
DMARCのポリシーは3種類ある
DMARCには、主に3つのポリシーがあります。
| ポリシー | 内容 |
|---|---|
| p=none | 何もしない。まずは監視する |
| p=quarantine | 怪しいメールを迷惑メール扱いにする |
| p=reject | 怪しいメールを拒否する |
初心者は、まず「p=none」から始めます。
その後、メール送信に問題がないことを確認できたら「p=quarantine」、さらに厳しくする場合は「p=reject」に変更します。
最初から p=reject にしない方がよい理由
DMARCは、設定を間違えると正規のメールまで届かなくなる可能性があります。
たとえば、以下のようなケースです。
- WordPressから送信するメール
- お問い合わせフォームの自動返信メール
- 外部メール配信サービスから送るメール
- 予約システムや請求システムから送るメール
これらの送信元がSPFやDKIMと正しく連携していない場合、DMARCで不正メールと判断される可能性があります。
その状態で「p=reject」にすると、本来届くべきメールまで拒否されることがあります。
そのため、最初は必ず「p=none」で設定し、問題がないか確認することが大切です。
DNSにDMARCを追加する方法
DMARCは、ドメインのDNS設定に追加します。
基本的な流れは以下です。
- ドメインを管理しているサービスにログインする
- DNS設定画面を開く
- TXTレコードを追加する
- ホスト名に「_dmarc」を入力する
- 値にDMARCレコードを入力する
- 保存する
- 反映されるまで待つ
DNSの反映には、数分から数時間かかる場合があります。
設定直後にチェックしても反映されていないことがあるため、少し時間を置いてから再確認しましょう。
XserverでDMARCを設定する場合
Xserverでドメインを管理している場合は、サーバーパネルからDNSレコードを追加します。
設定例は以下です。
| 項目 | 入力内容 |
|---|---|
| ホスト名 | _dmarc |
| 種別 | TXT |
| 内容 | v=DMARC1; p=none; rua=mailto:postmaster@example.com |
| 優先度 | 空欄または指定なし |
example.com の部分は、自分のドメインに変更してください。
たとえば、tempjp.netで設定する場合は以下です。
- ホスト名:_dmarc
- 種別:TXT
- 内容:v=DMARC1; p=none; rua=mailto:postmaster@tempjp.net
保存後、DNSが反映されればDMARCチェックで警告が解消される可能性があります。
DMARC設定後に確認すること
DMARCを設定した後は、以下を確認しましょう。
- メールが正常に送信できるか
- お問い合わせフォームの自動返信が届くか
- 管理者宛メールが届くか
- GmailやYahooメールに送って迷惑メールに入らないか
- DMARCチェックツールで正常判定されるか
特に、WordPressの問い合わせフォームを使っている場合は、必ずテスト送信を行ってください。
設定自体は正しくても、送信元メールアドレスやSMTP設定との組み合わせによって、メールが届きにくくなることがあります。
DMARCとWordPressのお問い合わせフォーム
WordPressでContact Form 7などの問い合わせフォームを使っている場合、送信元メールアドレスに注意が必要です。
よくある間違いは、フォーム入力者のメールアドレスをそのまま送信元にしてしまうことです。
たとえば、訪問者がGmailアドレスを入力した場合、そのGmailアドレスを送信元として自分のサーバーから送る形になると、なりすましと判断されやすくなります。
正しくは、送信元には自分のドメインのメールアドレスを使います。
例:
- 送信元:info@example.com
- 返信先:問い合わせした人のメールアドレス
この形にすると、SPFやDMARCの認証と整合しやすくなります。
DMARC設定でよくある失敗
DMARC設定でよくある失敗は以下です。
| 失敗例 | 内容 |
|---|---|
| ホスト名を間違える | _dmarc.example.com と入力すべき画面で _dmarc だけでよい場合がある |
| 値を間違える | セミコロンやスペースの位置が不正 |
| メールアドレスを間違える | ruaの送信先が存在しない |
| いきなりrejectにする | 正常なメールまで拒否される可能性がある |
| SPFだけで安心する | DMARCがないと処理方針を指定できない |
特に、DNS設定画面によって「ホスト名」の入力方法が違う点に注意が必要です。
あるサービスでは「_dmarc」と入力しますが、別のサービスでは「_dmarc.example.com」と入力する場合があります。
設定画面の仕様に合わせて入力しましょう。
DMARCを設定すると迷惑メール対策になるのか
DMARCを設定すると、迷惑メール対策として有効です。
ただし、DMARCを設定しただけですべての迷惑メールがなくなるわけではありません。
DMARCは主に、
- 自分のドメインを使ったなりすましメールを防ぐ
- 受信側に正しい判定ルールを伝える
- メール送信元としての信頼性を高める
ための仕組みです。
そのため、メール到達率を改善したい場合は、DMARCだけでなく、SPF、DKIM、SMTP設定、送信元アドレス、メール本文の内容もあわせて確認する必要があります。
初心者におすすめのDMARC設定
初心者におすすめの設定は、以下です。
- 種類:TXT
- 名前:_dmarc
- 値:v=DMARC1; p=none; rua=mailto:postmaster@example.com
この設定なら、メールを拒否せずにDMARCを導入できます。
まずはこの状態で運用し、メール送信に問題がないか確認します。
問題がなければ、次の段階として以下のように強化できます。
v=DMARC1; p=quarantine; rua=mailto:postmaster@example.com
さらに厳格にする場合は以下です。
v=DMARC1; p=reject; rua=mailto:postmaster@example.com
ただし、p=rejectにする前には、正規のメールがすべてSPFまたはDKIMで正しく認証されているか確認することが重要です。
DMARC設定はSEOにも関係あるのか
DMARCそのものが、直接的に検索順位を上げるわけではありません。
しかし、Webサイト運営ではメールの信頼性も重要です。
たとえば、以下のような場面で影響します。
- お問い合わせフォームの返信メール
- 会員登録の確認メール
- 資料請求後の自動返信メール
- 予約完了メール
- 購入完了メール
これらのメールが迷惑メールに入ると、ユーザーとの接点を失ってしまいます。
つまりDMARCは、SEOの直接要因ではありませんが、サイト運営やコンバージョン改善の面では重要な設定です。
Webサイトの信頼性を高めるためにも、独自ドメインを使っているなら設定しておく価値があります。
まとめ
DMARCとは、独自ドメインを使ったなりすましメールを防ぐためのメール認証設定です。
- SPFは、メールを送信してよいサーバーを指定する設定です。
- DKIMは、メールが改ざんされていないかを確認する設定です。
- DMARCは、SPFやDKIMの結果をもとに、不正なメールをどう扱うか決める設定です。
ドメインチェックで「DMARCが未設定」と表示された場合は、DNSにDMARCレコードを追加することで改善できます。
初心者は、まず以下の設定から始めるのがおすすめです。
種類:TXT
名前:_dmarc
値:v=DMARC1; p=none; rua=mailto:postmaster@example.com
最初は「p=none」で監視し、問題がなければ「p=quarantine」「p=reject」と段階的に強化していきます。
DMARCを設定することで、なりすまし対策、メールの信頼性向上、迷惑メール判定の軽減につながります。
独自ドメインでメールを使っている場合は、SPFだけでなくDMARCまで設定しておくことが大切です。
