Как удаленно включить удаленный рабочий стол (RDP) с помощью PowerShell |

Как удаленно включить удаленный рабочий стол (RDP) с помощью PowerShell

Мануал

Самый простой способ включить Remote Desktop RD в семействе ОС Windows – это использовать графический интерфейс.

Для этого необходимо открыть элемент панели управления «Система», перейти на вкладку «Удаленные настройки» и включить опцию «Разрешить удаленные подключения к этому компьютеру» в разделе «Удаленный рабочий стол».

Однако для этого требуется локальный доступ к компьютеру, на котором вы хотите включить RDP.

Обычно вы можете запросить у пользователя (требуются права администратора) или местную техническую поддержку.

Однако что делать, если в удаленном офисе нет никого, кто мог бы включить удаленный рабочий стол локально?

По умолчанию удаленный рабочий стол отключен как в настольных версиях Windows, так и в Windows Server.

Если вы хотите удаленно включить удаленный рабочий стол (RDP) на удаленном хосте (сервере или компьютере), но у вас нет доступа к консоли локального устройства, мы покажем вам, как это сделать с помощью PowerShell.

Для этого на удаленном компьютере должна быть включена служба WinRM (удаленное управление Windows).

Служба WinRM включена по умолчанию во всех версиях Windows Server, начиная с Windows Server 2012 (однако WinRM по умолчанию отключена в клиентских операционных системах, таких как Windows 10).

Таким образом, для удаленного включения RD через PowerShell удаленный компьютер должен соответствовать следующим требованиям:

  • Служба WinRM должна быть запущена;
  • Вы должны иметь права администратора на удаленном устройстве;
  • Брандмауэр Windows должен быть отключен или должны быть включены правила, разрешающие удаленный доступ через PowerShell Remoting.

Удаленное включение удаленного рабочего стола с помощью PowerShell

Предположим, вы хотите удаленно включить RDP в Windows Server 2012 R2 / 2016 / 2019.

На вашем компьютере откройте консоль PowerShell и выполните следующую команду для удаленного подключения к вашему серверу:

Enter-PSSession -ComputerName server.domain.local -Credential domain\administrator

Итак, вы установили удаленный сеанс с компьютером и теперь можете выполнять на нем команды PowerShell.

Чтобы включить удаленный рабочий стол, вам просто нужно изменить параметр реестра fDenyTSConnections с 1 на 0 на удаленном компьютере.

Запустите команду:

Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server'-name "fDenyTSConnections" -Value 0

Когда RDP включен таким способом (в отличие от метода GUI), правило, разрешающее удаленные RDP-подключения, не включается в правила брандмауэра Windows.

Чтобы разрешить входящие RDP-подключения в брандмауэре Windows, выполните команду:

Enable-NetFirewallRule -DisplayGroup "Remote Desktop"

Если по какой-либо причине это правило брандмауэра удалено, вы можете создать его вручную:

netsh advfirewall firewall add rule name="allow RemoteDesktop" dir=in protocol=TCP localport=3389 action=allow

Если вам нужно включить безопасную аутентификацию RDP (NLA – аутентификация сетевого уровня), выполните команду:

Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -name "UserAuthentication" -Value 1

Теперь со своего компьютера вы можете проверить, что порт TCP 3389 на удаленном хосте стал доступен. Запустите команду:

Test-NetConnection 192.168.1.11 -CommonTCPPort rdp

Должен быть такой результат:

ComputerName : 192.168.1.11

RemoteAddress : 192.168.1.11

RemotePort : 3389

InterfaceAlias : Ethernet0

SourceAddress : 192.168.1.90

TcpTestSucceeded : True

Это означает, что RDP на удаленном хосте включен, и вы можете установить подключение к удаленному рабочему столу с помощью клиента mstsc.

Заметка. По умолчанию только члены локальной группы администраторов могут подключаться через RDP удаленно. Чтобы разрешить подключения RDP для обычных пользователей, просто добавьте их в локальную группу «Пользователи удаленного рабочего стола».

Как включить удаленный рабочий стол через WMI?

Если вы хотите включить RDP на удаленном компьютере, на котором отключен WInRM (например, на обычном компьютере с Windows 10), вы можете использовать команду WMI PowerShell.

Чтобы проверить, включен ли доступ RDP на удаленном компьютере 192.168.1.90, выполните команду (см. Значение свойства AllowTSConnections):

Get-WmiObject -Class Win32_TerminalServiceSetting -Namespace root\CIMV2\TerminalServices -Computer 192.168.1.90 -Authentication 6

Чтобы включить RDP и добавить правило исключений брандмауэра Windows, выполните следующую команду:

(Get-WmiObject -Class Win32_TerminalServiceSetting -Namespace root\CIMV2\TerminalServices -Computer 192.168.1.90 -Authentication 6).SetAllowTSConnections(1,1)

Пожалуйста, не спамьте и никого не оскорбляйте. Это поле для комментариев, а не спамбокс. Рекламные ссылки не индексируются!
Добавить комментарий