DMARCのDNSへの設定と、レポートを受信するための設定を調査したので、記録しておきます。シン・レンタルサーバーはエックスサーバとほぼ同じ機能を有していますが、DKIMには対応しておりません。レポート受けるにはDKIM、SPFはあった方がよいので、若干中途半端な環境ですが、DMARCのレポートを受けるための設定がどんなものか確認したので記録しておきます。
なお、DKIMの設定方法についてはこちらを参照ください。
DMARCでレポートを受信するためのメールアカウントの作成
DMARCでレポートを受信するためには、メールアカウントが必要になります。設定するドメインと同じドメインのメールアカウントにした方がトラブルは少ないと思います。
まず、シン・レンタルサーバの管理画面から、メールアカウントを作成します。ここでは、dmarc-reports@dassyi.com というアカウントを作成しました。
メールソフトに作成したアカウントを登録して、imapでメール送受信テストを実施しておきます。
なお、レポートが不要な方はメールアカウントの作成は不要です。
管理するドメインのDNSへTXTレコード登録
次にDMARCレコードを、管理しているDNSに登録します。ここでは、以下のtxtレコードをシン・レンタルサーバの管理画面から登録しました。
_dmarc.dassyi.com IN TXT "v=DMARC1; p=none; rua=mailto:dmarc-reports@dassyi.com;"
各パラメータの設定は、以下の通りです。他にもありますが、ここでは代表的なもののみを掲載します。
パラメータ | 内容(必須の記入がない所は無くても良い) |
v | バージョンです。現在は一つしかないので、DMARC1のみです。必須項目です。 |
p | ポリシーです。3種類のDMARCポリシーがありそれぞれ以下の意味になります。 p=none 何もしません。導入の初期段階に適しています p=quarantine 認証に失敗したメールをスパムフォルダに入れるよう指示します p=reject 認証に失敗したメールを拒否します 本項目は必須項目です。 |
rua | 集約レポートを受信するメールアドレスを指定します。 |
ruf | 失敗レポートを受信するメールアドレスを指定します。 |
adkim | DKIMアライメントモードです。値は s (strict) または r (relaxed)です。 strict モードでは、同一ドメインのみ合格と表示されます。サブドメインの場合は、検証に失敗します。 relaxedモードでは、サブドメインの場合でも、検証は合格と表示されます。 デフォルトは relaxed です。 |
aspf | spfアライメントモードです。値は s (strict) または r (relaxed)です。 こちらもデフォルトは relaxed です。 |
DNSに設定後、_dmarc.dassyi.com の txtレコードが問題なく名前解決できるか(上記の設定内容が表示されるか)確認します。
$ dig _dmarc.dassyi.com txt
動作確認の方法はgmailへメール送付
今回設定したドメイン(dassyi.com)のメールアドレスから(どのアドレスでも結構ですが、私は、上記で作成したレポート受信用のアカウントが正しく動作するかも確認したかったので、そちらから送受信を実施しています)、gmailの任意のアドレスへメールを送信します。
メールを送信したら、gmailのweb画面より、送付したメールが届いているかを確認します。届いていれば、そのメールの「メッセージのソースを表示」からDMARCが「Pass」になっていることを確認します。(SPFも設定済でしたので、こちらも「Pass」でした)
この状態でレポートメールが到着するのをしばらく待ちます。
次の日の朝8:59にレポートが届きました。(メールを送信したのは、前日の22:12です)ちなみに、yahooメール、プロバイダのメールにも同様にメールしましたが、レポートは届きませんでした。やはり動作を確認するのはgoogleが手っ取り早そうです。
googleからのメールには添付ファイルが付いており、こちらを開くとxml形式のレポートになっております。ざっと見て内容は何となくわかりますが、数が多くなってくると、解析するツールがあると便利だと思いました。
DMARC解析ツールについての調査結果
DMARC解析ツールである、parsedmarcをインストールしようと考えましたが、なかなか手順も多く、一筋縄ではいかぬ感じがしましたので、やめておきます。(実際は、ちょっとインストールをしてみたが、うまくいかなかった。というか、elasticsearchとkibanaの使い方がよくわからない…)
Dockerで簡単に環境を構築する方法を公開されている方もいらっしゃるので、何が何でも自分で解析ツールを動かしたい方は、そちらを参照頂ければと思います。個人利用であれば無料で使用できるサイトもあるようですので、私はそちらを利用するのが良いかなと考えております。とはいえ、レポートが多く届いているわけではないので、解析しなくても現状では困っておりません。
今回は送信用のDMARCの設定です
今回の記事で述べたDMARCの設定はあくまでも送信用のDMARCの設定です。つまり、メールの送信先(gmail側)でDMARCで指定したルールに沿って判定してもらう為の設定になります。
もし自分のサーバで、外部から届いたメールをDMARCのルールに沿って処理したい場合は、サーバの中にopendmarcなどのパッケージをインストールして、設定する必要があります。こちらについては、また機会があればテスト環境で構築して動作確認してみます。
今回はここまでです。最後までお読みいただきありがとうございました。