CloudflareDMARCメール認証Web 担当者

Cloudflare で DMARC を設定する手順

ドメイン番人5 分で読めます
目次

Cloudflare で DMARC を設定する 3 ステップ

この記事でわかること

  • Cloudflare DNS で DMARC レコードを追加する具体的な手順
  • p=none で観察する期間と次の判断
  • Cloudflare の DMARC Management 機能との関係
  • よくあるつまずきポイント

Cloudflare で DMARC を設定する全体像

Cloudflare で DMARC を設定するパターンは大きく 2 つあります。

  1. 手動で TXT レコードを追加(一番シンプル)
  2. Cloudflare Email Security の DMARC Management を使う(レポート集計まで一括)

中小企業で「まず DMARC を有効化したい」段階なら 1 で十分です。レポート集計まで自動化したいなら 2 を併用します。

DMARC の役割と仕組みの前提は DMARC とは|なりすまし対策の基本 を参照してください。

ステップ 1: 既存の SPF / DKIM を確認する

DMARC は SPF または DKIM の認証結果を前提に動きます。先に両方が pass する状態にしておきます。Cloudflare で DKIM が反映されない場合は、Cloudflare で DKIM が反映されないときの対処を参照してください。

dig TXT example.co.jp +short
dig TXT default._domainkey.example.co.jp +short

SPF が無い、または DKIM が未設定なら先に整えます。Cloudflare DNS 上での DKIM 設定は Cloudflare で DKIM を設定する手順 にまとめています。

SPF の include を増やしすぎると 10 lookup 超過で PermError になります。気になる場合は SPF レコード Flattening を参照。

ステップ 2: Cloudflare ダッシュボードで DMARC を追加

  1. Cloudflare にログイン → 対象ドメインを選択
  2. DNS → Records → 「Add record」をクリック
  3. Type: TXT を選択
  4. Name: _dmarc(フルドメインは自動補完)
  5. Content に DMARC レコードを貼り付け
  6. TTL: Auto(300 秒前後で運用される)
  7. Save

最初に貼るレコードは観察モードの p=none で固定します。

v=DMARC1; p=none; rua=mailto:dmarc@example.co.jp; adkim=r; aspf=r; pct=100

rua= の受信箱は、人が直接読む通常メールとは分けます。ノイズが多いため専用エイリアスを用意するのが安全です。

Cloudflare DNS の TXT 編集画面イメージ

ステップ 3: 反映を確認する

数分後に以下で確認します。

dig TXT _dmarc.example.co.jp +short
"v=DMARC1; p=none; rua=mailto:dmarc@example.co.jp; ..."

外部ツール(mxtoolbox / dmarcian など)でも構文エラーが出ないかを確認します。テストメールを Gmail へ送り、メッセージのソースで dmarc=pass が出れば設定は通っています。

反映時間の考え方は DMARC は反映に何日かかる? を参照。

ステップ 4: 2〜4 週間レポートを観察

p=none のままで 2〜4 週間、rua= 宛に届くレポートを観察します。集計は dmarcian / EasyDMARC / Postmark などのツールを使うと一気に読みやすくなります。比較は DMARC レポート解析ツール おすすめ 7 選 を参照。

観察で確認したいのは次の点です。

  • 自社が把握していない送信元(旧 ESP / グループ会社 / SaaS)が出ていないか
  • 想定済みの送信元がすべて pass しているか
  • 認証 fail のメールがどの IP から出ているか

ステップ 5: p=quarantine → p=reject に段階強化

問題が無いと判断できたら p=quarantine に上げ、さらに 2 週間問題が無ければ p=reject に進めます。途中で fail のメールが急増したら一旦 p=none に戻して原因を特定します。詳細なロードマップは DMARC ポリシー強化の手順 を参照。

v=DMARC1; p=quarantine; rua=mailto:dmarc@example.co.jp; pct=25

pct=25 のように適用比率を絞る方法もあります。fail 急増時の影響範囲を 1/4 に抑えながら様子を見られます。

Cloudflare 固有の便利機能

DMARC Management(Email Security)

Cloudflare のメニュー Email → DMARC Management から、レポート受信先(rua=)を Cloudflare のエンドポイントに向ける機能が提供されています。ダッシュボード上で集計結果がそのまま見えるため、外部 SaaS を別契約せずに済みます。

ただし、ベンダー比較で軸を作りたい場合は dmarcian / EasyDMARC など独立系の集計ツールも検討する価値があります。判断材料は DMARC レポート解析ツール おすすめ 7 選 を参照。

Cloudflare Workers で送信する場合

Cloudflare Workers から SaaS 経由で送信する構成では、DMARC アラインメントを意識します。From ヘッダの組織ドメインと DKIM 署名ドメインが一致していないと DMARC fail になります。Workers ベースのメール送信は Cloudflare で DKIM を設定する手順 も併読してください。

よくある失敗

失敗 1: _dmarc 以外のサブドメインに置いてしまう

DMARC は必ず _dmarc.example.co.jp の TXT です。dmarc.example.co.jp ではありません。

失敗 2: SPF と同じく TXT を 2 本に分けてしまう

DMARC は 1 ドメインに 1 本だけ。2 本以上あると無効です。既存レコードを更新する形で 1 本に統合します。

失敗 3: rua の受信箱が満杯 / フィルタで弾かれる

レポートはノイズが多いため、人の受信箱に直接届けるとフィルタで弾かれることがあります。専用エイリアスや集計ツール経由が安全です。

まとめ

  • Cloudflare DNS で DMARC は TXT 1 本で開始できる
  • 必ず p=none から始め、2〜4 週間レポートを観察
  • 問題なければ quarantinereject に段階強化
  • レポート集計は Cloudflare Email Security か外部 SaaS で

まずは現状を把握しましょう

Cloudflare 配下のドメインで DMARC が正しく機能しているかは、ドメイン番人の無料診断で確認できます。設定変更後の動作確認にもお使いください。判断に迷う場合はお問い合わせからご相談ください。

次の一歩は無料診断から。