为远程桌面会话主机提供许可证

可以使用本文中的信息为远程桌面服务 (RDS) 部署上的会话主机配置许可。 根据分配给要为其提供许可的会话主机的角色,此过程略有不同。

Prerequisites

要为会话主机安装许可证,需要一个激活了每用户或每设备客户端访问许可证 (CAL) 的远程桌面许可证服务器。

为包含 RD 连接代理角色的 RDS 部署配置许可

如果需要为 RDS 部署不包含连接代理角色的会话主机提供许可,则必须使用组策略从 Active Directory 域集中指定许可证服务器,或者在每个会话主机上本地指定许可证服务器。 将 Windows Server 与 Azure 虚拟桌面配合使用时,还需要指定许可证服务器。

指定许可证服务器:

  1. 在 RD 连接代理计算机上,打开 服务器管理器

  2. 服务器管理器中,选择 “远程桌面服务>概述>编辑部署属性>RD 许可”。

    “设置远程桌面服务部署”页的屏幕截图。用户在选择“任务”下拉菜单后选择了“编辑部署属性”。

  3. 根据部署选择远程桌面许可模式( 按用户按设备)。

    Note

    如果将已加入域的服务器用于 RDS 部署,则可以同时使用“每用户”和“每设备”CAL。 如果将工作组服务器用于 RDS 部署,则必须使用每设备 CAL。在这种情况下,不允许使用每用户 CAL。

  4. 指定许可证服务器,然后选择“ 添加”。

    “配置部署”页的屏幕截图。其中有两个红色边框,一个围绕两个单选按钮(“每设备”和“每用户”),另一个围绕许可证服务器的文件路径字段。

为仅包含 RD 会话主机角色和 RD 授权角色的 RDS 部署配置许可

  1. 根据是要从域中以集中方式配置组策略还是要在每个会话主机上本地配置组策略,执行以下操作:

    • 打开组策略管理控制台 (GPMC),并创建或编辑面向会话主机的策略。

    • 在会话主机上打开本地组策略编辑器

  2. 转到 计算机配置>管理模板>Windows 组件>远程桌面服务>远程桌面会话主机>许可

    远程桌面许可策略列表的屏幕截图。使用红色边框突出显示了“使用指定的远程桌面许可证服务器”和“设置远程桌面授权模式”。

  3. 在策略列表中,右键单击“使用指定的远程桌面许可证服务器”,然后选择“属性”

  4. 选择 “已启用”,然后在 “许可证服务器”下输入要使用的许可证服务器的名称。 如果有多个许可证服务器,请使用逗号分隔其名称。

    “使用指定的远程桌面许可证服务器”窗口的屏幕截图。使用红色边框突出显示了“要使用的许可证服务器”字段。

  5. 选择“确定”

  6. 在策略列表中,右键单击“设置远程桌面授权模式”,然后选择“属性”

  7. 选择启用

  8. 在“为远程桌面会话主机服务器指定授权模式”下,根据部署选择“每设备”或“每用户”

    “设置远程桌面授权模式”窗口的屏幕截图。使用红色边框突出显示了用于为 RD 会话主机服务器指定授权模式的下拉菜单。

确保 RD 会话主机可以访问同一工作组中的 RD 许可服务器

本部分仅适用于工作组。 如果 RD 会话主机和 RD 许可服务器已加入 Active Directory 中的域,请跳过本部分。 如果 RD 许可服务器和 RD 会话主机服务器是同一台计算机,也可以跳过本部分。

CVE-2024-38099 应用安全更新后,RD 许可服务器会在请求或查询许可证时强制要求 RD 会话主机服务器提供非无名凭据。 若要强制实施存在的非对称凭据,请确认在 RD 会话主机上运行的远程桌面服务所属的 NT AUTHORITY\NETWORK SERVICE 帐户有权访问凭据。 使用以下步骤在工作组中配置计算机。

首先,建议在 RD 许可服务器上创建专用用户:

  1. 连接到 RD 许可服务器。 如果远程执行此作,则如果目标计算机无法联系 RD 许可服务器,则可能需要使用命令启动mstsc.exe /admin应用程序。

  2. 连接后,右键单击“ 开始”,然后选择“ 运行”,然后输入 lusrmgr.msc。 然后按 ENTER。

  3. 在左窗格中选择 “用户 ”。

  4. 打开 “作 ”菜单,然后选择“ 新建用户”。

  5. 为用户选择用户名和唯一的强密码。 然后确认密码。

  6. 取消选中 “用户必须在下次登录时更改密码 ”复选框。

  7. 选择 创建

然后,在需要连接到 RD 许可服务器的每个 RD 会话主机服务器上,添加用户:

  1. 连接到 RD 会话主机。 如果远程执行此作,则如果目标计算机无法联系任何 RD 许可服务器,则可能需要启动 远程桌面连接 应用程序。 以管理员身份打开远程桌面连接,或使用以下命令:mstsc.exe /admin

  2. NT AUTHORITY\NETWORK SERVICE 身份启动命令提示符。 可以通过以管理员身份运行以下命令,通过 Sysinternals Utilities 中的 PsExec 执行此作:

    psexec.exe -I -u "NT AUTHORITY\NETWORK SERVICE" cmd.exe
    
  3. 然后,使用以下命令将许可服务器的主机名或 IP 地址以及用户名和密码添加到许可服务器:

    cmdkey /add:<NAME-OF-THE-LICENSING-SERVER> /user:<NAME-OF-THE-LICENSING-SERVER>\<USERNAME> /pass
    
  4. 当系统提示输入密码时,输入之前选择的密码,然后按 ENTER。

RD 会话主机现在应该能够连接到 RD 许可服务器。

或者,可以在许可服务器上禁用合适的身份验证的要求。 如果尽管存在风险也想要禁用 RD 许可服务器上的身份验证强制实施,可以修改注册表。

Warning

不建议在 RD 许可服务器上禁用身份验证强制实施,并可能导致安全风险增加。 使用它的风险由你自己承担。

注册表编辑器使用不当可能导致严重问题,进而导致需要重新安装操作系统。 Microsoft 无法保证可以解决因注册表编辑器使用不当而造成的问题。 使用注册表编辑器的风险由你承担。

若要更新 RD 许可服务器上的注册表项和值,请执行以下操作:

  1. 选择 “开始”,键入 注册表编辑器,然后打开它。

  2. 导航到密钥并对其进行修改:HKLM\SYSTEM\CurrentControlSet\Services\TermServLicensing\Parameters,值如下:

    • 名称:DisableWorkgroupAuthEnforcement

    • 类型:REG_DWORD

    • 数据:1

Warning

Windows 的未来版本可能会停止遵循此设置。

后续步骤

要了解如何创建报告来跟踪远程桌面许可证服务器颁发的 RDS 每用户 CAL,请参阅跟踪远程桌面服务客户端访问许可证 (RDS CAL)