RDSH の負荷分散構成において RD 接続時や RemoteApp 起動時に発生する警告メッセージを回避する方法
こんにちは。Windows テクノロジー サポートの新木です。
リモート デスクトップ セッション ホストの負荷分散構成において、リモート デスクトップ接続時に発生する証明書エラーの警告メッセージを表示させない方法についてご紹介したいと思います。
今回は、通常の RDP 接続をする場合と、RemoteApp を使用してリモート デスクトップ セッション ホスト上のアプリケーションを起動する場合について説明します。
今回ご紹介する内容は Windows Server 2008 R2 の内容となっていますが、Windows Server 2008 においても同様の手順にて証明書エラーの警告メッセージを回避することができますので、参考にしていただければ幸いです。
今回手順をご紹介する上で、検証に使用した環境の構成を以下に記載します。
サーバーはすべて Windows Server 2008 R2 のサーバーを使用しています。
・ドメイン コントローラー 1 台
・リモート デスクトップ セッション ホスト サーバー 2 台
・リモート デスクトップ接続ブローカー サーバー 1 台
・クライアント (Windows 7 SP1)
※リモート デスクトップ接続ブローカーの 「FARM1」 というファームに上記2台のリモート デスクトップ セッション ホスト サーバーを参加させました。
※ドメイン コントローラーには、Active Directory 証明書サービスがインストールされています。
まずは、既定の状態で、クライアントから FARM1 に対してリモート デスクトップ接続を実行した時と、クライアントに配布した RDP ファイルにより RemoteApp を起動した時の挙動について確認してみましょう。
■リモート デスクトップ接続
[リモート デスクトップ接続] を起動して、コンピューター名の欄に 「FARM1」 と入力して [接続]ボタンを押すと、ユーザー アカウント情報を入力するポップアップが表示されます。
ユーザー アカウント情報を入力して [OK] ボタンを押すと以下警告メッセージが表示されます。
「はい」 を押すとリモート デスクトップ接続することはできます。また、この「コンピューターへの接続について今後確認しない」というチェックボックスをオンにすると、次回接続時からは表示されなくなります。
■RemoteApp接続
同様に、クライアントに配布した RDP ファイルから RemoteApp を起動すると、以下警告メッセージが表示されます。
[接続] ボタンを押すと、ユーザー アカウント情報を入力するポップアップが表示されます。
この 「コンピューターへの接続について今後確認しない」 というチェック ボックスをオンにすると、次回接続時からは表示されなくなります。
ユーザー アカウント情報を入力して [OK] ボタンを押すとさらに以下警告メッセージが表示されます。
「はい」 を押すとアプリケーションが起動されます。また、この 「コンピューターへの接続について今後確認しない」 というチェック ボックスをオンにすると、次回接続時からは表示されなくなります。
上記は、リモート デスクトップ セッション ホスト上に、クライアントが信頼する証明機関から発行された証明書がない場合に、発生する警告メッセージです。
この状況で、リモート デスクトップ セッション ホスト サーバー名の証明書を使用すると、以下警告メッセージが表示されるようになります。
これは、ファーム名を使用してリモート デスクトップ接続しているのに対し、リモート デスクトップ セッション ホストから発行される証明書の名前がリモート デスクトップ セッション ホスト名であるために、発生するエラーです。
これらの警告メッセージを、「コンピューターへの接続について今後確認しない」` というチェック ボックスをオンにするなどの設定をせず、始めから表示させないようにするためには、ファーム名が記載された証明書を作成し、各リモート デスクトップ セッション ホストに証明書をインストールする必要があります。
ただし、”ファーム名.xxxx.xxx” のように FQDN にて接続する場合は、FQDN で証明書を作成する必要がありますのでご注意ください。
以下に手順を案内します。
Active Directory 証明書サービスがインストールされているサーバーにおいて、以下手順を実行してください。
1. サーバー マネージャーの左ペインより [Active Directory 証明書サービス] - [証明書テンプレート] を選択します。中央ペインに表示される [Web サーバー] を右クリックし、[テンプレートの複製] を選択します。
2. Windows Server バージョン (最小限サポートされている CA) を選択し 「OK」 を押します。
3. 作成した新しいテンプレートで以下の変更を行います。
・要求処理タブで 「秘密キーのエクスポートを許可する」 のチェック ボックスをオンにします。
※後ほど秘密鍵をエクスポートするためです。
・セキュリティ タブで、Authenticated Users の登録許可を与えます。
※後ほど Web ブラウザよりテンプレートを選択するためです。
4. サーバー マネージャーの左ペインより [Active Directory 証明書サービス] - [CA名] - [証明書テンプレート] を右クリックします。
[新規作成] - [発行する証明書テンプレート] を選択します。
5. ステップ 1. で複製したテンプレートを選択して、[OK] を押します。 中央ペインの [証明書テンプレート] に複製したテンプレート名が表示されたことを確認します。
次に、下記手順を各リモート デスクトップ セッション ホストにて実行してください。
1. 証明書の要求登録を行いたいホスト上 (リモート デスクトップ セッション ホスト上)で web ブラウザより、https://<CA ホスト名>/CertSrv にアクセスします。
※HTTPS 接続を有効にするために適宜 IIS の設定をしてください。
2. Web ページの [タスクの選択:] から [証明書を要求する] を選択します。
3. [証明書の要求の詳細設定] を選択します。
4. [この CA への要求を作成し送信する。] を選択します。
5. [証明書 テンプレート:] において、複製したテンプレート名が表示されるのを確認して選択します。本例では FARM1 を選択します。
6. 名前欄にホスト名を記載します。今回はファーム名を入力してページ下部の [送信] ボタンを押します。
7. [この証明書のインストール] を押します。ここで、証明書がユーザー アカウントの個人ストアにインストールされます。
ユーザー アカウントの個人ストアにインストールされた証明書を、エクスポートし、コンピューターの個人ストアにインストールする必要があります。
8. [スタート]-[ファイル名を指定して実行] を選択し、"mmc" を入力して [OK] を押します。[ファイル ]- [スナップインの追加と削除] より [証明書] を選択し、証明書のスナップイン 「ユーザー アカウント」 を起動します。
9. 個人ストアに要求した証明書が存在することを確認して、右クリックから[全てのタスク] - [エクスポート] を選択します。
ウィザードに従って証明書( .pfx ファイル) をエクスポートします。
※ここで、必ず 「はい、秘密キーをエクスポートします」 を選択してください。
「正しくエクスポートされました。」 というメッセージが表示されます。
10. 証明書スナップインのコンピュータ アカウント版を起動して、上でエクスポートした証明書を、コンピュータ アカウントの個人ストアにインポートします。
インポートする証明書ファイルの指定にて、上でエクスポートした証明書を選択します。この時、ファイルの種類を Personal Information Exchange (*.pfx; *.p12) にするのを忘れずに。
以上でファーム名で作成した証明書を作成し、各リモート デスクトップ セッション ホストに証明書をインストールすることができました。
ここからは、ファーム名で作成した証明書と各機能との紐づけ作業となります。以下作業についても、各リモート デスクトップ セッションホストにて実行してください。
1. [リモート デスクトップ セッション ホスト サーバーの構成]を起動します。
2. [RDP-Tcp] のプロパティを開きます。
3. [証明書:] 欄にある「選択」ボタンを押します。
4. コンピューターの個人ストアにインストールされている証明書の一覧が表示されるので、ファーム名で作成した証明書を選択し 「OK」 を押します。
5. [証明書:] 欄が 「自動生成」 と言う表示から 「FARM1」 に変わります。
以上の設定で、[リモート デスクトップ接続]を起動して、コンピューター名の欄に 「FARM1」 と入力して リモートデスクトップ接続を実行する際に、警告メッセージが表示されなくなります。
ただし、RemoteApp を起動する場合はさらに以下設定が必要となります。
1. [RemoteApp マネージャー] を起動します。
2. [RD セッション ホスト サーバー] 欄の横の 「変更」 を選択します。
3. [接続の設定] 欄において、[サーバー名] に「FARM1」 と入力します。
4. [デジタル署名] タブを選択し、[デジタル証明書を使用して署名する] にチェックを入れ「変更」ボタンを押します。
5. 証明書選択のポップアップが表示されるので、ファーム名の証明書を選択し「OK」を押します。
6. [デジタル証明書の詳細] 欄に FARM1 証明書の情報が表示されます。「適用」「OK」 ボタンを押します。
以上の設定を完了してから、RemoteApp マネージャーより RDP ファイルを作成しクライアントに配布してください。RDP ファイルより RemoteApp を起動すると以下メッセージが表示されるだけとなり、証明書エラーの警告メッセージが表示されなくなります。