こんにちは、リモートデスクトップのシステムエンジニア歴10年 ばにゃです。 Show
Windows の機能であるリモートデスクトップサービス(RDS)。旧称:ターミナルサービス(TS)。 本記事では、Windows Server や Windows 10 端末に対してリモートデスクトップ接続できない場合に確認すべき項目、対処方法について解説します。 本記事の内容を確認して頂ければ、どのような状況でも絶対に接続できるようになるとまでは言わないものの、接続できない原因がどこにあるのかを判断できるようになるはずです。 この記事でわかること
リモートデスクトップライセンスの仕組みについて知りたい方は以下の記事を参考にしてください。
目次 前提となる環境本記事では、以下のような環境を例として記載します。この環境で私自身が実機動作確認済みの手順となります。 環境
代表的なエラーメッセージリモートデスクトップ接続に失敗した際に表示される代表的なエラーメッセージについて解説します。 1つのエラーメッセージに対して、1つの原因/対処方法とはなりませんが、代表的な確認項目/対処方法についても合わせて記載します。 エラーメッセージ一覧
リモートデスクトップはリモートコンピューターに接続できませんリモートデスクトップはリモートコンピューターに接続できません。次のいずれかが原因です。 1)
サーバーへのリモートアクセスが有効になっていない リモートコンピューターの電源が入っていること、ネットワークに接続されていること、 リモートデスクトップ接続に失敗する際にもっともよく見るエラーメッセージです。 そのためこのエラーメッセージのみで原因を特定することは困難ですが、本記事に記載する以下の確認項目/対処方法を参照して問題解決するか確認してください。 お使いの資格情報は機能しませんでしたお使いの資格情報は機能しませんでした xxx.xxx.xxx.xxx
への接続に使用された資格情報は機能しませんでした。 ログオンに失敗しました リモートデスクトップ接続を行う際に指定する資格情報(ユーザーアカウント/パスワード)が正しくない場合に表示されるエラーメッセージです。 本記事に記載する以下の確認項目/対処方法を参照して問題解決するか確認してください。 このコンピューターへの接続数は制限されていて、すべての接続は現在使用されていますこのコンピューターへの接続数は制限されていて、すべての接続は現在使用されています。後で接続するか、またはシステム管理者に問い合わせてください。 リモートデスクトップのセッション制限がされており、セッションの上限数に達している場合に表示されるエラーです。 本記事に記載する以下の確認項目/対処方法を参照して問題解決するか確認してください。 このユーザーアカウントはリモートログインを許可されていないため、接続は拒否されましたこのユーザーアカウントはリモートログインを許可されていないため、接続は拒否されました。 リモートデスクトップ接続に使用しているユーザーアカウントに対して、リモートデスクトップ許可設定がされていない(Remote Desktop Users グループに追加されていない)場合に表示されるエラーメッセージです。 本記事に記載する以下の確認項目/対処方法を参照して問題解決するか確認してください。 データの暗号化のエラーのため、このセッションは終了しますデータの暗号化のエラーのため、このセッションは終了します。リモートコンピューターに接続し直してください。 リモートデスクトップサーバーの証明書に関するレジストリに問題がある(なんらかの理由により破損している等)場合に表示されるエラーメッセージです。 本記事に記載する以下の確認項目/対処方法を参照して問題解決するか確認してください。 接続しようとしているリモートコンピューターには、ネットワークレベル認証(NLA)が必要ですが、お使いのWindowsのドメインコントローラーに接続してNLAを実行することができません接続しようとしているリモートコンピューターには、ネットワークレベル認証(NLA)が必要ですが、お使いのWindowsのドメインコントローラーに接続してNLAを実行することができません。リモートコンピューターの管理者であれば、[システムのプロパティ]ダイアログボックスの[リモート]タブにあるオプションを使用して、NLAを無効にできます。 ドメインユーザーを使用してリモートデスクトップ接続を行う際に、認証先のドメインコントローラーと通信できない場合に表示されるエラーメッセージです。 本記事に記載する以下の確認項目/対処方法を参照して問題解決するか確認してください。 ライセンスを提供するためのリモートデスクトップライセンスサーバーがないため、リモートセッションは切断されました。サーバー管理者に問い合わせてください。ライセンスを提供するためのリモートデスクトップライセンスサーバーがないため、リモートセッションは切断されました。サーバー管理者に問い合わせてください。 リモートデスクトップライセンス関連の設定に問題がある場合に表示されるエラーです。 本記事に記載する以下の確認項目/対処方法を参照して問題解決するか確認してください。 リモートデスクトップ接続できない場合に確認すべき項目/対処方法接続先コンピューターの電源状態確認接続先コンピューターの電源が起動しているか、スリープ状態になっていないかを確認します。 Windows Server の場合、スリープ状態にすることは通常ないと思いますが、Windows 10 端末の場合には、スリープ状態が原因となりリモートデスクトップ接続できない状態になっている場合がまれにあります。 Windows 10 端末でスリープ状態の設定を確認/変更する方法は以下の通りです。 確認項目/対処方法 タスクバー左下の Windows ボタンを右クリックし「システム」を選択します。 「電源とスリープ」を選択し、スリープに関する以下の設定を「なし」に設定します。
接続先コンピューターのホスト名・IPアドレス確認リモートデスクトップクライアントから接続を行う際に指定する接続先のホスト名、IPアドレスが間違っていないかを確認します。 確認項目/対処方法 「コンピューター」に入力する内容は、ホスト名、IPアドレスどちらでも問題ありませんが、名前解決に問題がある環境ではホスト名での接続に失敗する可能性があるため、IPアドレスで接続可能か確認します。 資格情報(ユーザーアカウント/パスワード)の確認リモートデスクトップクライアントから接続を行う際に指定する資格情報(ユーザーアカウント/パスワード)が間違っていないかを確認します。 確認項目/対処方法 資格情報(ユーザーアカウント/パスワード)を再確認し、接続可能か確認します。 ドメインユーザーを使用して接続する場合は ドメイン名\ユーザー名、接続先コンピューターのローカルユーザーを使用して接続する場合は .\ユーザー名 という形式でユーザーアカウント名を入力します。 また CapsLock や NumLock がかかっていることに気づかずにパスワードの入力ミスを起こしている可能性もあるため、CapsLock や NumLockの設定も再確認しましょう。 リモート接続許可設定の確認接続先コンピューターでリモート接続許可設定が有効になっているか確認します。 リモート接続許可設定が有効になっていない場合、リモートデスクトップ接続はできません。 確認項目/対処方法 接続先コンピューターで「ファイル名を指定して実行」より「sysdm.cpl」を実行します。 システムのプロパティが開くので「リモート」タブを選択し「リモートデスクトップ」配下の設定を確認します。
「このコンピューターへのリモート接続を許可しない」が選択されている場合、リモートデスクトップ接続はできません。「このコンピューターへのリモート接続を許可する」を選択後、リモートデスクトップ接続が可能となっているかを確認します。 上記設定は以下のレジストリでも確認可能です。 別のコンピューターからリモートでリモート接続許可設定の有効/無効を確認および変更したい場合、以下の手順を実施します。 リモートから確認する方法 Enter-PSSession コマンドで接続先コンピューターにリモート接続を行います。 以下のコマンドを実行してリモート接続許可設定の状態を確認します。
以下のような結果が返ってきます。
fDenyTSConnections の 値が 0x1 となっている場合、リモート接続許可設定は無効状態のため、続いて以下のコマンドを実行し、リモート接続許可設定を有効にします。
コマンド実行後「この操作を正しく終了しました。」と表示されていれば問題ありません。 リモートデスクトップ関連サービスの状態確認接続先コンピューターでリモートデスクトップ関連のサービスが起動しているか確認します。 これらのサービスが起動していない場合、リモートデスクトップ接続はできません。 確認項目/対処方法 接続先コンピューターで「ファイル名を指定して実行」より「services.msc」を実行します。 サービスの一覧が表示されるので、以下サービスの起動状況を確認します。
サービスが停止している場合、Remote Desktop Configuration および Remote Desktop Services サービスを右クリックし「開始」を選択してサービスを起動させた後、リモートデスクトップ接続が可能となっているかを確認します。 別のコンピューターからリモートでサービスの状態を確認したい場合、以下の手順を実施します。 リモートから確認する方法 Enter-PSSession コマンドで接続先コンピューターにリモート接続を行います。 以下のコマンドを実行してサービスの状態を確認します。
以下のような結果が返ってきます。
Status が Running となっている場合サービスは正常に起動しています。 Status が Stopped となっている場合サービスは停止しているため、続けて以下のコマンドを実行してサービスを起動させます。
上記コマンド実行後、再度以下のコマンドを実行してサービスの状態を確認します。
実行結果で Status が Running となっていれば問題ありません。 RDPリスナーの確認接続先コンピューターでRDPリスナーの状態を確認します。 RDPリスナーが正常に Listen 状態となっていない場合、リモートデスクトップ接続はできません。 確認項目/対処方法 接続先コンピューターで以下どちらかのコマンドを実行し、RDPリスナーが起動していることを確認します。 以下のような結果が返ってきます。
rdp-tcpの状態が Listen となっていれば問題ありません。 別のコンピューターからリモートでRDPリスナーの状態を確認および変更したい場合、他の手順と同様に Enter-PSSession コマンドでリモート接続後、上述した手順を実施します。 私の経験上、RDPリスナーの状態がおかしくなっている(Listen状態になっていない)というのはあまり記憶にないですが、万が一正常ではない状態になっているのであれば、リモートデスクトップ関連のサービスを再起動、もしくは接続先コンピューターの再起動を実施し、リモートデスクトップ接続が可能となっているかを確認します。 リモートデスクトップ関連サービスの再起動は、以下のコマンドを実行することで可能です。
pingによる疎通確認接続先コンピューターのホスト名とIPアドレス に対して ping が通るかを確認します。 接続先コンピューターに対してICMP通信が許可されていない場合は、リモートデスクトップ接続できる/できないに関わらずpingは通りません。ICMP通信が許可されていない(もともとpingが通らない)環境の場合、この確認は無視してください。 確認項目/対処方法 接続元コンピューターで以下のコマンドを実行します。 IPアドレスではOK、ホスト名ではNGの場合、名前解決に問題がある可能性があります。 名前解決の問題を解消するか、リモートデスクトップクライアントから接続を行う際に指定している接続先をIPアドレスにして、リモートデスクトップ接続が可能となっているかを確認します。 リモートデスクトップ接続ポート:3389の確認接続先コンピューターに対してリモートデスクトップ接続用のポート3389で通信が可能かを確認します。 pingは通るがリモートデスクトップ接続できないといった場合はポート3389の通信が失敗している可能性があります。 Test-NetConnectionコマンドによるポート確認Test-NetConnection コマンドを使用して、接続元コンピューターから接続先コンピューターに対して、ポート3389の通信が可能かを確認します。 確認項目/対処方法 接続元コンピューターで以下のコマンドを実行します。
以下のような結果が返ってきます。
実行結果の TcpTestSucceeded が True の場合、3389ポートでの通信に問題はありません。 False の場合、以下のような原因が考えられます。
1.については、接続元コンピューター~接続先コンピューター間のネットワーク機器の設定を確認しましょう。 2.3. については、以降に記載する「接続先コンピューターのファイアウォール設定確認」「netstatコマンドによるポート使用状況確認」の内容を確認してください。 Test-NetConnection コマンドについて詳細を確認したい方は以下の記事も参考にしてください。
あわせて読みたい 【PowerShell】指定ポートが開いているか確認する方法(Test-NetConnection) こんにちは、Windows インフラエンジニア ばにゃです。 本記事では、PowerShellを使用して指定ポートが空いているか疎通確認をする方法について解説します。 結論として… 接続先コンピューターのファイアウォール設定確認接続先コンピューターのファイアウォール設定を確認し、リモートデスクトップ接続で使用するポート3389に関する規則が無効になっていないかを確認します。 これらの規則が無効になっている場合、リモートデスクトップ接続はできません。 確認項目/対処方法 接続先コンピューターで「ファイル名を指定して実行」を起動し「firewall.cpl」を実行します。 Windowsファイアウォールの設定画面が開くので「詳細設定」を選択します。 セキュリティが強化されたWindowsファイアウォールの設定画面が開くので「受信の規則」を選択します。 以下の規則が有効となっているか(緑チェックマークがついているか)を確認します。
上記規則が無効になっている場合は、規則を右クリックし「規則の有効化」を選択してポート3389の通信を許可した後、リモートデスクトップ接続が可能となっているかを確認します。 別のコンピューターからリモートでファイアウォール設定を確認および変更したい場合、以下の手順を実施します。 リモートから確認する方法 Enter-PSSession コマンドで接続先コンピューターにリモート接続を行います。 以下のコマンドを実行してファイアウォール規則の設定を 2つ 確認します。
以下のような結果が返ってきます。
実行結果で「有効:はい」となっている場合、ポート3389の通信は許可されているため問題ありません。 「有効:いいえ」となっている場合、ポート3389の通信が許可されていないため、続いて以下のコマンドを実行し規則を有効化します。
上記コマンドを実行後、再度以下のコマンドを実行してファイアウォール規則の設定を確認します。
実行結果で「有効:はい」となっていれば問題ありません。 netstatコマンドによるポート使用状況確認リモートデスクトップの通信で使用するポート3389が、リモートデスクトップ以外の別のサービスに使用されているかを確認します。 ポート3389が別のサービスに使用されている場合、リモートデスクトップ接続はできません。 確認項目/対処方法 接続先コンピューターで netstat コマンドを実行しポート3389の使用状況を確認します。
以下のような結果が返ってきます。
ポート3389でLISTENING状態のプロセスIDを確認します。 続いてtasklistコマンドを使用して、ポート3389を使用しているサービスを特定します。
以下のような結果が返ってきます。
上記例は TermService がポート3389を使用しているため、正常な状態です。 TermService以外のサービスがポート3389を使用している場合は、該当サービスがポート3389以外を使用するように構成する、一時的に該当サービスを停止するといった対処を行った後、リモートデスクトップ接続が可能となっているかを確認します。 別のコンピューターからリモートでファイアウォール設定を確認および変更したい場合、他の手順と同様に Enter-PSSession コマンドでリモート接続後、上述した手順を実施します。 セッションリセットによる確認リモートデスクトップ接続ができないユーザーのセッションが接続先コンピューターに残っている場合、該当ユーザーのセッションをリセットして、リモートデスクトップ接続できるようになるか確認します。 通常はセッションが残っていたとしても、同じユーザーであれば残セッションに再接続されますが、何らかの理由でセッションが正常ではない状態になっていると、残セッションが邪魔をして接続できない状態になる場合があります。 例えばリモートデスクトップ接続時のユーザーサインイン処理中に、winlogon.exe、lsass.exe、userinit.exe といった主要なプロセスに問題が発生し、正常にサインインできず中途半端なセッションが残ってしまう、といった状態です。 確認項目/対処方法 接続先コンピューターで以下どちらかのコマンドを実行し、セッション状態を確認します。 以下のような結果が返ってきます。
ログオフさせたいユーザー名の横に表示されているセッションIDを確認します。 例えばここで user01 のセッションをログオフさせたい場合、セッションID は 4 となります。 次にlogoffコマンドを使用してユーザーのセッションをログオフさせます。 再度以下どちらかのコマンドを実行して、logoffコマンドでログオフさせたセッションの状態を確認します。 logoffコマンドでログオフさせたセッションが表示されなくなったことを確認後、リモートデスクトップ接続が可能となっているかを確認します。 別のコンピューターからリモートでセッション状態の確認およびリセットを行いたい場合、他の手順と同様に Enter-PSSession コマンドでリモート接続後、上述した手順を実施します。 セッション数制限の確認接続先コンピューターに対して、リモートデスクトップセッションの制限数に関するグループポリシーが適用されているか、設定された上限までリモートデスクトップセッションが張られているかを確認します。 セッション制限に関するグループポリシーが適用されており、セッションが上限に達している場合、それ以上モートデスクトップ接続はできません。 リモートデスクトップセッションの制限数に関するグループポリシーが適用されているかどうか、セッションが上限数に達しているかどうかは以下の方法で確認可能です。 確認項目/対処方法 接続先コンピューターでコマンドプロンプトを管理者として実行し以下のコマンドを実行します。 出力結果に以下のような表示があった場合、セッション制限のポリシーが適用されています。
上記の例ではセッション制限が 30 と設定されている状態です。 次に以下どちらかのコマンドで確認し、現在のセッション数を確認します。 以下のような結果が返ってきます。
実行結果の rdp-tcp#* と表示されている部分がリモートデスクトップのセッションです。 制限数までセッションがある場合はセッション数が下がってから確認する、もしくはセッション制限のポリシー設定を変更後に、リモートデスクトップ接続が可能となっているかを確認します。 設定変更を行う場合、該当のグループポリシーは以下となります。 セッション制限自体をなくす場合は、設定を未構成もしくは無効とします。 セッション制限数を変更する場合は、設定を有効とし最大接続数の設定を変更します。 別のコンピューターからリモートでリモートデスクトップセッションの制限数に関するグループポリシーを確認したい場合、他の手順と同様に Enter-PSSession コマンドでリモート接続後、上述した手順(gpresult /z)を実施します。 Remote Desktop Usersグループの確認接続に使用しているユーザー、もしくはそのユーザーが所属するグループが Remote Desktop Users グループに所属しているかを確認します。 Remote Desktop Users グループに所属していない場合、基本的にはリモートデスクトップ接続はできません。 確認項目/対処方法 接続先コンピューターで「ファイル名を指定して実行」を起動し「sysdm.cpl」を実行します。 「リモート」タブを選択し「ユーザーの選択」をクリックします。 接続を行いたいユーザー、もしくはユーザーが所属するグループが一覧に含まれていることを確認します。 ユーザーもしくはグループが一覧に含まれていない場合、ユーザーもしくはグループを追加後に、リモートデスクトップ接続が可能となっているかを確認します。 また接続先コンピューターのローカルAdministratorsグループに所属するユーザーは、この一覧に表示されていなくてもリモートデスクトップ接続が可能です。 例えばドメイン環境のメンバーサーバーであれば、通常はローカルAdministratorsグループに Domain Admins グループが含まれているため、Domain Adminsグループに所属しているユーザーであればこの一覧に表示されていなくても接続が可能ということになります。 証明書が破損していないかの確認リモートデスクトップサーバーの証明書に問題がある場合(レジストリ情報が破損している等)、リモートデスクトップ接続に失敗する可能性があります。 確認項目/対処方法 接続先コンピューターで以下のレジストリを削除します。 接続先コンピューターを再起動します。 証明書に関するレジストリ削除、および接続先コンピューターの再起動後にリモートデスクトップ接続が可能となっているかを確認します。 ネットワークレベル認証(NLA)設定の確認接続先コンピューターでネットワークレベル認証(NLA)設定を確認します。 設定が有効かつ以下のような環境ではリモートデスクトップ接続はできません。
根本原因の解決のためには、接続先コンピューターとドメインコントローラー間の通信に関する問題を解決する必要がありますが、単純に接続可能な状態にするだけであれば以下の設定を行います。 確認項目/対処方法 接続先コンピューターで「ファイル名を指定して実行」を起動し「sysdm.cpl」を実行します。 「リモート」タブを選択し「リモートデスクトップ」配下の設定を確認します。
「ネットワークレベル認証でリモートデスクトップを実行しているコンピューターからのみ接続を許可する」のチェックを外した後に、リモートデスクトップ接続が可能となっているかを確認します。 リモートデスクトップライセンス関連の設定確認本項目は接続先が Windows Server の場合に確認すべき項目です。接続先が Windows クライアント OS の場合は確認不要です。 接続先サーバーが以下のような状態となっている場合、リモートデスクトップ接続に失敗する可能性があります。
確認項目/対処方法 本項目の確認項目/対処方法については別記事にまとめていますので、以下を参考にしてください。 あわせて読みたい ライセンスを提供するためのリモートデスクトップライセンスサーバーがないため、リモートセッションは… こんにちは、リモートデスクトップのシステムエンジニア歴10年 ばにゃです。 本記事では、リモートデスクトップ接続時に「ライセンスを提供するためのリモートデスクト… 参考情報Microsoft ドキュメントリモート デスクトップ接続できない場合のトラブルシューティングについては、以下 Microsoft の情報も参考になります。 関連記事リモートデスクトップ関連の記事については以下も参考にしてください。 関連書籍
リモートデスクトップの基本的な知識や、リモートデスクトップ / RemoteAppプログラム / リモートデスクトップゲートウェイ / リモートデスクトップライセンスサーバー の 構築手順 について、わかりやすく説明されている書籍です。 本記事では基本的にリモートデスクトップサーバーの構築手順については記載していないので、そのあたりの詳しい情報が必要な場合におすすめの書籍です。 Windows Server 2022のリモートデスクトップ接続数は?Windows Server 2022に、同一のアカウントで同時にリモートデスクトップ(RDP)接続可能なユーザー数は2人までですが、ローカルグループポリシーのデフォルト設定で1人までしか接続許可しない接続制限設定となりサーバー管理者が複数人で接続した場合、セッションの取り合いになります。
リモートデスクトップの接続ユーザー数は?Windows Server へリモートデスクトップする際、同時に接続可能なユーザー数は、デフォルトで「2ユーザー」までとなっており、3ユーザー目が接続すると「接続を切るユーザーを選択するとサインインできるようになります」というメッセージが表示されます。
RDPの許可ユーザは?一般ユーザーを許可. 「スタート」ボタンをクリックし、「管理ツール」>「コンピューターの管理」を選択します. 「システムツール」>「ローカル ユーザーとグループ」>「グループ」>「Remote Desktop Users」をクリックします。. 「追加」をクリックします。. 追加するユーザー名(例:user1)を入力します。. Windows Serverのユーザー数上限は?ロックと制限. |