DKIMキーローテーションの解説:ベストプラクティス、手法、およびツール

by

最終更新日:
6 読了時間:約6分
DKIMキーローテーションの解説:ベストプラクティス、手法、およびツール

DKIM鍵ローテーションとは、メールのセキュリティを維持するために、既存のDKIM暗号鍵を新しい鍵に置き換えるプロセスです。技術的に聞こえるかもしれませんが、その考え方は単純です:パスワードが永遠に同じままであってはいけないのと同じように、DKIM鍵もそうあるべきではないのです。

DKIMキーの定期的なローテーションは、メールのなりすまし、フィッシング、ドメインの不正利用を防ぐのに役立ちます。このガイドでは、DKIMキーとは何か、ローテーションが重要な理由、ローテーションの頻度、そして最も安全な方法(手動または自動)について解説します。

DKIMキーとは何ですか?

DKIM(DomainKeys Identified Mail)は、電子メールが主張する送信元ドメインから実際に送信されたかどうかを検証する電子メール認証プロトコルです。

メールが送信されると、送信サーバーは秘密鍵で署名します。対応する公開鍵はDNSのTXTレコードとして公開されます。受信側のメールサーバーがメッセージを受信すると、DNSから公開鍵を取得し、署名検証に使用します。署名が一致した場合、メッセージは真正かつ改ざんされていないと確認されます。

このプロセスは送信サーバーと受信サーバー間の信頼を強化します。また受信トレイへの配信率を向上させ、ドメインのなりすましから保護します。DKIMはSPFおよびDMARCと連携し、なりすましやフィッシングに対する多層防御を形成します。

しかし暗号保護は、一度設定すれば後は忘れておけるようなものではない。鍵も進化させなければならない。

DKIMキーのローテーションが重要な理由

DKIM鍵ローテーションとは、安全な移行期間を経て新しい秘密鍵/公開鍵ペアを生成し、古いペアを廃止することを意味します。では、なぜこれが重要なのでしょうか?悪意のある攻撃者が秘密鍵を入手した場合、正当に見える偽のメールに署名できるからです。これにより以下のような事態が発生する可能性があります:

  • あなたのドメインからのフィッシングキャンペーン
  • ブランドなりすまし
  • メールのブラックリスト登録
  • 配信障害

鍵が有効な期間が長ければ長いほど、リスクに晒される危険性が高まります。たとえ鍵が侵害されなくても、長期的な再利用は攻撃対象領域を拡大します。しかしそれだけではありません!運用上の理由もあります:時代遅れの鍵(1024ビット鍵など)は現代のセキュリティ要件を満たさず、認証の信頼性に影響を及ぼす可能性があります。したがってDKIMのローテーションは、鍵を最新かつ堅牢な状態に保つことで、ブランドの評判とメールインフラの両方を保護します。

DKIMキーはどのくらいの頻度で更新すべきですか?

普遍的なルールは存在しませんが、業界のベストプラクティスでは以下が推奨されています:

  • ほとんどの組織では6~12か月ごとに
  • 高セキュリティまたは大量送信者向け:3~6か月ごと
  • 直ちに、妥協が疑われる場合

メッセージング、マルウェア、モバイル不正利用対策ワーキンググループ(M3AAWG)などの業界団体のガイダンスに沿った組織は、通常、年次または半年ごとのローテーションポリシーを採用している。

同様に重要なのが鍵の長さです。現在では最低2048ビットの鍵が推奨されています。一部のシステムでは1024ビット鍵が技術的にサポートされているものの、その脆弱性が指摘されるケースが増えています。2048ビット鍵へのアップグレードは暗号強靭性を高め、現代の標準に適合します。

DKIM鍵更新の方法

インフラストラクチャと制御レベルに応じて、DKIMキーをローテーションする方法はいくつかあります。

1.手動によるDKIMキーのローテーション

あなたのドメインに新しいキーを作成することで、DKIMキーを時々手動で回転させることができます。これを行うには、次の手順に従います。

  • 無料のDKIMレコード生成ツールをご利用ください
  • ドメインの情報を入力し、希望のDKIMセレクタを入力する。
  • 生成 "ボタンを押す
  • 新しいDKIMキーのペアをコピーします。
  • 公開鍵はDNSで公開され、以前のレコードを置き換えます。
  • 秘密鍵は、ESPと共有するか(メールをアウトソーシングしている場合)、メールサーバーにアップロードします(メールの転送をオンプレミスで処理している場合)。

2.サブドメインDKIM鍵の委譲

ドメイン所有者は、第三者にDKIMキーローテーションを処理させることで、アウトソーシングすることができます。これは、ドメインの所有者が電子メールベンダーに専用のサブドメインを委任し、彼らに代わってDKIMキーペアを生成するよう依頼する場合です。これにより、所有者は、第三者に責任を委託することで、DKIMキーローテーションの手間を省くことができます。

しかし、これはDMARCエントリーでポリシーの上書き問題を引き起こす可能性がある。エラーのない円滑な展開を保証するために、ローテートされた鍵はドメインコントロ ーラーによって監視、確認されることが推奨される。

3.DKIM CNAME鍵の委譲

CNAMEはcanonical nameの略で、外部ドメインのデータを指すために使用されるDNSレコードです。CNAME委任により、ドメイン所有者は外部のサードパーティによって維持されているDKIMレコード情報を指すことができます。これはサブドメイン委任と似ていて、ドメイン所有者は自分のDNSにいくつかのCNAMEレコードを公開するだけでよく、DKIMインフラストラクチャとDKIMキーローテーションはレコードが指すサードパーティによって処理されるためです。

例えば、
「domain.com」は、送信元のメールに署名されるドメインであり、「third-party.com」は署名処理を担当するベンダーです。

s1._domainkey.domain.com CNAME s1.domain.com.third-party.com

上記のCNAMEレコードは、ドメイン所有者のDNSに公開する必要があります。
現在、s1.domain.com.third-party.comのDNSには既にDKIMレコードが公開されており、その形式は次の通りです: s1.domain.com.third-party.com TXT “v=DKIM1; p=MIG89hdg599….”

この情報は、domain.comから発信される電子メールに署名するために使用されます。

注記: DKIMキーローテーションを有効にするには、DNSに異なるセレクタを持つ複数のDKIMレコード(推奨: 少なくとも3つのCNAMEレコード)公開する必要があります。これにより、ベンダーは署名時にキーを切り替えられるようになり、代替オプションを提供できるようになります。

4.DKIMキーの自動ローテーション

ほとんどのメールベンダーとサードパーティメールサービスプロバイダーは、顧客向けにDKIMキーの自動ローテーションを可能にしています。例えば、メールのルーティングにOffice 365を使用している場合、MicrosoftがOffice 365のユーザー向けにDKIMキーの自動ローテーションをサポートしていることを知れば、嬉しくなるでしょう。

ナレッジベースでは、Office 365メールのDKIMキーローテーションを有効にする方法について詳しく説明しています。

DKIM鍵ローテーションのベストプラクティス

以下の簡単なチェックリストに従ってください:

  • 最低2048ビットの鍵を使用する
  • 6~12か月ごとに回転させる
  • 複数のセレクタを使用する
  • ローテーション記録を維持する
  • 古いキーを取り外す前に新しいキーをテストしてください
  • 移行期間中は猶予期間を設ける
  • すべての教育ソフトウェアプロバイダー(ESP)およびベンダーと連携する
  • ローテーション後のDMARCレポートを監視する

よくある落とし穴と回避方法

経験豊富なチームでもミスは起こります。よくあるローテーションの問題点:

よくある落とし穴と回避方法

1. 古いキーを早すぎる段階で削除すること

削除前には必ずDNSの伝播とメールフローの完了に時間を確保してください。ここでDMARCレポートの設定が役立ちます。DMARCレコードを生成し、認証ステータスと結果に関する日次レポートを受信するため、自身のメールアドレスを「rua」タグに定義するだけです。

2. 検証のスキップ

新しいセレクターを有効化した後は、必ず認証結果をテストしてください。手動で行うことも可能ですが、即座に明確な結果と洞察を得るためには、DKIMチェッカーツールの利用が推奨されます。

3. 複数のセレクタを使用しない

単一セレクタの設定はダウンタイムのリスクを生じさせます。ドメインに設定する個別のDKIMレコードごとに別々のセレクタを定義し、受信サーバーが鍵を容易に特定できるようにしてください。

4. 誤った委任設定

誤ったCNAMEレコードまたはサブドメインレコードはDKIMの整合性を損なう可能性があるため、設定を変更するたびに必ず検証を行ってください。

5. 鍵サイズの無視

時代遅れの1024ビット鍵はセキュリティ態勢を弱体化させます。専門家は、強化された保護と最新のセキュリティ基準への準拠のため、少なくとも2048ビットのDKIM鍵を設定することを推奨しています。

DKIMキーローテーション戦略の導入

これをDKIM鍵ローテーションの3つのDと呼びます:

ステップ1. 協議:ステークホルダーおよびベンダーと、ローテーション頻度、鍵サイズ(2048ビット推奨)、委任方法について合意する。

ステップ2. 決定:回転モデルを選択してください:手動、CNAME委任、サブドメイン委任、または完全自動化

ステップ3. デプロイ: 最後に、新しいセレクターを生成して安全に実装し、認証を監視し、検証後にのみ古いキーを削除します。

例:ローテーションスケジュール

1月:新しいセレクターと鍵を追加
2月:署名対象を新しいセレクターに切り替える
2月中旬:古い鍵を削除
6~12か月ごとに繰り返し

まとめ

DKIM鍵のローテーションは、電子メールセキュリティにおいて重要でありながら見過ごされがちな要素です。鍵を何年も変更しないままにすると、リスクに晒される可能性が高まり、認証フレームワークが弱体化します。要約すると、6~12か月ごとの鍵ローテーション、2048ビット暗号化の使用、複数のセレクタの維持、認証結果の監視が、強固なローテーション戦略の基盤を構成します。

DKIMキーのローテーションと認証を簡単にするため、PowerDMARCがお手伝いします!当社の専門家チームは、10,000以上の組織がプロトコルの設定と管理を自動化するのを支援してきました。推測作業やダウンタイムは一切ありません。詳細を知りたい方や今すぐ始めたい方は、本日お問い合わせください

よくあるご質問

1. DKIMキーのローテーションにはダウンタイムが必要ですか?

No. DKIMキーのローテーションは、正しく実装されていればダウンタイムを引き起こすことはありません。移行期間中に新しいセレクターを導入しつつ、古いキーを有効なまま維持することで、移行中もメールは通常通り認証され続けます。

2. すべての送信元でDKIMキーを同時にローテーションすべきですか?

必ずしもそうとは限りません。複数のメールサービスプロバイダーや内部メールサーバーを使用している場合、各送信元ごとに独自のDKIM設定が存在する可能性があります。認証の不整合を避けるため、送信元ごとにローテーションを調整する必要があります。

3. DKIMキーをローテーションした後、古いキーはどのくらい保持すべきですか?

新しいセレクタへの切り替え後、少なくとも1~2週間は古いキーを公開したままにしておくことが一般的に推奨されます。これは、DNSの伝播遅延や、以前の署名を参照している可能性のあるキュー内のメールを考慮した措置です。

4. DKIMキーは自動的に期限切れになりますか?

DKIMキーは、設定しない限り技術的には期限切れになりません。DNSレコードは、手動で削除または置換されるまで有効なままです。

5.DMARC準拠のためにDKIMキーローテーションは必要ですか?

DMARCは明示的にDKIM鍵のローテーションを要求しません。ただし、定期的なローテーションはメール認証全体の強化につながり、侵害された鍵や古い鍵によるDKIM整合性失敗のリスクを低減します。