エンタープライズ CA は Active Directory ドメイン サービスと連携した証明機関となります。
そのため、エンタープライズ CA はドメインに参加している Windows Server OS 上に構築する必要があります。
今回は以下の構成でエンタープライズ CA を構築する手順を説明します。
– ドメイン コントローラー 1 台
– ドメイン メンバー (サーバー OS) 1 台
– ドメイン メンバー (クライアント OS) 1 台
環境
ドメイン メンバーのサーバー OS の端末に CA サーバーを構築します。
事前準備となるドメイン コントローラーの構築手順や、ドメイン参加の手順については以下の記事を参考にしてください。
Active Directory ドメイン サービスとは、組織でシステム管理者が、組織内のユーザーやリソースを管理するためのサービスです。 Active Directory は Windows 2000 Server から標準で導入されてお[…]
エンタープライズ CA の構築
ドメイン環境を用意し、サーバー OS の端末 1 台とクライアント OS の端末 1 台をそれぞれドメイン参加させておきます。
今回は Windows Server 2016 と Windows 10 で動作を確認しています。
今回の手順では、ネットワーク設定は除外しています。
1) メンバー サーバーに Enterprise Admins もしくはルート ドメインの Domain Admins の権限をもつユーザーでログオンします。
2) [サーバー マネージャー] を開き、[管理] より [役割と機能の追加] をクリックします。
3) [開始する前に] にて、[次へ] をクリックします。
4) [インストールの種類の選択] にて、[役割ベースまたは機能ベースのインストール] を選択し、[次へ] をクリックします。
5) [対象サーバーの選択] にて、自身のサーバーが選択されていることを確認し、[次へ] をクリックします。
6) [サーバーの役割の選択] にて、[Active Directory 証明書サービス] のチェックボックスを有効にします。
7) [役割と機能の追加ウィザード] にて、[管理ツールを含める(存在する場合)] のチェックボックスが有効になっていることを確認し、[機能の追加] をクリックします。
8) [役割の選択] にて [Active Directory 証明書サービス] のチェックボックスが有効になっていることを確認して [次へ] をクリックします。
9) [機能の選択] にて、そのまま [次へ] をクリックします。
10) [Active Directory 証明書サービス] にて、そのまま [次へ] をクリックします。
11) [役割サービスの選択] にて、[証明機関] のチェックボックスを有効にして [次へ] をクリックします。
12) [インストール オプションの確認] にて、[インストール] をクリックします。
13) [インストールの進行状況] にて、正常に “Active Directory ドメイン サービス” のサービスにインストールが完了したら、[対象のサーバーに Active Directory 証明書サービスを構成する] をクリックします。
14) [資格情報] にて、[資格情報] の枠に Enterprise Admins もしくはルート ドメインの Domain Admins の権限を保持するユーザーの資格情報が入力されていることを確認し、[次へ] をクリックします。
※自動でログオンユーザーが補完されます。もし、ログオン ユーザーはEnterprise Admins もしくはルート ドメインの Domain Admins の権限をしていない場合は、[変更] をクリックして対象の権限を保持している資格情報(ユーザー名とパスワード)を入力します。
15) [役割サービス] にて、[証明機関] のチェックボックスを有効にして [次へ] をクリックします。
16) [セットアップの種類] にて、[エンタープライズ CA] を選択し [次へ] をクリックします。
17) [CA の種類] にて、[ルート CA] を選択して [次へ] をクリックします。
18) [秘密キー] にて、[新しい秘密キーを作成する] を選択して [次へ] をクリックします。
※ 新規に CA サーバーを構築するには、[新しい秘密キーを作成する] を選択します。
基本的には既存の秘密キーを使用するのは、既存の CA サーバーを移行する時となります。
ここで、作成されたキーペア(秘密鍵と公開鍵)は、秘密鍵は発行する証明書の署名、CSR の署名に、また公開鍵は CA 証明書(今回はルート証明書)に使用されます。
19) [CA の暗号化] にて、各種設定を行い [次へ] をクリックします。各種設定の詳細は以下の通りです。
[暗号化プロバイダー] : データの暗号化やハッシュ値を算出するサービスの種類です。
特にこだわりがなければ、既定の “RSA#Microsoft Software Key Strong Provider” のままで問題ありません。
(主要アルゴリズムは全てサポートしているプロバイダーです)
[キー長]:公開鍵のキー長です。
[この CA から発行された署名に使用するハッシュ アルゴリズムを選択] にて、この CA サーバーで発行する証明書の署名に使用するハッシュ アルゴリズムを選択します。
セキュリティの観点から SHA256 以上を選択することを推奨します。MD5 は SHA1 などの古いハッシュアルゴリズムは脆弱性が存在するので推奨しません。
20) [CA の名前] にて、[この CA の共通名] に CA の名前を設定します。
ドメイン名とコンピューター名を組み合わせた名前が自動補完されますが、任意の名前に変更して問題ありません。
ただし、識別名のサフィックスと識別名のプレビューは基本的には変更しないでください。
21) [有効期間] にて、CA 証明書の有効期間の長さを指定して [次へ] をクリックします。
CA サーバーでは CA 証明書よりも長い有効期間をもつ証明書を発行することはできませんので、少し長めの期間に設定するケースが多いです。
ただし、有効期間が長すぎるとセキュリティ的にも問題がありますので、100 年の有効期間など必要以上に長く設定することは推奨しません。
22) [CA データベース] にて、証明書データベースや証明書データベースのファイルの保存場所を指定して [次へ] をクリックします。
自動補完される保存場所のパスのままで問題ありません。
23) [確認] にて、AD CS の構成ウィザードで設定した内容に問題がないか確認し、問題がなければ [構成] をクリックします。
24) [進行状況] にて、設定した CA サーバーが構成されるのを待ちます。
25) CA サーバーが正常に構成されたら、[結果] にて “構成に成功しました” と表示されていることを確認したら、[閉じる] をクリックしてウィザードを閉じます。
26) スタートボタンより、[Windows 管理ツール] の配下にある [証明機関] をクリックして管理ツールをクリックします。
27) [証明機関] です。グリーンのチェックマークがついていれば、正常に稼働しています。
証明書の発行
ドメインに参加しているクライアントでユーザー証明書を発行します。
エンタープライズ CA では、ウィザードで簡単に証明書を発行することができます。
1) クライアントにログオンします。
2) キーボードのWindows キーを押しながら R キーを押して、[ファイル名を指定して実行] を開き、certmgr.msc と入力して [OK] をクリックします。
3) ユーザーの証明書ストアが開きます。
[証明書 – 現在のユーザー] をクリックして [個人] を右クリックします。
4) [すべてのタスク] – [新しい証明書の要求] をクリックします。
5) 証明書の登録ウィザードが立ち上がります。[開始する前に] にて、[次へ] をクリックします。
6) [証明書の登録ポリシーの選択] にて、“Active Directory 登録ポリシー” が選択されていることを確認して [次へ] をクリックします。
7) [証明書の要求] にて、証明書の発行に使用する証明書テンプレートを選択して [登録] をクリックします。
今回は “ユーザー” の証明書テンプレートを選択しています。
8) 証明書が発行されるのを待ちます。
9) [証明書のインストールの結果] にて、選択した証明書テンプレートの項目にて “状態:成功” と表示されていることを確認して [完了] をクリックします。
※ CA サーバーから証明書が発行された後、対象のクライアントの証明書ストアに登録されます。
10) ユーザー Administrator に証明書が発行されています。
補足
エンタープライズ CA はドメイン コントローラー上にも構築することができます。
検証環境でエンタープライズ CA を構築して動作検証する場合は、ドメイン コントローラー上に構築しても特に問題ありません。
ただし、本番環境でエンタープライズ CA を構築する場合は、ドメイン コントローラー上に構築するのはおすすめしません。
その理由は、Active Directory 証明書サービスをインストールしている場合、Active Directory ドメイン サービスをアンインストールすることができないためです。
もし、ドメイン コントローラーの移行を行う際に一旦ドメイン コントローラーを降格する場合、まず Active Directory 証明書サービスをアンインストールする必要があります。
そのため、ドメイン コントローラーの移行にあたり CA サーバーも一旦アンインストールしなくてはならなくなるため、同じサーバー上にドメイン コントローラーと CA サーバーを同居させることはおすすめしない構成です。