Windows 桌面服务器配置教程:随机 RDP 端口 & 手动系统更新

Windows 桌面服务器配置教程:随机 RDP 端口 & 手动系统更新

源文GitHub:https://github.com/idc-net/Windows-Server-Toolkit

适用:Windows Server 2016 / 2019 / 2022 / 2025 · Windows 10 / 11 · PowerShell 5.1+

一、前言

Windows 远程桌面(RDP)默认监听 3389 端口,长期暴露在公网会被自动化扫描工具持续探测和爆破。本教程使用 Windows Server Toolkit 提供的 PowerShell 脚本,完成两项配置:

  • 将 RDP 端口从 3389 改为随机端口,自动处理防火墙规则。
  • 关闭系统自动更新,改为手动掌控更新时机,防止服务器在业务时段意外重启。

工具列表

文件名适用场景功能
modify_rdp_port.ps1所有场景修改 RDP 端口、启用 RDP、强制 NLA、自动更新防火墙规则
disable_auto_update_desktop.ps1Windows Server 当桌面全面封锁自动更新,手动完全掌控
disable_auto_update_web.ps1网站 / 应用服务器自动下载安全补丁,手动选时间安装,禁止自动重启
注意: 执行 RDP 端口脚本前,请确保你拥有备用访问方式(控制台 / VNC / KVM / IPMI),以防端口切换中途断连。

二、修改 RDP 端口:modify_rdp_port.ps1

执行命令,以管理员身份打开 PowerShell,粘贴并执行以下命令:

irm https://raw.githubusercontent.com/idc-net/Windows-Server-Toolkit/main/modify_rdp_port.ps1 | iex

脚本执行流程

脚本启动后按提示操作,全程自动化处理,无需手动修改注册表或防火墙:

  1. 脚本验证当前用户是否具有管理员权限。
  2. 读取当前 RDP 端口(默认 3389)。
  3. 提示输入新端口号(范围:1025–65535)。
  4. 检测目标端口是否已被其他程序占用。
  5. 更新注册表中的 RDP 端口配置。
  6. 若 RDP 处于禁用状态,自动开启。
  7. 强制启用网络级别身份验证(NLA)。
  8. 删除旧防火墙规则,为新端口创建入站规则。
  9. 重启远程桌面服务(TermService)使配置生效。
  10. 输出配置摘要,日志写入 C:\Windows\Logs\rdp_port_change.log。

提示: 第 5–9 步任意环节出错,脚本将自动回滚至原端口,不会造成配置中间态。

三、设置手动更新

根据服务器用途选择对应版本:桌面服务器版适合把 Windows Server 当远程桌面使用的场景;网站服务器版适合对外提供 Web 或应用服务的场景。

对比项桌面服务器版网站服务器版
自动下载补丁
自动安装补丁
自动重启❌ 全时段禁止❌ 全时段禁止
更新服务器断开连接保持连接
UsoSvc 服务禁用保持运行
适用场景远程桌面 / 桌面办公Web / 应用 / 数据库服务器

桌面服务器版:disable_auto_update_desktop.ps1

适用场景:Windows Server 当桌面 / 远程办公使用,需要完全手动掌控更新时机。

执行命令(管理员 PowerShell):

irm https://raw.githubusercontent.com/idc-net/Windows-Server-Toolkit/main/disable_auto_update_desktop.ps1 | iex

脚本将依次执行六层封锁策略:

  • 第1层:设置「通知但不自动安装」,阻止静默下载。
  • 第2层:全时段禁止自动重启。
  • 第3层:断开系统自动连接更新服务器,彻底阻断自动检测。
  • 第4层:禁用交付优化,阻止从其他 PC 下载更新。
  • 第5层:禁用 UsoSvc 更新调度服务。
  • 第6层:尝试禁用 WaaSMedicSvc 自修复服务(视系统版本而定)。
提示: 手动更新建议:每月固定选一天业务低峰期,打开「设置 → Windows 更新 → 检查更新」手动执行。

网站服务器版:disable_auto_update_web.ps1

适用场景:对外提供网站或应用服务的服务器,安全补丁自动下载,安装时机由你决定,绝不自动重启。

执行命令(管理员 PowerShell):

irm https://raw.githubusercontent.com/idc-net/Windows-Server-Toolkit/main/disable_auto_update_web.ps1 | iex

脚本将执行四层策略:

  • 第1层:设置「自动下载,通知安装」,补丁及时到位但不自动安装。
  • 第2层:全时段禁止自动重启。
  • 第3层:禁用交付优化,节省带宽。
  • 第4层:保留 UsoSvc,确保安全补丁正常推送。
提示: 补丁下载完成后系统会弹窗通知,选择业务低峰期手动点击安装,建议每月至少安装一次安全更新。

四、完成确认清单

  • RDP 端口脚本执行完成,输出摘要中显示新端口号
  • 确认新端口处于监听状态(可执行 Get-NetTCPConnection -LocalPort <新端口> -State Listen 验证)
  • 使用「IP:新端口」格式成功建立远程连接
  • 云服务器已在安全组中开放新端口(如适用)
  • 更新脚本(桌面版或网站版)执行完成,日志无报错
  • 已制定每月固定时间手动检查更新的计划

 

Telegram
Telegram@IDCSELL