Удалите удаленный рабочий стол удаленно с помощью PowerShell (Enable-RemoteDesktop)
Забыли включить удаленный рабочий стол? Это плохо. Единственным решением будет вернуться к удаленному компьютеру и включить RD. На самом деле это не так. В этом блоге я покажу вам, как вы можете включить RD с помощью PowerShell. Давайте начнем.
Цель
Мы хотим разрешить подключения к удаленному рабочему столу.
Моя функция была загружена в галерею PowerShell, чтобы её можно было просто установить с помощью команды ниже.
Install-Module Enable-RemoteDesktop
Код
Вот код.
function Enable-RemoteDesktop {
<#
.SYNOPSIS
Enable-RemoteDesktop enables Remote Desktop on remote computers.
.DESCRIPTION
Enable-RemoteDesktop edits the registry and enables all required firwall rules for RDP.
.PARAMETER Target
Provide the target computer name.
.EXAMPLE
Enable-RemoteDesktop -Target server01,server02,server03
Enable-RemoteDesktop -Target client01
.NOTES
Author: Patrick Gruenauer
Web: https://active-directory.ru
#>
param
(
[Parameter ()]
$Target
)
''
Write-Warning "This command works only on English and German OS.`nMake sure WinRM is enabled on target computers. (default: Windows Server OS)"
foreach ($t in $Target) {
Invoke-Command -ComputerName $t -ScriptBlock {
Enable RDP on english OS
If ((Get-WinSystemLocale).Name -like "*en-*") {
Set-ItemProperty `
-Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server'`
-Name "fDenyTSConnections" -Value 0; `
Enable-NetFirewallRule -DisplayGroup "Remote Desktop"
Write-Output "$t : Operation completed successfully."
}
If ((Get-WinSystemLocale).Name -like "*de-*") {
Set-ItemProperty `
-Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server'`
-Name "fDenyTSConnections" -Value 0; `
Enable-NetFirewallRule -DisplayGroup "RemoteDesktop"
}
}
Write-Output "$t : Operation completed successfully."
}
}
Спасибо за прочтение этой статьи.


