ドメインメールの送信者認証強化としてDMARCを設定した話

  • URLをコピーしました!

数日前に、独自ドメインのメール送信をSendGridからResendへ変更しました。
送信者認証のSPFやDKIMについては、Resendの設定の中で実施しました。
しかし、DMARCについては設定の流れの中には含まれていないので、そのままでは使用できません。
そこで、なりすまし防止強化のためDMARCを設定することにします。

目次

DMARCとは

そもそもDMARCが何かというと、、、

SPFやDKIMで認証されなかったメール(なりすまし判定されたメール)をどのように処理するかを受信メールサーバへ指示するものです。

指示する内容は以下の通りです。

指示する内容
  • none:指示なし(そのまま配信)
  • quarantine:迷惑メールフォルダへ入れる
  • reject:拒否する(送り返す)

DMARCを設定する

DNSレコードへ追加することで設定ができます。

STEP
DNSレコードへ追加

まずは、DMARCの設定をしてもメール送信に問題ないことを確認するため、指示内容は none として設定して確認します。

設定方法としては、以下のレコードをDNSへ追加します。
ドメインはexample.comとしています。
実際には、ご自身のドメイン名に変更してください。

設定値

ホスト:_dmarc.example.com
タイプ:TXT
TTL:自動(好きな値)
データ:”v=DMARC1; p=none; pct=100; rua=mailto:rua@example.com”

ホストは、_dmarcと入れるだけで、_dmarc.ドメイン名となる場合もあります。
ご自身の環境に合わせてください。
(Google Domainsの場合は、_dmarcのみでOKです)

ruaの部分は、メールを受け取れるメールアドレスを設定してください。
自ドメインのメールアドレスを設定してください。
どうしても他のドメインを設定したい場合は、別のTXTレコード追加が必要です。

STEP
メールを送信して受け取れるか確認

ドメインメールから、Gmailなどへ送信して受け取ることができるかを確認します。
Gmailで受信した場合、メッセージソースを見てみましょう。
SPF、DKIM、DMARCが「PASS」となっていれば問題ありません。

GmailでのDMAC確認
STEP
DNSレコードの変更

特にメール送信に問題がなければ、DMARCレコードを変更します。
STEP1では、送信者認証に失敗してもそのまま配信されるようになっています。
ここを、quarantine もしくは reject へと変更します。

設定値

ホスト:_dmarc.example.com
タイプ:TXT
TTL:自動(好きな値)
データ:”v=DMARC1; p=reject; pct=100; rua=mailto:rua@example.com”

私は reject を設定しました。

_dmarkではなく_dmarcなので注意しましょう。

注意点

SPFやDKIMは事前に設定する

DMARCは、SPFやDKIMで弾かれたメールをどう処理するかを指示するものなので、SPFとDKIMは設定済なのが前提です。
事前にSPFやDKIMが機能していることを確認しましょう。

p=noneのまま放置しないようにしましょう

p=noneのままでは、せっかくのなりすまし防止ポリシーが機能しませんので、quarantine もしくは reject を設定しましょう。
メール送信数が多い場合は、quarantine で様子を見て、問題無ければ reject にしましょう。
メール送信数が多くない場合は、すぐに reject にしてしまっても良いと思います。

2024年2月以降、GoogleYahoo!が多くのメールを送信するドメインに対して送信者認証(SPF、DKIM、DMARC)を必須とするようなガイドラインを発表していますので、早めに対処しておきましょう

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次