どうも、Tです。
先日、AD CSをインストールしましたが、Webブラウザから証明書発行のリクエストを行えるようにWeb登録機能を追加します。
別サーバーにすることもできますが、検証環境のため先日AD CSをインストールしたCAに同居させます。
目次
やりたいこと
下記のようにWebサイトから証明書要求できる機能(証明機関Web登録)を追加したい。
環境
- Windows Server 2019
- 作業は、ドメインAdministratorで実施
- AD CSのエンタープライズCAは構築済み
証明機関Web登録インストール
証明機関Web登録をインストールしていきます。
サーバーマネージャーの「管理」->「役割と機能の追加」をクリックします。
「役割ベースまたは機能ベースのインストール」を選択し「次へ」をクリックします。
インストールするサーバーが正しいことを確認して、「次へ」をクリックします。
「証明機関Web登録」をクリックします。
「機能の追加」をクリックします。
「証明機関Web登録」にチェックが付いたことを確認し「次へ」をクリックします。
「次へ」をクリックします。
「次へ」をクリックします。
「次へ」をクリックします。
「インストール」をクリックします。
証明機関Web登録のインストールが完了しました。
証明機関Web登録の構成
続いて、証明機関Web登録の構成を行っていきます。
「対象サーバーにActive Directory証明サービスを構成する」をクリックします。
資格情報にEnterprise Adminsグループ所属のADドメインユーザーを指定して、「次へ」をクリックします。
「証明機関Web登録」をチェックし、「次へ」をクリックします。
「構成」をクリックします。
証明機関Web登録の構成が完了しました。「閉じる」をクリックします。
サーバー証明書の発行とIISへの適用
問題
ここで1つ問題が発生します。
証明機関Web登録のWebサイトとして、IISにCertSrvが登録されています。
「http://localhost/certsrv/」にアクセスして証明書を要求してみます。
下記のメッセージが表示され操作が行えません。
証明書登録を完了するには、CAのWebサイトをHTTPS認証を使用するように構成する必要があります。
証明機関Web登録のWebサイトがHTTPS化されていないことが原因です。
エンタープライズCAから証明書を発行して、証明機関Web登録のWebサイトをSSL化していきます。
SSL証明書用の適切な証明書テンプレートを構成
サーバーマネージャーの「ツール」->「証明機関」をクリックします。
「証明書テンプレートを右クリック」->「管理」をクリックします。
「Webサーバー」->「テンプレートの複製」をクリックします。
全般タブ設定
全般タブの設定を変更します。
テンプレート表示名:判別しやすい任意の名前
有効期限:10年(任意の数値。CAの有効期限以下の値。)
セキュリティタブ設定
セキュリティタブを設定していきます。指定のコンピュータアカウントが証明書の要求を行えるようにします。
「追加」をクリックします。
「オブジェクトの種類」をクリックします。
「コンピュータ」のみ選択状態にし「OK」をクリックします。
「証明機関Web登録」をインストールしたコンピュータ(今回は自分自身)を選択して「OK」をクリックします。
選択したコンピュータを選択し「登録」の「許可のチェックボックス」を有効にします。
サブジェクト名タブ
サブジェクト名タブの設定を行います。
下記の設定を行い、「OK」をクリックします。
「Active Directory の情報から構築する」を選択
「サブジェクト名の形式」に「共通名」を設定
「DNS 名」にチェック
「ユーザー プリシンパル名 (UPN)」のチェックを外す
証明書テンプレート
複製したテンプレートが表示されることを確認します。
証明書テンプレートを利用できるようにします。
「証明書テンプレートを右クリック」->「新規作成」->「発行する証明書テンプレート」をクリックします。
作成したテンプレートを選択し「OK」をクリックします。
証明書テンプレートとして利用できるようになりました。
証明書テンプレートを使用してIISの証明書を取得
作成した証明書テンプレートを利用して、IISの証明書を発行してみます。
「ファイル名を指定して実行」で「mmc」と入力し「OK」をクリックします。
「ファイル」->「スナップインの追加と削除」をクリックします。
「証明書」を選択して「追加」をクリックします。
「コンピューターアカウント」を選択して「次へ」をクリックします。
「ローカルコンピュータ」を選択して「完了」をクリックします。
「OK」をクリックします。
「証明書を右クリック」->「すべてのタスク」->「新しい証明書の要求」をクリックします。
「次へ」をクリックします。
「次へ」をクリックします。
作成した証明書テンプレートを選択し「登録」をクリックします。
「完了」をクリックします。
新しく発行された証明書が追加されます。(有効期限がテンプレートで指定した10年になっています)
デフォルトのWebサイトでHTTPSを構成
発行した証明書をIISに適用します。
サーバーマネージャーから「ツール」->「インターネットインフォメーションサービス(IIS)マネージャー」をクリックします。
「Default Web Siteを右クリック」->「バインドの編集」をクリックします。
「追加」をクリックします。
下記を設定し「OK」をクリックします。
種類:https
SSL証明書:発行した証明書(FQDNになっているもの)
「https」が追加されたことを確認し「閉じる」をクリックします。
確認
問題となっていたメッセージが表示されないか確認します。
HTTPS化したため、httpsで始めるURLでアクセスし「証明書を要求する」をクリックします。
「証明書の要求の詳細設定」をクリックします。
「このへの要求を作成し送信する」をクリックします。
「はい」をクリックします。
ここで問題のメッセージが表示されていましたが、問題なく操作できるようになりました。
参考
まとめ
凄く面倒・・・・使い方はおいおいまとめますかね・・・・。