Установка и активация сервера лицензирования RDS на Windows Server

Сервер Remote Desktop Licensing используется для выдачи и отслеживания клиентских терминальных лицензий RDS (CAL). Согласно схеме лицензирования Microsoft все пользователи, или устройства, подключающиеся к графическому сеансу рабочего стола RDS, должны быть лицензированы. В этой статье мы рассмотрим, как установить и активировать роль сервера лицензирования удаленных рабочих столов на хосте с Windows Server 2022, 2019 и 2016, а также как установить клиентские лицензии RDS CAL.

🎓 Онлайн-курс по устройству компьютерных сетей
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и "под микроскопом" изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.

Установка роли Remote Desktop Licensing в Windows Server

Компонент Remote Desktop Licensing можно установить на любом хосте Windows Server (не обязательно устанавливать его на одном из серверов фермы RDS). Если вы разворачиваете хост RD Licensing в домене AD, добавьте сервер во встроенную группу Terminal Server License Servers (иначе сервер не сможет выдать CAL типа RDS Per User пользователям домена).

Состав этой группы позволяют быстро найти все хосты с лицензиями RDS в домене.

Доменная группа Terminal Server License Servers

Установите службу Remote Desktop Licensing через консоль Server Manager (Add Roles and Features -> Remote Desktop Services -> Remote Desktop Licensing.

Remote Desktop Licensing - служба лицензирования терминалов

Дождитесь окончания установки роли.

установка службы Remote Desktop Licensing

Также вы можете в Windows Server установить компонент лицензирования RDS и инструменты управления RD Licensing с помощью PowerShell:
Install-WindowsFeature RDS-Licensing –IncludeAllSubFeature -IncludeManagementTools

Выведите установленные компоненты RDS на сервере и проверьте, что RDS-Licensing и RDS-Licensing-UI установлены:

Get-WindowsFeature -Name RDS* | Where installed

powershell проверить какие службы RDS установлены на Windows Server

Для управления службой RDS-Licensing используются две консоли:

  • Remote Desktop Licensing Manager ( licmgr.exe )
  • RD Licensing Diagnoser ( lsdiag.msc )

Консоли управления сервером лицензирования RDS

Активация сервера лицензий RDS на Windows Server

Чтобы сервер лицензирования RDS мог выдавать лицензии клиентам, его необходимо активировать. Откройте консоль Remote Desktop Licensing Manager ( licmgr.exe ), щелкните ПКМ по имени вашего сервера и выберите пункт меню Activate Server.

активация сервера терминальных лицензий

В мастере активации сервера лицензирования RDS нужно выбрать, хотите ли вы активировать сервер через интернет, с помощью браузера или по телефону.

выберите метод активации сервера лицензирования

Далее нужно будет заполнить ряд информации о вашей организации (часть полей является обязательными). информация об организации и компании

Нажмите кнопку Finish. Должна появится надпись:

The license server has been successfully activated.

сервер лицензирования RDS успешно активирован

Щелкните в консоли по имени сервера и выберите Review Configuration. В этом примере сервер лицензий RDS активирован и может выдавать лицензии клиентам в домене AD.

This license server is a member of the Terminal Server License Servers group in Active Directory. This license server will be able to issue RDS Per User CALs to users in the domain, and you will be able to track the usage of RDS Per User CALs.
This license server is registered as a service connection point (SCP) in Active Directory Domain Services.

Review Configuration

Установка клиентских лицензий RDS CAL в Windows Server

Теперь на сервер лицензирования нужно установить приобретенный вами пакет терминальных лицензий (RDS CAL, client access license). Есть два типа терминальных CAL:

  • На устройство (Per Device CAL) – лицензия назначается на устройство (компьютер). Дает право подключения к RDS серверам с одного устройства любому количеству пользователей. При первом подключении устройства к RDS ему назначается временная лицензия, а при втором – постоянная. Лицензия не являются конкурентными, это означает что если у вас 10 лицензий Per Device, то к вашему RDS серверу смогут подключится всего 10 компьютеров. Актуальная OVL лицензия называется так: Win Remote Desktop Services CAL 2022 SLng OLV NL AP DCAL
  • На пользователя (Per User CAL) – лицензия позволяет одному пользователю подключаться к RDS с любого количества компьютеров. Этот тип лицензии привязывается к учетной записи пользователя в Active Directory, но выдается не навсегда, а на срок от 52 до 89 дней (случайное число). Актуальная Open Value лицензия этого типа называется так: Win Remote Desktop Services CAL 2022 SLng OLV NL AP UCAL .
    Если вы разворачиваете RDSH сервер в рабочей группе (не в домене), используйте лицензирование на устройство (Per Device RDS CAL). Иначе RDSH сервер будет каждые 60 минут завершать сеанс пользователей с сообщением: “Проблема с лицензией удаленных рабочих столов и ваш сеанс будет завершен через 60 мин / There is a problem with your Remote Desktop license, and your session will be disconnected in 60 minutes ”. Проблема с лицензией удаленных рабочих столов и ваш сеанс будет завершен через 60 мин

Клиентские лицензия RDS которые вы используете должны быть совместимы с версией Windows Server, к которой подключается пользователь или устройство. Следующая таблица позволяет определить совместимость RDS CAL с версий Windows Server на сервере лицензирования RDS:

2008 R2 СAL2012 CAL2016 CAL2019 CAL2022 CAL
2008 R2YesNo NoNoNo
2012YesYesNoNoNo
2012 R2YesYesNoNoNo
2016YesYesYesNoNo
2019YesYesYesYesNo
2022YesYesYesYesYes
Примечание. RDS CAL для новых версий Windows Server нельзя установить на предыдущие версии WS. Например, вы не сможете установить 2022 RDS CAL на хост лицензирования Windows Server 2016. При попытке установить новые лицензии на старую версию Windows Server появится ошибка:

rds ошибка неверный код при добавлении лицензий RDS CAL

RD Licensing Manager
The license code is not recognized. Ensure that you have entered the correct license code.

В консоли Remote Desktop Licensing Manager щелкните по серверу и выберите Install Licenses.

Установка терминальных CAL на RDS сервере

Выберите способ активации (автоматически, через веб или по телефону) и программу лицензирования (в нашем случае Enterprise Agreement).

В сеть утекло уже довольно много enterprise agreement номеров для RDS (4965437). Найти номера думаю, не составит проблемы. Обычно даже не нужно искать кряки или активаторы.

программа лицензирования Enterprise Agreement

Следующие шаги мастера зависят от того, какой тип лицензирования выбран. В случае Enterprise Agreement нужно указать его номер. Если выбран тип лицензирования License Pack (Retail Purchase), нужно будет указать 25-символьный ключ продукта, полученный от Microsoft или партнера. номер лицензионного соглашения

Укажите тип продукта (Windows Server 2022, 2019 или 2016), тип RDS CAL и количество терминальных лицензий, которые нужно установить на сервере.
тип и количество RDS лицензий

Если нужно сконвертировать RDS лицензии User CAL в Device CAL (или наоборот), щелкните по пакету лицензий в консоли RD Licensing Manager и выберите Convert Licenses.

сонвертировать rds cal из user в device

Настройка серверов RDSH на использование сервера лицензий RDS

После установки роли RDSH на Windows Server пользователю могут использовать его в течении пробного (grace) периода 120 дней, после чего они не смогут подключиться к RDS. Чтобы ваши RDSH хосту могли получать CAL лицензии с RDS License сервера и выдавать их устройствам/пользователям, нужно указать адрес сервера с RDS лицензиями в настройках терминальных серверов RD Session Host.

Можно задать адрес сервера лицензирования в настройка коллекции на RDSH. Откройте Server Manager -> Remote Desktop Services -> Collections. В правом верхнем меню выберите Tasks -> Edit Deployment Properties.

rds изменить настройки Edit Deployment Properties

Перейдите на вкладку RD Licensing, выберите тип лицензирования (Per user или Per device в зависимости от имеющихся лицензий) и адрес сервера RDS. Нажмите Add -> Ok.

rdsh изменить параметры лицензирования хоста

Если не задать тип лицензирования, при подключении к RDS будет появляться предупреждение Не задан режим лицензирования для сервера узла сеансов удаленных рабочих столов.

Можно задать настройки сервера лицензирования RDS через групповые политики. В домене нужно создать нужно создать новую GPO в консоли GPMC и назначить ее на OU с RDS серверами (либо вы можете указать имя сервера лицензирования RDS с помощью локального редактора групповых политикgpedit.msc ).

Перейдите в раздел Computer Configuration -> Policies -> Admin Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Session Host -> Licensing и настройте два параметра.

  • Use the specified Remote Desktop license servers – укажите имя или IP адрес сервера лицензирования RDS;
  • Set the Remote Desktop licensing mode – выбор тип клиентских лицензий (RDS CAL).

GPO -> Remote Desktop Session Host -> Licensing

Если вы установили RDSH на ознакомительной редакции Windows Server Evaluation, нужно конвертировать его в полноценную версию согласно инструкции. Без конвертации службы RDSH на таком хосте будут работать только 120 дней даже после того, как вы нацелите его на активированный сервер лицензий RDS.

Также можно задать имя сервера лицензирования RDS и тип CAL с помощью PowerShell. Если у вас развернут посредник RDS Connection Broker, можно изменить настройки лицензирования с помощью команды:

Set-RDLicenseConfiguration -LicenseServer @("rds-lic01.winitpro.loc") -Mode PerDevice -ConnectionBroker "rdcb01.winitpro.loc"

Либо вы можете указать адрес сервера лицензирования и тип лицензий в реестре с помощью PowerShell команд:

# Тип лицензирования RDS 2 – Per Device CAL, 4 – Per User CAL
$RDSCALMode = 4
# Имя сервера лицензирования RDS
$RDSlicServer = "rds-lic01.winitpro.loc"
New-Item "HKLM:\SYSTEM\CurrentControlSet\Services\TermService\Parameters\LicenseServers"
New-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Services\TermService\Parameters\LicenseServers" -Name SpecifiedLicenseServers -Value $RDSlicServer -PropertyType "MultiString"
Set-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\RCM\Licensing Core\" -Name "LicensingMode" -Value $RDSCALMode

Хосты RDSH для получения лицензий с сервера RDS Licensing обращаются к нему по следующим портам. Убедитесь, что они не блокируются межсетевыми экранами (или Windows Firewall):

  • TCP/135 (Microsoft RPC)
  • UDP/137 (NetBIOS Datagram Service)
  • UDP/138 (NetBIOS Name Resolution)
  • TCP/139 (NetBIOS Session Service)
  • TCP/445 (SMB)
  • TCP 49152 – 65535 — RPC динамический диапазон адресов

Вы можете проверить доступность портов с помощью утилиты PortQry или командлета Test-NetConnection.

Запустите утилиту Remote Desktop Licensing Diagnoser ( lsdiag.msc ) на RDSH хосте и проверьте, что он видит сервер лицензирования и количество доступных RDS CAL.

RD Licensing Diagnoser did not identify any licensing problems for the Remote Desktop Session Host server.

RD licensing diagnoser: проверить подключение к серверу лицензирования
Если сервер сервера лицензий RDS не задан, или недоступен, в консоли Licensing Diagnoser будут присутствовать следующие предупреждения:

Licenses are not available for this Remoter Desktop Session Host server, and RD Licensing Diagnose has identified licensing problems for the RDSH
Number of licenses available for clients: 0
The licensing mode for the Remote Desktop Session Host server is not configured
Remote Desktop Session Host server is within its grace period, but the RD Session Host server has not been configured with any license server.

rds diagnoser недоступны лицензии

Примечание. В нашем случае после указания нового сервера лицензирования, на RDP клиенте при подключении стала появляться ошибка The remote session was disconnected because there are no Remote Desktop License Servers available to provide a license . Решение – удаление ключа L$RTMTIMEBOMB из реестра.

Можете подключиться к RDSH серверу с клиента и проверить, что сервер лицензирования назначил RDS CAL подключению. Откройте консоль Event Viewer и перейдите Applications and Services Logs -> Microsoft -> Windows -> TerminalServices-Licensing -> Operational. Событие успешной выдачи RDS CAL с Event ID 82 будет содержать такую надпись:

The "Temporary"  Windows Server 2022 : RDS Per Device CAL belonging to computer "DESKTOP-S6G9U9C" has been upgraded to "Permanent" Windows Server 2022 : RDS Per Device CAL.

Логи выдачи RDS лицензий в Event Viewer

Управление клиентскими лицензиями CAL на RDS

Рассмотрим несколько типовых инструментов администратора при управлении RDS CAL на сервере лицензирования.
Вы можете в консоли управления RD Licensing Manager отчет об использовании лицензий RDS CAL. Для этого в контекстном меню сервера выберите Create Report -> CAL Usage.

сгенерирвать отчет об использовании лицензий rds cal

Вывести информацию по установленным и используемым лицензиям RDS CAL с помощью PowerShell:

Get-WmiObject Win32_TSLicenseKeyPack|select-object KeyPackId,ProductVersion,TypeAndModel,AvailableLicenses,IssuedLicenses |ft

rdc licensing cal Win32_TSLicenseKeyPack

Если у вас закончились свободные лицензии, вы можете отозвать ранее выданные лицензии RDS Device CAL для неактивных компьютеров из консоли (правой кнопкой по лицензии и выберите Revoke License.

RDS CAL отозвать лицензию

Также вы можете отозвать RDS CAL с помощью скрипта PowerShell:

$RevokedPCName=”msk-pc2332”
$licensepacks = Get-WmiObject win32_tslicensekeypack | where {($_.keypacktype -ne 0) -and ($_.keypacktype -ne 4) -and ($_.keypacktype -ne 6)}
$licensepacks.TotalLicenses
$TSLicensesAssigned = gwmi win32_tsissuedlicense | where {$_.licensestatus -eq 2}
$RevokePC = $TSLicensesAssigned | ? sIssuedToComputer -EQ $RevokedPCName
$RevokePC.Revoke()

Можно отозвать до 20% Per-Device RDS CALs. Per-User CALs отозвать нельзя.
🎓 Онлайн-курс по устройству компьютерных сетей
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и "под микроскопом" изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.

Предыдущая статья Следующая статья


Комментариев: 56 Оставить комментарий

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Я не робот( Обязательно отметьте)