Главная > Без рубрики > Win2012 проблемы с лицензиями после смены ip и копировании хоста/бекапа

Win2012 проблемы с лицензиями после смены ip и копировании хоста/бекапа

22 октября 2020

После переноса сервера на другой ip с контроллером AD и ролями удаленных рабочих столов получаем ошибку лицензирования клиентов по rdp. Так же при таком переносе нет возможности создать новые коллекции получаем ошибку подключения к узлу терминалов. Решается вопрос как обычно через одно место.

Для начала удаляем все роли удаленных рабочих столов полностью и перезагружаемся.

В в групповой политике сбросить параметры в ветке «Конфигурация компьютера/Административные шаблоны/Компоненты Windows/Службы удаленных рабочих столов/Узел сеансов удаленных рабочих столов» в «не задана». А так же там же в лицензировании убрать сервер лицензий в Не задано.

После этого проверяем количество дней лицензии триала

Количество дней до окончания RDS Grace Period можно узнать командой:

wmic /namespace:\\root\CIMV2\TerminalServices PATH Win32_TerminalServiceSetting WHERE (__CLASS !="") CALL GetGracePeriodDays

GetGracePeriodDays

Для решения данной проблемы нужно  на RDS сервере удалить ключ, определяющий льготный период лицензирования (grace period licensing). Дата, определяющая время окончания работы сервера в режиме grace хранится в ключе L$RTMTIMEBOMB (довольно забавное имя –TIME BOMB …. ;), находящемся в ветке реестра:

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

CurrentControlSet\Control\Terminal Server\RCM\GracePeriod

Необходимо удалить ключ L$RTMTIMEBOMB. Однако, для этого у администратора недостаточно прав.Unable to delete all specified values.

Реестр: Unable to delete all specified values

Чтобы удалить этот ключ, нужно предоставить своей учетной записи права владельца ветки и, затем, права на изменение (не буду подробно описывать сам процесс).

Разрешения на ветку GracePeriod

Теперь щелкаем ПКМ по ключи L$RTMTIMEBOMB и удаляем его.

Удалить ключ L$RTMTIMEBOMB

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

$obj = gwmi -namespace "Root/CIMV2/TerminalServices" Win32_TerminalServiceSetting
$obj.GetSpecifiedLicenseServerList()

GetSpecifiedLicenseServerList

Как вы видите, сервер лицензирования  RDS не задан (список SpecifiedLSList пуст). С помощью следующей команды укажем сервер лицензий RD.

$obj = gwmi -namespace "Root/CIMV2/TerminalServices" Win32_TerminalServiceSetting
$obj.SetSpecifiedLicenseServerList("dc.firm.local")

SetSpecifiedLicenseServerList

После этого обнуляем лицензии в списке сервера лицензирования столов:

Запускаете меню «Службы» путем Win + R => services.msc => Ищите службу «Лицензирование удаленных рабочих столов» (по англ. Remote Desktop Licensing) и останавливаете ее.

После заходите в папку: C:\Windows\System32\lserver и удаляете файл «TLSLic.edb» (Внимание, предварительно сохраните данный файл где-нибудь в надежном месте)

Далее, запускаете обратно службу «Лицензирование удаленных рабочих столов» (по англ. Remote Desktop Licensing) в меню services.msc.

Теперь можем зайти снова в меню «Диспетчер лицензирования удаленных рабочих столов» и видим, что лицензии удалились.

И только после этого ставим роли удаленных рабочих столов, потом добавляем коллекцию и только после этого запускаем лицензирование через отлом

Обязательно проверяем что тип лицензирования который выставили в политиках соответвует рабочему режиму лицензирования, скорее всего тип лицензирования не будет установлен вообще

Проверку настройки сервера лицензирования также можно выполнить из PowerShell:

Get-RDLicenseConfiguration

Get-RDLicenseConfiguration

Как мы видим, сервер указан, и используется тип лицензирования PerUser.

Categories: Без рубрики Tags:
Комментирование отключено.