2つのドメインを管理するとき EPSTDMARC を使って送信ドメイン認証(DMARC/DKIM/ARC)設定に関する質疑応答集 new!
2つのドメインをマルチドメイン管理するときなど、EPSTDMARC v1.06c を使って送信ドメイン認証(DMARC/DKIM/ARC)設定する内容について、質疑応答を紹介します。
〔前提条件〕2つのドメインをマルチドメイン管理するときの送信ドメイン認証(DMARC/DKIM/ARC)設定
1台のサーバにE-Postをインストールし、2つのドメインをマルチドメイン設定により管理する。
dom1.com
dom2.com
このサーバは、DNSサーバも兼ねており、2つのドメインゾーンを管理している。
1.2つのドメイン管理のときDKIM用・ARC用の公開鍵・秘密鍵をそれぞれ作成する。DKIM用・ARC用の公開鍵・秘密鍵をそれぞれ作成する段取りで合っているでしょうか?さらにこれは2つのドメイン(dom1.com, dom2.com)で共通利用するという認識で合っているでしょうか?
dkim_selector1
arc_selector1
→はい。2つのドメインで共通利用する方法であってもかまいませんし、使用上の制限はありません。なお、セキュリティ上はドメイン毎に鍵が異なるものの方がより好ましいと思われます。
2."epstdkim.ini" ファイルにはそれぞれのエンベローブFROMを記載する段取りで合っているでしょうか?
dom1.com dkim_selector1
dom2.com dkim_selector1
→"epstdkim.ini" ファイルで指定するドメイン部分には、下記のような書式で'@'を付けてください。
@dom1.com dkim_selector1
@dom2.com dkim_selector1
3."epstdmarc.ini" ファイルの「FailureReportsSentBy」には、どのように記述すればよいでしょうか。 2つのドメイン分が記載できないようです。
→"epstdmarc.ini" ファイルの「FailureReportsSentBy」についてドメイン毎に分ける設定はありません。
4.〔シングルドメイン・マルチドメイン限らず共通〕dkimの署名と検証を実施した場合、DKIM-Signature は記録されますが、コマンド上で「操作可能なプログラムまたはバッチファイルとして認識されていません」のエラーになります。どこがおかしいのでしょうか。
→コマンド実行時、['D:\Program' は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されていません]のエラーが表示されてコマンド実行ができない場合、空白の含まれるパス名のままコマンドラインで実行していることはないか確認してください。コマンド実行時には次のどちらかで行ってください。
[1] ロングファイルネームのパス全体を "(ダブルクオーテーション)で囲った書式で実行する。
(例・"D:\Program Files\EPOST\MS\epstdmarc\epstdmarc.exe")
[2] ショートファイルネームパスで実行する。(例・D:\PROGRA~1\EPOST\MS\epstdmarc\epstdmarc.exe)
※このときDドライブはショートファイルネームが有効になっていることが前提。有効か無効かを確認したり変更する方法は下記記事を参照。ショートネームパスが使えないときは、カレントパスを指定した形式(先頭に".\"を加える形)にして実行する。(例)「.\epstdmarc.exe [IPアドレス] [メールアドレス] test.msg ns.dom1.com」
(参考FAQ)
●ショートファイルネームが無効にされたDドライブをプログラムインストールフォルダ先にすると問題を与える可能性
5.〔シングルドメイン・マルチドメイン限らず共通〕"sender.ini" ファイルは特に変更することはないと思ってよいでしょううか。
→"sender.ini" ファイルについて、DMARC検証でfail判定時に送信元へのアラートメール通知用として、接続先IP(smtpserver=),ポート(port=)等の指定は必要です。アラートメール通知をしなくてよいのであれば、それらの指定は不要です。
6."epstarc.domain.ini" ファイルはtelnetで接続したホスト名で1つあればよいでしょうか? 2つのドメインのメールサーバとなるが、telnetで接続したホスト名は同じになります。
→"epstarc.[自身のホスト名].ini" ファイルについてですが、サーバが同じでも下記の2つとして作成する必要があります。
epstarc.domainA.ini
epstarc.domainA.ini
それぞれのファイル内に
AuthservID 項
Domain 項
Selector 項
KeyFile 項
これらはそれぞれのドメインの設定に合わせたものにする必要があります。
7.〔シングルドメイン・マルチドメイン限らず共通〕送信ドメイン認証において、ARCは必要なのでしょうか? また、ARCを利用しないと決めた場合、"epstarc.domain.ini" ファイルを作成しない、DNSへのTXTレコードも存在しなければ、動作しないと考えてよいのでしょうか。
→前者についてDMARC設定という点では、ARCは必須ではありません。ARCがなくても問題ありません。
後者についての認識はその通りです。ARCを利用しないため設定しなければ動作せずエラーとなります。エラーが記録されるのを避けるには epstdmarc のインストールフォルダにある epstarc.exe が起動しないように "~epstarc.exe" というようにファイル名の先頭をリネームしておいてください。
(参考FAQ)
●EPSTDMARC を使ってDKIM/DMARC設定したがARC未設定だと epstarc のエラーが出てしまう
8.〔シングルドメイン・マルチドメイン限らず共通〕E-Postが外部SMTPサーバからメールを受信する際に、送信ドメイン認証のチェックが実施されているかをどこで確認できますか?
→通常、送信ドメイン認証のチェックは、E-Postから送信され、届いた先のサイトのSMTP側にて行われます。
確認方法としては例えば、gmail、outlook、yahooなど宛てにメールを送ることで、届いた側で判定結果がメールヘッダ "Authentication-Results: " が付加され、その結果内容が pass として表記されていれば、正常に設定が行われていることを確認できます。
9.〔シングルドメイン・マルチドメイン限らず共通〕EPSTDMARC v1.06c を利用し、送信対応としてSPF(DNS)、DKIM(E-Post)、DMARC(DNS)の対応を行うのは理解しています。一方、E-Postが外部からインバウンド方向のメールを受信した場合、E-PostがSPF、DKIM、DMARCのチェックをしてくれると認識しますが、それをメールサーバ切替前に確認する術があるのでしょうか。本番で実際受信して、そのメールを見てみるしかないのでしょうか。そしてチェック機能(SPF/DKIM/DMARC)を止めることができるのでしょうか。何かこちらの設定で不備がある場合に受信メールに影響があるのを避けたいです。
→DKIM、DMARCの普及に弾みがついたのは、理解されている通り gmail、yahooメールがポリシーを公表したことがきっかけでした。まずこちらからアウトバウンド方向へ送ったメールを相手側が拒絶するか、受け入れるかについては、相手SMTP側のポリシーで決まることなので、自身でコントロールすることはできないことが大前提になります。
そして、E-Postが外部からインバウンド方向のメールを受信した場合、「epstdmarc/epstarcについて」readme.html に書かれている「epstdkim.ini ファイル定義例」にあるように、インバウンド方向メールで外部ドメインから受領したメールに判定記録をヘッダに出力するには、"epstdkim.ini" の末行に "* verify" (それ以外の検証)を記述してください。受領したメールに "Authentication-Results: "のヘッダが追加されるようになります。
----【epstdkim.ini】-------
127.0.0.1 none
@DomainA selectA
@DomainB selectB
* verify
----------------------------
※selectAやselectBは[セレクタ文字]例
もし、内部ドメインで生成したものも、判定記録をヘッダに出力するのであれば、[セレクタ文字,verify] と記載します。1行目に示した "127.0.0.1 none" の設定行は任意ですが、こうした設定行を増やすことで、特定のアドレスからの送信判定出力を行わない場合のホワイトリストの扱いになります。
----【epstdkim.ini】-------
127.0.0.1 none
@DomainA selectA,verify
@DomainB selectB,verify
* verify
----------------------------
なお、DMARCのTXTレコードには、"p=" オプションで判定に対する挙動を指定できます。運用開始時期や試験運用段階では、"p=none" としておけば、基本的には相手拒絶の対象にはなりませんが、これは試験運用期間の設定と考えてください。言い換えれば認証の適用に準備が整っているか状況を分析するため、一定期間を確保するために選ばれることがあるモードです。"p=quarantine" や "p=reject" に切り替えるかは、DKIM、DMARCの世の中の実施状況や動きなど見ながら、実施するかどうかの判断をしてください。
------------------------------------------------------------------------
何もしない(p=none)ポリシーを強制せず、メール活動を監視する。
隔離(p=quarantine)疑わしいメールにフラグを付ける。その後迷惑メールフォルダなどへ隔離。
排除(p=reject)認証されていないメールの配信をブロックする。
------------------------------------------------------------------------