Oamc

远程桌面 120 天宽限期重置

本页目录

场景

Windows Server 装了「远程桌面服务」角色,但没配许可证服务器,或者只是临时用一下。 RDS 会给 120 天宽限期,到期后远程桌面只允许控制台登录,普通用户连不进来。 测试机、临时环境需要把计时重新开始。

先说清楚

这是重置评估期,不是拿到授权。生产环境请部署 RD 授权服务器并购买 CAL。 域里如果已经指向了许可证服务器,根本没有宽限期,也不需要这篇的操作。

前置条件

  • Windows Server 2012 R2 / 2016 / 2019 / 2022,已装 RDS 会话主机角色
  • 本地管理员权限,能改注册表所有者
  • 能接受重启(会断开所有在线会话)
  • 先看当前还剩几天:lsdiag.msc(RD 授权诊断器)

配置

方法一:PsExec 以 SYSTEM 身份删(推荐)

GracePeriod 这个键默认只有 SYSTEM 能删,管理员直接删会提示拒绝访问。

# 下载 PsExec 后,用 SYSTEM 权限打开注册表编辑器
PsExec64.exe -s -i regedit.exe

在弹出的注册表编辑器里定位到:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\RCM\GracePeriod

右键删掉整个 GracePeriod 键(只删里面的 Tl 值也可以,但删整个键更干净),然后重启。

方法二:改所有者后手动删

不想用 PsExec 的话:

  1. regedit → 定位到上面的路径
  2. 右键 GracePeriod → 权限 → 高级
  3. 所有者改成 Administrators,勾上「替换子容器和对象的所有者」→ 应用
  4. 回到权限页,给 Administrators 完全控制
  5. 删除这个键
# 删完确认一下
Test-Path "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\RCM\GracePeriod"
Restart-Computer

重启后系统会重新创建这个键,计时回到 120 天。

验证

# 键被重新创建了,说明生效
Test-Path "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\RCM\GracePeriod"

# 看剩余天数
lsdiag.msc

事件日志里也能看到:事件查看器 → 应用程序和服务日志 → Microsoft → Windows → TerminalServices-Licensing。

回滚

没有「回到之前的剩余天数」这种回滚——删掉就是重新计时。真出问题先看服务:

Get-Service TermService, SessionEnv, UmRdpService | Format-Table Name, Status

要回到合规状态只有一条路:部署授权服务器、装 CAL、指向它。

坑

  • 直接删一定失败:键的所有者是 NT SERVICE\TrustedInstaller,Administrators 只有读权限。
  • 只删 Tl 值有时不生效,删整个键更保险。
  • 必须重启,删完立刻连是没变化的。
  • 域环境里配了许可证服务器的话宽限期是 0 天,这个操作没意义。
  • 某些安全软件会把修改这个键当恶意行为拦截,操作前看一眼有没有告警。
  • 打补丁或重装 RDS 角色后计时可能被重置,别指望一次操作永久有效。