通过远程桌面客户端(Windows 客户端或 Windows Server)连接到计算机时,计算机上的远程桌面功能会通过定义的侦听端口(默认为 3389)“听到”连接请求。 本文介绍如何使用注册表更改远程桌面客户端的侦听端口。
先决条件
在开始之前,请确保具有以下项:
若要更改侦听端口,可以使用注册表编辑器或 PowerShell。 选择首选方法。
若要使用注册表编辑器更改侦听端口,请执行以下步骤:
选择 “开始 ”按钮,键入 注册表编辑器,从最佳匹配列表中打开 注册表编辑器 。
在导航窗格中,展开键 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp
在主窗格中,选择 PortNumber
从菜单栏中选择编辑 > 修改,然后选择十进制。
键入新的端口号,然后选择“ 确定”。
关闭注册表编辑器,然后重新启动计算机。
下次使用远程桌面连接连接到此计算机时,请输入主机名和新端口。 例如,如果将端口更改为使用 3390,则地址为 PC1.contoso.com:3390
“如果使用防火墙”,请确保将防火墙配置为允许连接到新端口号。
若要使用 PowerShell 更改侦听端口,请执行以下步骤:
以管理员身份打开 PowerShell。
通过运行以下 PowerShell 命令检查当前端口:
Get-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -name "PortNumber"
下面显示了一个示例输出:
PortNumber : 3389
PSPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp
PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations
PSChildName : RDP-Tcp
PSDrive : HKLM
PSProvider : Microsoft.PowerShell.Core\Registry
通过运行以下 PowerShell 命令更改端口,替换为 <port number>
新的端口号:
$portvalue = <port number>
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -name "PortNumber" -Value $portvalue
使用以下 PowerShell 命令创建新的防火墙规则以允许新端口,并 <port number>
替换为新的端口号:
New-NetFirewallRule -DisplayName 'RDPPORTLatest-TCP-In' -Profile 'Public' -Direction Inbound -Action Allow -Protocol TCP -LocalPort <port number>
New-NetFirewallRule -DisplayName 'RDPPORTLatest-UDP-In' -Profile 'Public' -Direction Inbound -Action Allow -Protocol UDP -LocalPort <port number>