Windowsのサーバーインスタンスに対してリモートデスクトップで接続すると、「このリモートコンピューターのIDを識別できません。 接続しますか?」という証明書エラー画面が表示されます。

サーバーインスタンス, 運用

2017年7月19日 (2022年10月22日:更新)

証明書エラー画面が表示されるのは、オフィシャルテンプレートとして提供しているWindows Serverのデフォルトの動作です。

具体的には、クライアントPCからリモートデスクトップを利用する場合、サーバー(リモートデスクトップ先)に対して、証明書が用いられます。
この「証明書」の「サブジェクト」と言われる項目がクライアント側で指定した接続先のコンピューター名と一致しているかどうかを確認します。
その後、コンピューター名の一致、および証明書が信頼に足るものであれば、接続し、不一致、ないし証明書が信頼できない場合は警告が出る、という動作となります。
Windows Serverのデフォルトの仕様として、サーバー側でリモートデスクトップ接続を有効にすると専用の自己発行証明書が作成され、
リモートデスクトップ接続時の認証に用いられるように自動で設定されます。

 

表示されないようにするためには、正規の証明書をサーバーにimportしてください。

下記の手順は、一例としてご参考までにご案内します。本手順についてのご質問は承りかねます。

1.発行された証明書をセッションホストの役割をもったWindows Serverへ格納し、
 証明書ファイルをダブルクリックします。

2.証明書のインポートウィザードが表示されるので、
 保存場所として[ローカルコンピューター]を選択し、[次へ]で進みます。

3.ウィザードに沿って進みます。

4.[秘密キーの保護]ページでは、証明書ファイルに設定されたパスワードを入力します。
 すべての拡張プロパティを含めるが選択されていることを確認し、[次へ]で進みます。

5.「証明書ストア」のページでは、証明書の種類に基づいて、
 自動的に証明書ストアを選択するが選択されていることを確認し、[次へ]で進みます。

6.インポートは完了です。

7.続けて、証明書のスナップインを開き、[詳細]タブで拇印をご確認ください。
 こちら、メモ帳などへコピーをお願いします。
。
8.Powershellを管理者で実行し、以下コマンドを実施ください。
 ・$path = (Get-WmiObject -class "Win32_TSGeneralSetting" -Namespace root  \cimv2\terminalservices -Filter "TerminalName='RDP-tcp'").__path
 ・Set-WmiInstance -Path $path -argument @{SSLCertificateSHA1Hash="拇印"}

9.Powershellで以下コマンドを実行し、該当の証明書が設定されたことを確認ください。
 ・Get-WmiObject -class "Win32_TSGeneralSetting" -Namespace root\cimv2\terminalservices -Filter "TerminalName='RDP-tcp'"