侧边栏壁纸
博主头像
v林羽博主等级

行动起来,活在当下

  • 累计撰写 172 篇文章
  • 累计创建 34 个标签
  • 累计收到 21 条评论

目 录CONTENT

文章目录

【Windows使用】之--修改远程桌面访问端口

v林羽
2023-05-20 / 0 评论 / 0 点赞 / 454 阅读 / 3872 字 / 正在检测是否收录...
温馨提示:
本文最后更新于 2023-11-01,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

【Windows使用】之–修改远程桌面访问端口

#教程 #系统 #Windows #安全防护

远程桌面的默认端口3389经常会被扫描攻击,为了保证安全除了一组复杂的用户名密码组合外,还需要修改一下默认端口。按照下面步骤操作前先开启远程桌面。

1. 注册表修改

这里修改端口号,以7899为例。

  1. 启动注册表编辑器regedit
  2. 找到并单击下面的注册表子项:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp
  3. 找到PortNumber
  4. 单击 “十 进制”,在"值数据"框中键入7899,然后单击"确定 "。
  5. 找到并单击下面的注册表子项:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp
  6. 找到PortNumber
  7. 单击 “十 进制”,在"值数据"框中键入7899,然后单击"确定 "。

如果感觉上面比较麻烦,也可以复制下面的代码到记事本,保存为 远程桌面端口修改.reg 导入。

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp]
"PortNumber"=dword:00001EDB

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp]
"PortNumber"=dword:00001EDB

上面的dword:后面的00001EDB就是所有要修改的端口十六进制。进制转换可以打开windows自带的计算器切换为程序员模式换算。这里提供一些,可供选择

00000740(HEX)=1856(DEC)
00001463(HEX)=5219(DEC)
00001EDB(HEX)=7899(DEC)
000022A2(HEX)=8866(DEC)
00001A2B(HEX)=6699(DEC)
0000215D(HEX)=8541(DEC)
000045CA(HEX)=17866(DEC)
00008C2E(HEX)=35886(DEC)

2. 放行防火墙

打开windows高级防火墙设置,放行修改的远程桌面端口,或者管理员模式运行终端 powershell,输入以下命令。

netsh advfirewall firewall add rule name="远程桌面(7899)" protocol=TCP dir=in localport=7899 action=allow

3. 重启远程服务

修改好上述注册表,放行端口后重启,或者运行打开services.msc,重启Remote Desktop Services服务。

4. 一键脚本

@echo off 
@echo [...远程桌面端口修改...] 
echo 请确认使用管理员模式运行该脚本
echo 按任意键继续操作... 
pause>nul 
TITLE  远程桌面端口修改
CLS 
MODE con: COLS=68 LINES=20 
:: MODE语句为设定窗体的宽和高 
SetLocal EnableDelayedExpansion 
set/p d="请输入新的远程桌面端口:" 
echo 将修改远程桌面端口为[%d%],请务必牢记该端口号. 
echo 如果启用了的[系统防火墙]--[IPSec策略]--[TCP/IP筛选]或者 
echo 其他防护软件允许该[%d%]端口通过.否则会出现问题. 
echo 按任意键继续操作... 
pause>nul 
set Str=0123456789ABCDEF 
:loop 
set/a y=%d%%%16 
set/a d=%d%%/16 
set y=!Str:~%y%,1! 
set e=%y%%e% 
if %d% geq 1 goto loop 
echo ------------------------------------------------------ 
echo 正在创建注册表文件. 
ping -n 2 127.0.1>nul
echo Windows Registry Editor Version 5.00> c:\Remote.reg 
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp]>> c:\Remote.reg 
echo "PortNumber"=dword:0000%e%>> c:\Remote.reg 
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp]>> c:\Remote.reg 
echo "PortNumber"=dword:0000%e%>> c:\Remote.reg 
echo 正在导入注册表文件以更改系统默认设置. 
ping -n 2 127.0.1>nul 
regedit /s c:\Remote.reg 
del c:\Remote.reg && echo 临时文件已经删除. 
ping -n 2 127.0.1>nul 
echo ------------------------------------------------------ 
echo 放行防火墙. 
netsh advfirewall firewall add rule name="远程桌面("%d%")" protocol=TCP dir=in localport=%d% action=allow
echo ------------------------------------------------------ 
echo 端口已经修改完毕,重启服务器后才能生效. 
echo 按任意键退出... 
pause>nul 
0

评论区