ADCS(Microsoft CA局)の冗長化、負荷分散設計について

ADCS(Microsoft CA局)の冗長化、負荷分散設計についてふと気になったので、調べてみました。まず、社内で簡単に証明書を発行するCA局を構築したい場合は、ADCSが便利です。

 

特に昨今話題になっているLDAPS通信の為に、ADCSをいれておけば、自動でドメインコントローラ証明書を発行して、さらに自動更新までしてくれます。

 

もはや、必須ともいえるかもしれません。証明書関連の知識はちょっと難しいので、セキュリティのお勉強が必要になります。そして、これまで何度かADCSを構築してきましたが、基本はシングル構成で、上位、下位の構成で構築することはあっても、発行CA局を複数、しかも冗長構成、負荷分散を意識したことがなかったので、調べてみました。

 

まずはこちらの情報が参考になりました。

証明書サービス(AD CS)の冗長化について

 

質問の抜粋です。

 

証明機関およびオンラインレスポンダの役割を追加するサーバ(プライベートCA)の階層構造(ルートCA・下位CA)について確認させて下さい。

現状はプライベートCAはサーバ1台のシングル構成を想定していたのですが、プライベートCAのサーバ障害(ダウン)時の影響が大きいことから、
冗長構成を検討しております。

そこでプライベートCAの1号機をルートCAに、プライベートCAの2号機を下位CAにすることで冗長構成を組むことができないでしょうか?

具体的にはプライベートCAの1号機がサーバ障害でダウンした場合でも
継続で2号機側でOCSP証明書失効チェックの応答可能でしょうか?

 

 

回答にある通り、OCSPの可用性についてはこちらの情報が参考になりそうです。

Implementing an OCSP Responder: Part V High Availability | Microsoft Docs

 

回答にもありますが、冗長性を確保するのはなかなか設計が大変そうですね。

 

率直にいえば、ルートCAと下位CAを等価のサーバとして動作させる、というデザインそのものが適切ではない、と思います。ルートCAと下位CAを分離する最大の理由はセキュリティ要件によるものです。ルートCAをオフライン化することで、重要なCA情報を保護する機能が格段に向上しますが、オフライン化しないルートCAであれば、分離する意味そのものが著しくなくなります。

どうしても冗長性を確保したいなら、ルートCAをMSFCで冗長化し、それとは別立てでOCSPをNLBで構成して冗長性を持たせる、という設計が必要です。最小限のリソースでうまくやりくりして辻褄を...という考え方自体が難しいと理解しています。

 

マイクロソフトのCA局はリストアが意外とシンプルなので、個人的には障害、もしくは問題が発生した場合は、バックアップからリストアするのが一番いいのではないかと思います。あまり複雑な構成にすると、バックアップ、リストアの検証も大変になりますからね。

 

ロジクール ワイヤレスマウス 無線 マウスM185RD 小型 電池寿命最大12ケ月 M185 レッド 国内正規品 3年間無償保証