更改Windows远程桌面的端口

本来为了提高安全性都建议更改默认端口,但我因为习惯使用默认端口而没有进行修改。在一直默认端口的情况下我经常发现使用远程桌面时老是提示“出现了内部错误”在更之前我只能在控制面版上面使用重启服务器来解决远程桌面的问题,再后来就是通过VNC重启相关服务来解决。我一直以为是网络不好才导致的“出现了内部错误”,后来我都是在网络比较好的地方使用而且还是正常的断开远程桌面的啊,但还是在下次连接时出现了一样的错误。

好吧~这时我也应该怀疑是不是有扫爆破的了,一查系统日志好家伙果然是被爆破登陆密码了。。。。。。没办法只好改改端口避开默认端口了,虽然也可以扫出正确的端口。。。。

通过远程桌面客户端连接到计算机(Windows 客户端或 Windows Server)时,计算机上的远程桌面功能会通过定义的侦听端口(默认情况下为 3389)“侦听”连接请求。 可以通过修改注册表来更改 Windows 计算机上的侦听端口。
启动注册表编辑器。 (在“搜索”框中键入 regedit。)
导航到以下注册表子项:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp
查找端口号
单击“编辑”>“修改” ,然后单击“十进制” 。
键入新端口号,然后单击“确定” 。
关闭注册表编辑器,然后重新启动计算机。
下次使用远程桌面连接连接到此计算机时,必须键入新端口。 如果正在使用防火墙,请确保将防火墙配置为允许连接到新端口号。
可运行以下 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 命令来更改 RDP 端口。 在此命令中,我们会将新的 RDP 端口指定为 3390。
若要向注册表添加新的 RDP 端口:

Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -name "PortNumber" -Value 3390
New-NetFirewallRule -DisplayName 'RDPPORTLatest' -Profile 'Public' -Direction Inbound -Action Allow -Protocol TCP -LocalPort 3390

参考
更改计算机上的远程桌面的侦听端口
https://docs.microsoft.com/zh-cn/windows-server/remote/remote-desktop-services/clients/change-listening-port

然而还要重启服务器才能生效,远程服务我只试了一个还有两个没有测试重启过。。。

ChiuYut

2021年03月07日

发布者

ChiuYut

咦?我是谁?这是什么地方? Ya ha!我是ChiuYut!这里是我的小破站!