マシンへの直接アクセスができない場合、Sysinternals の PsExec は、リモートでリモート デスクトップ プロトコル(RDP)を有効化するための優れたツールです。PsExec を使うと離れた場所からコマンドを実行できるため、この目的に最適です。
情報が最新で 2025 年時点でも有効であることを確認するため、Microsoft Answers や Spiceworks などの信頼できる情報源の最新ユーザー ガイド、フォーラム、ディスカッションを確認しました。本ガイドは、実際のフィードバックとベスト プラクティスに基づき、PsExec を使用して RDP を有効化するための最新かつ実証済みの手順を反映しています。
以下は、Windows 10、11、および Server 2022 でリモートから RDP を有効化するための、簡略化したステップ バイ ステップの手順です。PsExec のダウンロードとセットアップ、RDP を有効にするためのレジストリ変更、ファイアウォールでの RDP の許可、セッション制限の調整(任意)リモート デスクトップ サービスの確認または再起動、必要に応じた PowerShell による詳細設定の実施。
それでは、詳細なガイドに進みましょう。
1. PsExec をダウンロードしてセットアップする
-
PsExec をダウンロード 公式の Sysinternals ウェブサイトから: Microsoft Learn の PsExec.
-
ファイルを展開し、C:\Tools\PsExec. などのディレクトリに配置します。
-
必要に応じて、PsExec をシステムの PATH に追加してアクセスを容易にします:
• この PC > プロパティ > システムの詳細設定 > 環境変数 を右クリックします。
• システム環境変数 の下で Path を見つけ、PsExec があるディレクトリを追加します。
2. レジストリ編集で RDP を有効化
-
管理者としてコマンド プロンプトを開きます。
-
次のコマンドを実行して、リモートでレジストリを変更し、RDP を有効にします:
psexec \\TargetMachineName reg add “HKLM\System\CurrentControlSet\Control\Terminal Server” /v fDenyTSConnections /t REG_DWORD /d 0 /f
3. Windows ファイアウォールで RDP を許可する
-
RDP のファイアウォール ルールを有効にするには、次のコマンドを実行します:
psexec \\TargetMachineName netsh advfirewall firewall set rule group=”remote desktop” new enable=Yes
-
ルールを確認するには、次を実行します:
psexec \\TargetMachineName netsh advfirewall firewall show rule name=”remote desktop”
4. レジストリで RDP セッションの制限を設定する(オプション)
許可されている RDP セッションの最大数を増やすには、次を実行します:
psexec \\TargetMachineName reg add “HKLM\System\CurrentControlSet\Control\Terminal Server” /v MaxInstanceCount /t REG_DWORD /d 100 /f
5. リモート デスクトップ サービスを確認して再起動する
-
リモート デスクトップ サービスが実行中かどうかを確認するには:
psexec \\TargetMachineName sc query TermService
-
起動していない場合は、次で起動してください:
psexec \\TargetMachineName sc start TermService
6. 任意: PowerShell を使用して高度な構成を行う
PowerShell を使用してリモートで RDP を有効にする:
psexec \\TargetMachineName powershell -Command “Set-ItemProperty -Path ‘HKLM:\System\CurrentControlSet\Control\Terminal Server’ -Name fDenyTSConnections -Value 0”
まとめ
専門家の議論やフォーラムを確認した結果、RDP を有効化するためのこれらの PsExec の手法は 2025 年時点でも有効であることを確認しました。問題が続く場合は、ネットワーク接続、権限、またはグループ ポリシーの設定を確認してください。大規模なネットワークでは、リモート デスクトップ管理を効率化するために PowerShell スクリプトでプロセスを自動化することを検討してください。