web-dev-qa-db-ja.com

WinRMまたはpsexecの他の代替手段を使用してRDPを有効にする

サーバーのリストを取得し、RDPを有効/無効にするプログラムを作成しています。現在、私はpsexecを利用しており、今朝まではすべてうまくいきました。コード/ユーザー名/パスワードを変更しませんでしたが、今日、psexecから次のエラーが発生します。

c:\Temp>PsExec.exe \\KEN-SQL-001 -u administrator -p password cmd

PsExec v2.11 - Execute processes remotely
Copyright (C) 2001-2014 Mark Russinovich
Sysinternals - www.sysinternals.com

Could not start PSEXESVC service on KEN-SQL-001:
Access is denied.

私は以前にwinrmを使用して多くのことを行いましたが、RDPに関連する情報を見つけるのに最も苦労しています。 WinRMを使用してRDPを有効/無効にすることは可能ですか?

2
KPS

GPOを介してRDPを実行できます:Windowsコンポーネント/リモートデスクトップサービス/リモートデスクトップセッションホスト/接続
ユーザーがリモートデスクトップサービスを使用してリモート接続できるようにする=有効

それでもWinRMを使用したい場合は、WinRMを介してRDPを有効にするための Poshスクリプト を次に示します。

PSExecエラーについては、他の何か( 'notepad.exe'でも)を実行して、同じエラーが発生するかどうかを確認してください。
もしそうなら、それはあなたが許可の問題か何らかの通信エラー(多分$ admin共有が存在しないかそのようなもの)を持っていることを示唆します。

1
EliadTech

これはレジストリ設定です。個人的には、この動作を設定するにはGPOが最善の方法だと思いますが、コマンドラインから手動で行う場合は、以下を使用してください。

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f
1
HopelessN00b