DMARC を設定するには?
DNS にテキストレコードを追加してキメマス。下記のいずれかを選択する。
①_dmarc.{ドメイン} TEXT v=DMARC1; p=none; rua=mailto:{メールアドレス}
②_dmarc.{ドメイン} TEXT v=DMARC1; p=quarantine; pct=5; rua=mailto:{メールアドレス}
③_dmarc.{ドメイン} TEXT v=DMARC1; p=quarantine; adkim=s; aspf=s
DMARC(Domain-based Message Authentication, Reporting, and Conformance)は、メール送信者が自分のドメインから送信されるメールが適切に認証されているかどうかを確認し、認証に失敗したメールがどのように処理されるべきかを定義するための標準です。DMARCレコードには、ポリシーやレポートの設定を指定するための情報が含まれています。以下に、提供された3つのDMARCレコードの違いを説明します。
① v=DMARC1; p=none; rua=mailto:{メールアドレス}
v=DMARC1
: DMARCのバージョンを指定します。現在はDMARC1
が標準です。p=none
: メールの認証に失敗した場合にどのように処理するかを指定します。none
は、認証に失敗しても特別なアクションを取らない(つまり、レポートだけを収集する)ことを意味します。rua=mailto:{メールアドレス}
: 認証に失敗したメールに関するレポートを送信するメールアドレスを指定します。rua
は「Aggregate Reports」の略で、集約レポートが指定されたメールアドレスに送信されます。
このレコードは、DMARCをテストする段階でよく使用されます。ポリシーがnone
であるため、メールの処理には影響を与えず、ただし認証の結果を確認するためのレポートが受け取れます。
② v=DMARC1; p=quarantine; pct=5; rua=mailto:{メールアドレス}
v=DMARC1
: DMARCのバージョンを指定します。p=quarantine
: メールの認証に失敗した場合に、メールを「隔離」するポリシーです。通常はスパムフォルダーに移動することを意味します。pct=5
: ポリシーを適用するメールの割合を指定します。pct=5
は、認証に失敗したメールのうち5%に対してquarantine
ポリシーを適用することを意味します。残りの95%のメールはポリシーが適用されません。rua=mailto:{メールアドレス}
: 認証に失敗したメールに関する集約レポートを受け取るメールアドレスを指定します。
このレコードは、DMARCポリシーを実際に適用しつつ、全てのメールに対してはなく、指定された割合のメールに対してだけポリシーを適用するために使用されます。これにより、ポリシーが意図した通りに機能しているかを確認できます。
③ v=DMARC1; p=quarantine; adkim=s; aspf=s
v=DMARC1
: DMARCのバージョンを指定します。p=quarantine
: 認証に失敗したメールを隔離するポリシーです。adkim=s
: DKIMのアライメントモードを指定します。s
は「Strict」を意味し、DKIM署名がドメインに完全に一致する必要があることを示します。aspf=s
: SPFのアライメントモードを指定します。s
は「Strict」を意味し、SPFの認証ドメインがドメインに完全に一致する必要があることを示します。
このレコードは、quarantine
ポリシーを適用し、さらにDKIMとSPFのアライメントに対して厳密な一致を要求します。つまり、DKIM署名とSPFの認証ドメインが送信ドメインに完全に一致する必要があります。これにより、より厳格な認証とフィルタリングが行われます。
まとめ
- ① はレポートのみを収集し、メールの処理に影響を与えません(テストや監視用)。
- ② は認証に失敗したメールのうち一定割合に対して隔離ポリシーを適用し、レポートも収集します(ポリシーの適用テスト用)。
- ③ は認証に失敗したメールを隔離し、さらにDKIMとSPFのアライメントに厳密な一致を要求します(本番環境での厳格なセキュリティポリシー)。
それぞれのレコードの設定は、DMARCポリシーの適用度合いとテストまたは本番環境での要求するセキュリティレベルによって異なります。
v=DMARC1; p=none; rua=mailto:{メールアドレス}
v=DMARC1; p=quarantine; pct=5; rua=mailto:{メールアドレス}
v=DMARC1; p=quarantine; adkim=s; aspf=s
例
v=DMARC1; p=none; rua=mailto:mossan@answorz.com
v=DMARC1; p=quarantine; pct=5; rua=mailto:mossan@answorz.com