需将远程桌面默认端口3389更改为非标准端口以提升安全性,方法包括:一、注册表图形化修改两处PortNumber值并重启;二、PowerShell命令修改+重启TermService服务;三、同步更新防火墙入站规则;四、验证端口未被占用及排除;五、客户端连接时须用IP:Port格式。

如果您已启用 Windows 11 远程桌面功能,但希望提升连接安全性,避免攻击者针对默认端口3389的扫描与爆破,则需将远程桌面服务监听端口更改为非标准端口。以下是多种可行的操作方法:
一、注册表图形化修改法
该方法通过手动编辑注册表中两个关键路径下的 PortNumber 值,直接变更 RDP 协议的监听端口。必须同步修改两处注册表项,否则远程连接将失败。
1、按 Win + R 打开运行对话框,输入 regedit 并回车,以管理员身份运行注册表编辑器。
2、依次展开路径:计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp,在右侧双击 PortNumber。
3、在弹出窗口中,勾选 十进制,将数值数据修改为选定端口(如 28901),点击确定。
4、再次展开路径:计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp,同样双击修改 PortNumber 为相同端口号(28901)。
5、关闭注册表编辑器,重启计算机 使更改生效。
二、PowerShell命令行修改法
该方法利用 PowerShell 直接读取并写入注册表值,支持一键查询当前端口、设置新端口及重启服务,无需重启整机,操作效率更高且可脚本化复用。
1、以管理员身份启动 PowerShell。
2、执行以下命令查看当前端口:Get-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -Name 'PortNumber'。
3、执行以下命令设置新端口(示例端口为 15678):$newPort = 15678; Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -Name 'PortNumber' -Value $newPort。
4、立即重启远程桌面服务:Restart-Service TermService -Force。
三、防火墙入站规则同步更新法
仅修改注册表无法确保新端口对外可达,Windows 防火墙默认仅放行3389端口的入站连接。若不更新防火墙规则,外部连接将被拦截。
1、按 Win + R 输入 wf.msc,打开高级安全 Windows Defender 防火墙。
2、在左侧点击 入站规则,在右侧找到并右键 远程桌面(TCP-In),选择 属性。
3、切换到 协议和端口 选项卡,勾选 特定本地端口,输入新端口号(如 28901),点击确定。
4、重复步骤2–3,更新 远程桌面(UDP-In) 规则(如启用 UDP 加速)。
四、端口筛选与可用性验证法
选择端口前必须确认其未被系统或应用程序占用,否则 RDP 服务启动失败。推荐使用 1024–65535 范围内非知名、不规则端口,避开 3389、3390、4433、8080 等常见替代端口。
1、以管理员身份打开 CMD 或 PowerShell。
2、执行命令检测端口占用状态(以端口 15678 为例):netstat -ano -p tcp | findstr ":15678";若无输出,表示端口空闲。
3、进一步验证是否被 Windows 服务预留:执行 netsh interface ipv4 show excludedportrange protocol=tcp,确保目标端口不在排除范围内。
4、记录经验证的可用端口(如 28901 或 15678),用于后续所有配置步骤。
五、远程连接格式修正法
端口修改后,客户端必须显式指定新端口号,否则仍尝试连接3389。Windows 自带的 mstsc 工具不支持图形界面直接填入端口,需在地址栏采用 IP:Port 格式调用。
1、按 Win + R 输入 mstsc,打开远程桌面连接窗口。
2、在 计算机 输入框中,完整填写目标地址,格式为:192.168.1.100:28901(IP 与端口间为英文冒号)。
3、点击 连接,输入凭据完成登录。










