使用 PowerShell 命令更改 RDP 远程桌面端口(无需修改防火墙设置)
节选自原文:Windows远程桌面一站式指南 | BOBO Blog
原文目录
- 什么是RDP
- 开启远程桌面
- 检查系统版本
- 启用远程桌面
- 连接Windows
- 在Windows电脑上
- 在MAC电脑上
- 在Android或iOS移动设备上
- 主机名连接
- 自定义电脑名
- 通过主机名远程桌面
- 使用Hosts文件自定义远程主机名称
- 更改远程桌面的侦听端口
- 方法一:修改注册表来更改侦听端口
- 在Windows Defender 防火墙放行端口(可选)
- 方法二:使用 PowerShell 命令更改 RDP 端口(无需修改防火墙设置)
- 重启远程桌面服务
- 使用修改的端口号连接
- 在路由器上启用端口转发从世界任何地方访问电脑
- 卸载、安装远程桌面连接
- 常见问题
- 查看IP地址
- 无法通过主机名连接
- 总结
通过powershell命令修改和查看端口号,使用命令时能同时更改防火墙远程桌面端口,相对上方要简单的多。按Windows + R打开“运行”对话框,然后在文本框中键入“ powershell”。
在下方的命令中,我会将新的 RDP 端口指定为9527,诸位根据自己的情况修改第一行portvalue的值就行了,粘贴时提示多行粘贴,选择仍然粘贴,如果没有复制到回车行,执行到最后一行命令时需要敲一次回车。
$portvalue = 9527
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -name "PortNumber" -Value $portvalue
New-NetFirewallRule -DisplayName 'RDPPORTLatest-TCP-In' -Profile 'Public' -Direction Inbound -Action Allow -Protocol TCP -LocalPort $portvalue
New-NetFirewallRule -DisplayName 'RDPPORTLatest-UDP-In' -Profile 'Public' -Direction Inbound -Action Allow -Protocol UDP -LocalPort $portvalue
运行以下 PowerShell 命令来查看当前端口
Get-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -name "PortNumber"
查看结果如下,可以看到PortNumber值修改为9527了。
PortNumber : 9527
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
重启远程桌面服务
当我们修改远程桌面端口后,不会立即生效,需要重启服务:TermService。当然重启电脑也可以,为了简便这里准备了powershell代码直接重启这个服务让修改立即生效。
powershell -c "& { restart-service termservice -force}"
使用修改的端口号连接
修改端口后,默认连接3389端口,需要在IP地址中指定端口号,格式为:[IP]:[端口] ,注意不要打成中文冒号了。还是那台172.16.140.101主机,可以看到是可以连接成功的。
版权声明:原创文章受著作权法保护,本文为原作者本人发布其他平台。未经作者同意,不得以任何形式复制其内容、摘编、转载。