SaaS

mxHERO環境でDKIMとDMARCを利用する

はじめに

こんにちわ、セキュリティチームのむろです。

今回はmxHEROのDKIMやDMARCについてのお話です。

この記事では具体的なDKIMやDMARCがどんな仕組みか、DNSレコードの設定方法は触れませんが、mxHERO環境でのDKIMやDMARCを設定する際の流れや注意点をご紹介します。

最初にまとめ

  • mxHEROを構成する環境ではmxHEROと元のメールシステムの両方のDKIM設定が必要
  • DMARCはmxHERO向けの特別な設定は必要無し
  • 確認テスト時は2種類のテストメール、メール受信環境はmxHEROが未構成の環境を利用する

DKIMの前にSPFの設定は?

以下のブログ内の手順で示しているように最初にmxHERO用のSPFは設定済みのはずです。

設定してなかった!という方は自社メールドメインのDNSへ設定しましょう。

mxHEROのDKIMを設定する方法

この記事を見られてる方はすでにお気づきかもしれませんが、mxHEROの管理コンソール内にはDKIMを有効化するような設定メニューは現時点ではありません。

そのため、DKIMの有効化および設定用のDNSレコードを取得するには個別でmxHEROへ有効化依頼の連絡が必要となります。

DKIM設定用のセレクタ情報やDNSレコードを受け取ったら自社のDNS上で設定を行ってください。

弊社クラウドネイティブでmxHEROをご契約の場合は以下の情報と共にSlack上でDKIM有効化のご希望をご連絡ください。

  • 会社名(海外向け英語表記):
  • DKIM有効化希望メールドメイン:

おおよそですが、4営業日ほどでDNSへ設定いただくDKIMのDNSレコードの情報をご連絡します。

検証環境用のドメイン、本番環境用のドメインなど複数のドメインでの依頼も可能です。

注意:メールサービス側のDKIMも有効化・設定が必要

mxHEROを利用するメールサービスであるGoogle WorkspaceのGmail、Microsoft365のExchange Online側でもDKIMの設定の有効およびDNSレコードの設定も行ってください。

メールサービス側のDKIMが有効であってもmxHEROへの動作に悪影響を及ぼすことはありません。

メールサービス側とmxHEROはDNS上ではDKIMのセレクタが異なるので設定はそれぞれ独立してDKIMを有効化・設定する形となります。

メールサービス側の具体的な設定方法はこの記事では触れませんが公式ドキュメントをご参考ください。

片方しか設定しない場合は以下の挙動となりますのでmxHERO、メールサービス側の両方でDKIMの設定を行ってください。

NGパターン1)メールサービスのみDKIMを設定、mxHEROのDKIMは未設定

以下の結果になります。

  • 添付ファイル無しのメールはDKIM=pass
  • 添付ファイル有りのメールはDKIM=fail (body hash did not verify)

添付ファイルの有無によってDKIMの結果が変わるのは不思議に思えますが、DKIMの検証に利用されるハッシュ値の計算にはメールのヘッダ、ボディ(件名やメール本文)も利用されているからです。

mxHEROで添付ファイル付きのメールが共有リンクへ置き換わった際には共有リンクが挿入されて本文が書き変わりますのでメールサービス側のDKIMのみではハッシュ値が一致しなくなるため、前述の状態になります。

厳密な表現だとmxHEROによってメールのヘッダ、ボディ(件名やメール本文)の書き換えが発生するケースが当てはまります。

現時点では添付ファイルの共有リンク置き換えするルールのみが該当しますが、今後の機能拡充で該当する処理が追加となる可能性はあります。

NGパターン2)mxHEROのみDKIMを設定、メールサービスのDKIMは未設定

以下の結果になります。

  • DKIMのアライメント不一致が発生する

DMARCレポート上でDKIMのアライメント不一致を多数検出します。

実はお客様の環境での事例となるため、細かな原因など検証はできていないのですがmxHEROのみDKIM設定していた状態の場合はDKIMのアライメント不一致をDMARCレポートで多数検出する事象が確認できています。

メールサービス側もDKIMを追加設定したところ、DKIMのアライメント不一致の検出する事象が収まったことを確認しています。

前述のようにmxHERO、メールサービス側の両方でDKIMの設定を行ってもデメリットはないので両方設定しましょう。

DMARCはmxHERO向けに特別な設定は不要

DMARCに関してはDKIMと異なりmxHERO特有の設定は必要ありません。

DNS上でDMARCのレコードを設定してください。

ただし、DMARCの仕組みとしてSPFやDKIMの結果が間接的に影響を与えることになる点は認識しておきましょう。

注意:設定後のテスト時に気をつけること

前述のNGパターン1のようのケースもあるため、以下の2種類のテストメールで確認します。

  • 添付ファイル無しのメール
  • 添付ファイル有りのメール

なお、SPF、DKIM、DMARCの結果はメール受信側で確認が必要となりますが、

  • 結果を確認するための受信メール側はmxHEROが構成されていない環境を利用してください

理由はmxHEROのために設定しているメールサービス側の設定が影響を与えるケースがあるためです。

興味があれば、逆に本番環境と検証環境同士でmxHEROを構成している同士のメール環境の場合はどうなるかも確認してみるのも良いかと思います。

SPF、DKIM、DMARCに限らず、メールを受信する側に影響が与える設定の場合はテストケースとして通常の運用で想定される「mxHEROを設定していないメール環境」に対してテストメールを送信して受信側の状態を確認することをお奨めします。

具体例としてはGoogle Workspace内の受信ゲートウェイに登録されたIPアドレスからのメールはSPFやDMARCはチェックされない仕様となります。

[受信ゲートウェイ] の設定で、受信メールのゲートウェイ IP アドレスまたは IP アドレスの範囲を指定します。この設定で指定した IP アドレスから受信したメールに対しては、Gmail による SPF または DMARC のチェックが行われません。

おわりに

少し前にGoogleでメール送信者のガイドラインが発表された影響もあってか、年末から年始にかけてDKIMやDMARCの問い合わせが多くいただきました。その中で得られた情報も含めて小ネタとしてまとめてみました。

はじめに設定すると運用後はなかなか意識しないDKIMやDMARC設定ですが、mxHERO環境でこれから設定しようとする方のご参考になると嬉しいです!

むろ

おいしいおつまみとお酒が好きです。
最近ハマっているのは芋焼酎のソーダ割り。

履き物の基本は下駄の人です。
好きな漫画はワールドトリガーです。