この記事では、なりすましメールの対策(DMARCの設定)についてご紹介します。
01DMARCとは
DMARCとは、なりすましメール対策の送信ドメイン認証技術の一つです。
DMARCを用いることで、悪意のある第三者によってお客様の送信ドメインが「なりすましメール」に使われることを抑止することができます。
1.1 DMARCのメリット
DMARCには、主に下記2つのメリットがあります。
- 認証失敗となったメールの挙動を定められる
- 受信者から認証結果のレポートを受け取れる
認証失敗となったメールの挙動を定められる
DMARCでは、メール送信者が認証に失敗したメールの受信可否を下記から選択することが可能です。
- 受信側のポリシーに従わせる
- 受信サーバで隔離させる(迷惑メールフォルダで受信するなど)
- 受信させない
DMARCを使用することで、利用しているドメインになりすましたメールが送信された場合、送信者はメールの受信可否を設定することができます。
受信者から認証結果のレポートを受け取れる
DMARCでは、メール送信者が受信者からの認証結果通知を受け取ることが可能です。
なりすましメールが発生した場合に、SPFとDKIMの認証結果をリアルタイムで受け取り、メールの発生源を判断することが可能となります。
1.2 DMARCの仕組み
DMARCを設定することで、送信者は「第三者によるなりすました可能性のあるメール配信」が行われた場合、そのメールの制御を以下の3つのパターンのいずれかを選択することができます。
- 受信側のポリシーに従わせる(none)
- 受信サーバで隔離させる(quarantine)
- 受信させない(reject)
以下の図のように、受信者側でメールを受け取る前に送信者側がそのメールの挙動を管理できるようになります。
図1.DMARCのイメージ |
02DMARCを設定するための事前準備
DMARCの設定に必要な準備や手順について、以下にまとめます。
-
SPFレコードの設定
DMARCを利用するには、まずSPFレコードの設定が必要です。SPFレコードは、送信元ドメインからメールを送信する権限があるメールサーバーのIPアドレスを指定するものです。 -
DKIM(作成者署名)の設定
次に、DKIMの設定が必要です。DKIMは、メールの送信元ドメインが正当であることを証明する技術です。送信元ドメインからメールを送信する場合、メールヘッダーにDKIM署名を追加して、受信側がメールの正当性を確認できるようにします。 -
DMARC対応を行うメールドメインの決定
DMARCを利用するにあたり、対象となるメールドメインを決定する必要があります。DMARC対応を行うドメインは、お客様側で決定していただく必要があります。 -
DMARCの設定
SPFレコードとDKIMの設定が完了したら、DMARCの設定を行います。詳細については次の章に記載します。
「SPFレコード設定」と「DKIM設定」の設定方法に関しては、以下マニュアルをご覧ください。
03DMARCの設定
SPFレコードの設定 と DKIMの設定が完了したら、次はDMARCの設定を行います。
※DMARCの設定は貴社システム部門へご依頼いただくことを推奨いたします。
3.1 DMARCレコードを設定する
お客様の方で、DMARC対応を行うメールドメインに対して、DNS上にDMARCレコードを設定してください。DMARCレコードには、前述のDMARC設定の値を含める必要があります。設定例としては、以下のような形式になります。
■DNS上のテキストレコードの設定例
_dmarc.shanon-services.com IN TXT "v=DMARC1; fo=1; p=none; sp=none; aspf=r adkim=r;"
DMARCのオプションの値に関しては、下記を表を参考に設定してください。
(必須)がついている項目は、必ず下記に記載されている値を設定してください。
(必須)がついていない項目は、下記が推奨値となるため、必要に応じて変更を行ってください。
パラメータ名 | パラメータの概要 | 設定する値 | 補足 |
---|---|---|---|
fo | 失敗レポートの送信条件 | 1 | いずれかの認証がPASSでなかった場合に失敗レポートを生成 |
p | 認証失敗時の動作 | ※下記参照 | 初期設定時はnone (何もしない)を推奨いたします |
sp | サブドメインでの認証失敗時の動作 | ※下記参照 | 初期設定時はnone (何もしない)を推奨いたします |
認証失敗時の操作に関しては、下記表をご覧ください。
まずは「none」での設定を推奨いたします。この場合、設定に不備があった場合もメールを拒否される事なく送信する事が可能です。DMARCの設定が問題無い事を確認できた後で、必要に応じてquarantine (不審なメールと扱う)やreject (受信拒否する)にご変更ください。
設定値 | 詳細 |
---|---|
p=none | 未認証メールを受け取ったときに受信サーバで取るべきアクションについて、特に規定しないというポリシーです。受信したメールは、受信メールサーバが自身で処理します。 発生した全てのエラーレポートはDMARCレコードの mailto: に送信されます。 |
p=quarantine | 未認証メールは、受信サーバで隔離します。 一般的には迷惑メールフォルダに振り分けられ、復帰させることもできる状態です。 「メールがどこから来るかは全て分かっているが、100%確信するまでは未認証メールを SoftFail にしたい」といった場合に有効です。 |
p=reject | 未認証メールは完全に拒否し、受信しません。 未認証メールは全て飲み込まれ、バウンスも発生しないため、誤判定をキャッチすることはできません。 メールを送信するサーバやサービスが全て分かっており、各サービスで署名していて、未認証メールを全て完全に拒否したい場合に有効です。 |
3.4 DMARCレコードの設定状況を確認する
DMARCレコードの設定が完了したら、正しく設定できているかを確認してください。
設定後、以下をコマンドプロンプトへ入力することで、設定状況を確認することが可能です。
nslookup -type=TXT _dmarc.お客様のメールドメイン名
以下のように、「v=DMARC1;」と記載があれば正常に設定が行われている状態となります。
図4.DMARCレコードの設定イメージ |