Как сбросить grace period TS Windows Server 2019

Дистрибутив: SW_DVD9_Win_Server_STD_CORE_2019_64Bit_English_DC_STD_MLF_X21-96581.ISO

ОС: Windows Server 2019 Standard (Desktop Experience)

Вот Вы подняли терминальный сервер (tips_server_2019_ts_v1.docx) на Server 2019 попользовались полноценный терминальным сервером целых 120 дней. И вот близятся дни, а Вы подумали заранее, что будет если 120 дней пройдет, то работа будет нарушена. Активировать его (это значит тратить лицензию) или переустанавливать (это значит переустанавливать софт, настройки). Тоже так себе перспектива. А если как-нибудь сбросить Grace Period на начало, как я уже практически использовал:

Следовательно разберу, объединив все выше разобранное, но к Terminal Server on Windows Server 2019 Std.

Шаг №1: На терминальном сервере (srv-ts) авторизуюсь под учетной записью вхожей в группу локальных администраторов, запускаю окно командной строки с правами Администратора:

Нажимаю клавишу Win -> Windows System – и через правый клик мышью на “Command Prompt” выбираю меню More -> Run as administrator, выполняю следующую команду дабы посмотреть количество дней до окончания использования терминальным сервером из дефолтных 120 дней.

C:\Users\Administrator> wmic /namespace:\\root\CIMV2\TerminalServices PATH Win32_TerminalServiceSetting where (__CLASS !="") call getgraceperioddays | findstr /I "DaysLeft"

DaysLeft = 119;

C:\Users\Administrator>

Шаг №2: По аналогии, как делал ранее в заметках задействую утилиту subinacl (version: 5.2.3790.1180), скачиваем ее и помещаем в %systemroot%\system32. Затем с помощью нее захватываем права владельца на раздел реестра:

12345678910111213C:\Users\Administrator> if not exist c:\test mkdir c:\test C:\Users\Administrator> bitsadmin /transfer subinacl /download /priority normal https://download.microsoft.com/download/1/7/d/17d82b72-bc6a-4dc8-bfaa-98b37b22b367/subinacl.msi c:\test\subinacl.msi C:\Users\Administrator> cd /d c:\test C:\test> msiexec /i subinacl.msi /q C:\test>copy /Y “c:\Program Files (x86)\Windows Resource Kits\Tools\subinacl.exe” c:\windows\system32 C:\test> cd /d c:\Windows\System32 C:\Windows\system32>subinacl.exe /subkeyreg “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\RCM\GracePeriod” /setowner=Administrators

Но получаю сообщение вида:

“This app can’t run on your PC. To find a version for your PC, check with the software publisher”

И соответственно получаю ответ от выполнения команды: “Access is denied”.

См. свойства файла через проводник и вот размер файла почему-то 0 bytes, повторяю копирование и вижу размер 284 KB. Значит если размер 0, то работает какой-то антивирус.

Скопировал именно вот так, перейдя в каталог C:\Windows\System32\:

12345c:\Windows\System32>copy /Y “c:\Program Files (x86)\Windows Resource Kits\Tools\subinacl.exe” c:\windows\system32\ 1 file(s) copied. c:\Windows\System32>

Шаг №3: После захвата прав владельца для локальных администраторов устанавливаем права на запись всем кто вхож в группу «Administrators/Администраторы” на текущей системе:

1C:\Windows\system32>subinacl.exe /subkeyreg “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\RCM\GracePeriod” /grant=Administrators=F

Шаг №4: Далее удаляем ключ из раздела GracePeriod который отвечает за оценочный период по использованию текущего сервера с ролью терминального в 120 дней. Этим мы опять восстановим работу в 120 дней:

1C:\Windows\system32>reg delete “HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\RCM\GracePeriod” /v L$RTMTIMEBOMB_1320153D-8DA3-4e8e-B27B-0D888223A588 /f

Шаг №5: Возьмите за правило, если что-то изменили в реестре в качестве прав и захвата владельца, то после по достижению результата следует восстановить как было до. В частности восстанавливаем дефолтные права которыми руководствуется роль Remote Desktop Services при работе:

12345C:\Windows\system32>subinacl.exe /subkeyreg “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\RCM\GracePeriod” /deny=Administrators= C:\Windows\system32>subinacl.exe /subkeyreg “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\RCM\GracePeriod” /grant=Administrators=QEYA C:\Windows\system32>subinacl.exe /subkeyreg “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\RCM\GracePeriod” /setowner=”NETWORK SERVICE”

Шаг №6: Отлично! Теперь для активации изменений систему/сервер нужно перезагрузить:

1C:\Windows\system32>shutdown /r /t 3

Шаг №7: Возвращаемся к Шаг №1: с целью проверки количества дней использования терминального сервера:

123C:\Windows\system32>wmic /namespace:\\root\CIMV2\TerminalServices PATH Win32_TerminalServiceSetting where (__CLASS !=””) call getgraceperioddays | findstr /I “DaysLeft” DaysLeft = 119;

Как видно 120 дней снова и снова можно использовать терминальный сервер, как и было изначально, а вот если Вам надоест, то можно и активировать его лицензионным ключом или же Вы что-то тестируете, то такая схема описанная/разобранная мной в этой заметке может помочь Вам.

Итого, теперь у меня есть четыре заметки, где действия по восстановлению периода в 120 дней на системах Windows Server 2008 R2 & Windows Server 2012 R2 & Windows Server 2016 & Windows Server 2019. Пока на этом у меня всё, с уважением автор блога Олло Александр aka ekzorchik.