Active Directory証明書サービスでセキュアな公開鍵基盤を構築する(1):基礎から学ぶサーバーマネージャーの使い方(10)(1/2 ページ)
企業のIT環境には、証明書を使用したアプリケーションやネットワーク機器が多数存在する。その際に必要なのは「Active Directory証明書サービス(AD CS)」を核としたセキュアな公開鍵基盤(PKI)だ。今回は、AD CSの設計手法を解説しよう。
Windows Serverで社内に証明機関(CA)を構築する
証明機関(Certification Authority:CA、認証局とも呼ばれる)には、「パブリックCA」と「プライベートCA」の二つがある。パブリックCAは「商用CA」とも呼ばれ、グローバルではシマンテックやグローバルサインがサービスを提供している。一般的に、B2Cビジネスでは商用CAが使用され、B2BビジネスではプライベートCA(社内CA)が使用される。本稿では、マイクロソフトの「Active Directory証明書サービス(Active Directory Certificate Services:AD CS)」を使用してプライベートCAを構築する方法を解説する。
CAの三つのタスク
CAには、主に次の三つのタスクがある。
- 証明書の要求元の身元を確認する:CAは証明書を発行する前に、要求元の身元を確認する必要がある
- 要求元に証明書を発行する:CAは要求元の身元を確認後、要求された種類の証明書をユーザーやコンピューター、ネットワーク機器に発行する
- 証明書の失効状態を管理する:CAは一定間隔のスケジュールに基づき、「CRL(Certificate Revocation List:証明書失効リスト)」を公開する。CRLには、失効した(信頼できない)証明書のシリアル番号と失効理由コードが記載されている
CAの階層化
エンタープライズの公開鍵基盤(Public Key Infrastructure:PKI)では、複数のCAを実装し、一つの「ルートCA」と複数の「下位CA」を配置して階層化する。CAの階層は、おおよそ3層までにすることが多い。なぜなら、いくら階層を深くしても、セキュリティレベルが向上するわけではないからだ。
各階層にあるCAは、それぞれ役割が異なることを理解しておく必要がある(図1)。
CA階層の最上位となる「ルートCA」は下位CAにのみ証明書を発行し、ネットワーク上のユーザーやコンピューター、ネットワーク機器には発行しない。「中間CA」も同様に、下位CA(3階層の場合は、発行CA)にのみ証明書を発行する。そして、「発行CA」がネットワーク上のユーザーやコンピューター、ネットワーク機器に証明書を発行する。
企業でAD CSを導入する際には、何階層のCAを導入すればよいのか判断する必要があるだろう。例えば、中小規模の企業では、2階層がお勧めの構成だ。もちろん、1階層構成でも運用は可能だが、冗長性がないことが課題になる。CAに障害が発生すると、復旧するまで証明書サービスが利用できなくなり、証明書の発行要求や更新要求の処理、証明書失効リストの発行などができなくなるからだ。
1階層のCAの場合は、管理作業の簡略化やコストの最小化が必須条件となっており、セキュリティポリシーで「オフラインルートCA」(後述)の実装が要求されていない場合に限られるだろう。
2階層のCAでは、ルートCAと発行CAが配置されることになる(図2)。この構成では、ルートCAは“オフライン”で運用することが推奨される。このため、このルートCAを「オフラインルートCA」と呼ぶ。オフラインでCAを運用することは、ネットワーク経由の攻撃から保護できることが運用上の大きなメリットになる。
さらに3階層のCAにすると、最大限のセキュリティと柔軟性を確保することが可能となる。主に、次のような場合に3階層構成をお勧めする。
- セキュリティポリシーでCA階層の物理的なセキュリティが必須要件として規定されている
- 複数の保証レベルで証明書を発行しなければならない
- CAの管理責任を各チーム間で分担する
階層構造が決まったら、AD CSをインストールする。AD CSのインストール形態には、「スタンドアロンCA」と「エンタープライズCA」の二つがある(図3)。
初めてAD CSをインストールするユーザーは戸惑うかもしれないが、ここはCAの役割で判断するとよい。つまり、下位CAに証明書を発行するルートCAや中間CAは、スタンドアロンCAとしてインストールする。通常、スタンドアロンCAは、ワークグループとして構成されたスタンドアロンサーバーにインストールする。
一方、発行CAはネットワーク上のユーザーやコンピューター、ネットワーク機器に証明書を発行するので、さまざまなオプションが用意されているエンタープライズCAとして、ドメインに参加したメンバーサーバーにインストールする。
以上のことから、1階層構成でAD CSを導入する場合は、ドメインに参加しているメンバーサーバーに対し、ルートCAと発行CAの二つの役割を持つエンタープライズCAをインストールする。
2階層構成の場合には、ワークグループのスタンドアロンサーバーにスタンドアロンCAをインストールしてルートCA(オフラインルートCA)の役割を持たせ、ドメインに参加しているメンバーサーバーにエンタープライズCAをインストールして発行CAの役割を持たせる。
Copyright © ITmedia, Inc. All Rights Reserved.