Active Directory証明書サービスでセキュアな公開鍵基盤を構築する(1):基礎から学ぶサーバーマネージャーの使い方(10)(2/2 ページ)
企業のIT環境には、証明書を使用したアプリケーションやネットワーク機器が多数存在する。その際に必要なのは「Active Directory証明書サービス(AD CS)」を核としたセキュアな公開鍵基盤(PKI)だ。今回は、AD CSの設計手法を解説しよう。
証明書の有効期間の指定
証明書は、あらかじめ有効期間を定義しておく必要がある。証明書の有効期間は発行後に変更できないため、CA階層ごとに有効期間を決定する作業は、CA階層を定義する上で重要な作業の一つになる。発行CAが発行する証明書の最大有効期間は、最初に決定しておくことをお勧めする。
ここでの重要なポイントは、マイクロソフトのAD CSでは、CAの(サーバー証明書の)有効期間を超える証明書は発行できないということ。例えば、CAの有効期間が「2年」の場合は、有効期間「3年」の証明書を発行することはできない。また、CAの有効期間が「2年」だった場合、その1年後には有効期間が「1年」になるため、新たに有効期間「2年」の証明書を発行することはできない。
証明書の有効期間に関するベストプラクティスは存在しない。しかし、一つの方法として、CA有効期間は、CAで発行する証明書の最大有効期間の2倍以上に設定するのが望ましい。図4は、発行する証明書の最大有効期間が「5年」の場合の2階層構成の例になる。
図4では、発行CAで発行する証明書の有効期間が、発行CA自体の有効期間によって影響されないようにするために、証明書の有効期間「5年」の2倍となる10年に設定している。さらに、有効期間を2倍にするだけでなく、有効期間の半分が経過した時点でCAの証明書を更新するのが望ましい運用となる。その運用方法としては、次の二つが挙げられる。
- [運用1]CAの秘密キーを有効期間満了まで使用する。つまり、CAの証明書の最初の更新時には、元のキーペアで更新する。その後、さらに5年が経過したら、新しいキーペアでCAの証明書を更新する
- [運用2]CAの証明書を常に新しいキーペアで更新する。つまり、最初の5年が経過したら、新しいキーペアでCAの証明書を更新し、さらに10年目にも再び新しいキーペアでCAの証明書を更新する
ルートCAの有効期間も、発行CAの2倍に指定する。図4の例では、発行CAの有効期間が10年なので、ルートCAの有効期間は20年としている。
この際、極端に長い有効期間を設定するのはお勧めできない。証明書のキーペアの有効期間が長くなれば、それだけ攻撃者が秘密キーの解読に要する時間の猶予が伸びるからだ。さらに、キーの長さが短い場合(2048ビット)と長い場合(4096ビット)を比べれば、短い方が解読される可能性が高くなるので、ルートCAは4096ビット、発行CAは2048ビットで構成するのがよいだろう。
公開ポイントの指定
証明書を使用する場合には、さまざまなチェックを行い、その有効性を確認する必要がある。その際には、公開ポイントとなる「CDP(CRL Distribution Point:CRL配布ポイント)」と「AIA(Authority Information Access:機関情報アクセス)」の設定が重要になる。
- CDP(CRL配布ポイント):発行CAの証明書失効リスト(CRL)を公開する場所を指定
- AIA(機関情報アクセス):発行CAの証明書を公開する場所を指定
CRLは失効した(信頼できない)証明書のリストであり、CAは定期的にCRLを発行して、CDPに公開する(図5)。証明書を使用するクライアントは、CDPからCRLをダウンロードしてキャッシュし、証明書の失効状況を確認する。
CDPとして構成できるサーバーは、Webサーバー、ファイルサーバー、LDAP(Lightweight Directory Access Protocol)サーバーだが、Active Directoryドメインに参加していないクライアントや、インターネット上の外部クライアントをサポートするのはWebサーバーだけなので、通常はWebサーバーをCDPに指定する。AIAもCDPと同様、Webサーバーを指定する。
AD CSの構築では、最初の設計が非常に重要になる。今回解説した内容は最低限の決め事であり、実際の構築は自社の環境を踏まえた上で、慎重に設計を進める必要がある。次回は、具体的なAD CSの構築方法を解説する。
- Active Directory証明書サービスでセキュアな公開鍵基盤を構築する(3)
- Active Directory証明書サービスでセキュアな公開鍵基盤を構築する(2)
- Active Directory証明書サービスでセキュアな公開鍵基盤を構築する(1)
- Windows展開サービスで大量のクライアントPCを一気に展開する(3)
- Windows展開サービスで大量のクライアントPCを一気に展開する(2)
- Windows展開サービスで大量のクライアントPCを一気に展開する(1)
- BranchCacheで遠隔地からのファイルアクセスを高速化
- 乱立するファイルサーバーはDFSで一元管理
- ファイルサーバー管理の強力な助っ人、FSRMを使いこなそう
- DHCPサーバーの設定を確認し、挙動を理解する〜DHCPサーバー編(3)
- フェイルオーバー機能を使いこなせ〜DHCPサーバー編(2)
- Windows Server管理の基本をマスターせよ〜DHCPサーバー編(1)
筆者紹介
阿部 直樹(あべ なおき)
エディフィストラーニング株式会社所属のマイクロソフト認定トレーナー。Active Directory、Network、Security、Hyper-V、Clusterなどを担当。マイクロソフト トレーナー アワード(2010年)およびMicrosoft MVP for Hyper-V(Apr 2010 - Mar 2016)を受賞。個人ブログ『MCTの憂鬱』でマイクロソフト関連情報を発信中。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- Office 365のセキュリティを強化する「多要素認証」
「Office 365」ではパスワード盗難、ID乗っ取り、不正アクセスなどから守るために、セキュリティを強化する手段が用意されている。今回は、IDとパスワード認証の他に、別の認証を追加して、よりセキュアな利用を検討してみよう。 - Windowsで「不正なCAルート証明書」を確認して削除する
「Superfish」事件では一緒にインストールされたCAルート証明書のせいで、通信の暗号化などが「骨抜き」になる事態に発展してしまった。そうした「不正なCAルート証明書」の削除方法と注意点を、Windows向けに解説する。 - WebサーバーにSSLの証明書が正しくインストールされているか確認する
サーバー証明書のエラーの原因を調べたり、あるいは正常なインストールがなされたことを確認したりするには、証明書の発行元が提供しているSSLチェック・ツールを利用するのが手軽で便利である。 - リモート・デスクトップ接続のサーバに「正しい」証明書を割り当てる
リモート・デスクトップで接続しようとすると、リモート・コンピュータのIDを識別できない、という警告がクライアント側に表示されることがある。これはデフォルトでサーバの認証に自己発行の証明書が使われているからだ。正規の証明書を割り当てる方法を説明する。