以下部分文档来源于:使用客户端访问许可证 (CAL) 许可 RDS 部署

RDS CAL 模型

连接到远程桌面会话主机的每个用户和设备需要客户端访问许可证 (CAL)。 使用 RD 授权来安装、颁发和跟踪 RDS CAL。

当用户或设备连接到 RD 会话主机服务器时,RD 会话主机服务器将确定是否需要 RDS CAL。 然后,RD 会话主机服务器从远程桌面许可证服务器请求 RDS CAL。 如果可从许可证服务器获取相应的 RDS CAL,则会将 RDS CAL 颁发给客户端,并且客户端能够连接到 RD 会话主机服务器,并从此处连接到桌面或它们正在尝试使用的应用。

虽然在一个授权宽限期内不需要任何许可证服务器,但在此宽限期过后,客户端必须先具有由许可证服务器颁发的有效 RDS CAL,然后才能登录到 RD 会话主机服务器。

RDS CAL 共有两种类型:

  • RDS - 每设备 CAL
  • RDS - 每用户 CAL

下表概述了两种类型的 CAL 之间的差异:

| 每设备 | 每用户 |
| - | - |
| RDS CAL 以物理方式分配给每个设备。 | RDS CAL 分配给 Active Directory 中的用户。 |
| RDS CAL 由许可证服务器跟踪。 | RDS CAL 由许可证服务器跟踪。 |
| 无论 Active Directory 成员身份为何,都可以跟踪 RDS CAL。 | 不能在工作组中跟踪 RDS CAL。 |
| 最多可以撤消 20% 的 RDS CAL。 | 无法撤消任何 RDS CAL。 |
| 临时 RDS CAL 的有效期为 52–89 天。 | 临时 RDS CAL 不可用。 |
| 不能过度分配 RDS CAL。 | 可以过度分配 RDS CAL(这违反远程桌面许可协议)。 |

如果使用每设备模型,则在设备首次连接到 RD 会话主机时,会颁发临时许可证。 该设备第二次连接时,只要激活许可证服务器,并且存在可用 RDS CAL,许可证服务器就会按设备 CAL 颁发永久的 RDS。

如果使用每用户模型,则不会强制执行授权,并向每个用户授予从任意数量的设备连接到 RD 会话主机的许可证。 许可证服务器颁发来自可用的 RDS CAL 池或过度使用的 RDS CAL 池的许可证。 你必须负责确保你的所有用户具有有效的许可证且没有过度使用的 CAL;否则,你违反了远程桌面服务许可条款。

若要确保遵守远程桌面服务许可条款,请跟踪组织中使用的每用户 CAL 的 RDS 数,确保每用户 CAL 有足够的 RDS 安装在所有用户的许可证服务器上。

可以使用远程桌面授权管理器跟踪并生成有关 RDS - 每用户 CAL 的报告。

RDS CAL 版本兼容性

用户或设备的 RDS CAL 必须兼容用户或设备连接到的 Windows Server 的版本。 不能使用较低版本的 RDS CAL 来访问较高版本的 Windows Server,但可以使用较高版本的 RDS CAL 来访问较低版本的 Windows Server。 例如,若要连接到 Windows Server 2016 RD 会话主机,需要使用 RDS 2016 CAL 或更高版本,而若要连接到 Windows Server 2012 R2 RD 会话主机,则需要使用 RDS 2012 CAL 或更高版本。

下表显示了哪些 RDS CAL 和 RD 会话主机版本彼此兼容。

| | RDS 2008 R2 及更低版本的 CAL | RDS 2012 CAL | RDS 2016 CAL | RDS 2019 CAL |
| - | - | - | - | - |
| 2008、2008 R2 会话主机 | 是 | 是 | 是 | 是 |
| 2012 会话主机 | 否 | 是 | 是 | 是 |
| 2012 R2 会话主机 | 否 | 是 | 是 | 是 |
| 2016 会话主机 | 否 | 否 | 是 | 是 |
| 2019 会话主机 | 否 | 否 | 否 | 是 |

必须在兼容的 RD 许可证服务器上安装 RDS CAL。 任何 RDS 许可证服务器都可以托管来自所有以前版本的远程桌面服务和当前版本的远程桌面服务的许可证。 例如,Windows Server 2016 RDS 许可证服务器可以托管来自所有以前版本的 RDS 的许可证,而 Windows Server 2012 R2 RDS 许可证服务器最多只能托管来自 Windows Server 2012 R2 的许可证。

下表显示了哪些 RDS CAL 和许可证服务器版本彼此兼容。

| | RDS 2008 R2 及更低版本的 CAL | RDS 2012 CAL | RDS 2016 CAL | RDS 2019 CAL |
| - | - | - | - | - |
| 2008、2008 R2 许可证服务器 | 是 | 否 | 否 | 否 |
| 2012 许可证服务器 | 是 | 是 | 否 | 否 |
| 2012 R2 许可证服务器 | 是 | 是 | 否 | 否 |
| 2016 许可证服务器 | 是 | 是 | 是 | 否 |
| 2019 许可证服务器 | 是 | 是 | 是 | 是 |

测试授权类型

说明:
本人非专业测试人员,以下操作仅按自己想法实施,且主要以拿到自己想要数据为主。

而且,这个CAL授权是真他娘的贵哦,只能精打细算的看怎么划算。

商城链接:Windows Server Remote Desktop Services CAL,国内的微软没回复我代理商,让我自己找。懒得找哦。

测试环境说明:

服务器与测试端均使用虚拟机,各操作步骤打快照/还原测试

服务器:Windows Server 2012 R2 ( 6.3.9600 暂缺 Build 9600)

客户端操作系统:Windows 10 专业版( 10.0.18363 暂缺 Build 18363)

连接 RDP客户端:远程桌面连接(mstsc)

测试方法:

User CALDevice CAL 均以一(User/Device)授权许可证方式测试,以验证在什么情况下会使用掉授权许可证,及授权许可证不足时系统提示信息。

未使用 RDS 授权

测试流程

  1. 开启远程桌面

  2. 修改本地组策略

    1. 使用 win + R 打开运行输入 gpedit.msc 打开本地组策略编辑器

    2. 依次打开菜单:计算机配置=>管理模板=>Windows 组件=>远程桌面服务=>远程桌面会话主机=>连接

    3. 修改其中限制连接的数量999999

    4. 启动将远程桌面服务用户限制到单独的远程桌面服务会话

  3. 创建测试用户

    使用 powershell 执行命令,替换 <username><password> 为你的账号密码创建测试用户,尽量多创建几个用户测试。

    PS > net user <username> <password> /add    # 创建用户
    PS > net localgroup "Remote Desktop Users" <username> /add   # 添加用户到远程组
    
  4. 使用 win10 的远程桌面连接登陆服务器,同时使用多个用户登陆测试

    发现最多可登陆两个远程连接,使用第三用户登陆会提示已登陆的用户太多

    如果在 rds03 的远程桌面连接中选择活动的用户,会给对应的用户发送申请断开会话

结论

在不接入 RD 授权服务器 的情况下,使用多用户同时远程仅能至多开启两个远程桌面。或者本地登陆后仅能开启一个远程桌面。

按设备授权(Device CAL)

测试流程

  1. 开启远程桌面及修改本地组策略与[未使用 RDS 授权](#未使用 RDS 授权)一致

  2. 在服务器上安装远程桌面服务RD 授权管理器 并添加许可证:参考winServer 2012 远程桌面服务(RDS)配置与激活

    选择每设备客户端访问许可证,并且数量填写为 1,其他流程依旧参考winServer 2012 远程桌面服务(RDS)配置与激活

    添加完成后查看剩余许可证

  3. 测试连接

    • 通过同一客户端测试访问

      可以看到添加 RD 授权服务器 后可以突破单设备多用户访问登陆限制次数

      且可以在服务器端看到 RD 授权管理器RD 授权诊断程序 中,已经有颁发给我测试的 win10 系统许可证,客户端可用的许可证数量也由 1 变为了 0

      同时,由于启动远程桌面服务后有120天试用授权,我们再次修改服务器与客户端系统时间后登陆查看(注意,可能会出现用户密码过期,重置密码登陆即可)

      重置用户密码命令: net user <username> <new_password>

      通过测试,发现修改时间后仅第一次登陆使用的客户端会被授予访问许可证,第二台客户端无法连接,详见下面通过不同客户端测试访问结果。

    • 通过不同客户端测试访问

      再在许可证已用完的情况下使用其他客户端连接试试,发现可以连接。怀疑原因可能为两点(1. 由于按设备授权第一次连接是有临时授权的,但是重启服务器与第二台 windows 后依然可以连接;2. 可能为远程桌面服务刚刚装上,还在试用期内,使用了试用期的免许可),回到上面,修改时间测试。

      修改系统时间后,在使用第二台 win 10 连接过远程桌面后,使用计算机名为 winclient-akiya的计算机登陆会提示没有远程桌面客户端访问许可证

结论

安装远程桌面服务并添加许可证后,不会立即使用掉许可证,许可证会在 RD 服务器 试用过期后,才会正确使用掉。并且按设备授权会把许可证给予第一台访问的服务器。

不过,可以在RD 授权管理器吊销许可证,已供新的客户端设备重新使用许可证授权。需要注意的是,吊销后的许可证不会直接无法使用,而是会在截止日期到期后才会终止使用许可。

按用户授权(User CAL)

测试流程

  1. 开启远程桌面及修改本地组策略与未使用 RDS 授权一致
    注:测试时未安装与加入 AD 域,不过按照官方文档说明, User CAL 会跟踪 AD 账号。这个后期有时间了再测试。

  2. 在服务器上安装远程桌面服务RD 授权管理器 并添加许可证:参考winServer 2012 远程桌面服务(RDS)配置与激活

    选择每用户客户端访问许可证,并且数量填写为 1,其他流程依旧参考winServer 2012 远程桌面服务(RDS)配置与激活

    添加完成后查看剩余许可证

  3. 测试连接

    • 同一客户端连接

      在刚安装 远程桌面服务 后,使用同一客户端连接远程桌面可以大于 2 客户端限制

      修改时间后,依然可以多用户登录远程桌面。

    • 不同客户端连接

      在刚安装 远程桌面服务 后,使用不同客户端连接远程桌面可以大于 2 客户端限制

      修改时间后,依然可以多用户登录远程桌面。

结论

添加按用户授权的许可证后,可以多个系统用户同时登录远程桌面(且不会追踪非AD用户的许可证),不过可能会存在违反远程桌面服务许可条款情况。


标题:windows RDS 两种授权(User与Device)在何种情况下会使用许可证
作者:akiya789
地址:https://little-star.love/articles/2020/04/02/1585809603782.html

添加新评论