В этой статье описано, как установить и настроить роль терминального сервера Remote Desktop Session Host в рабочей группе (без домена Active Directory) и без всех дополнительных ролей (Connection Broker, Remote Desktop Web Access, RDS Gateway).
Windows Server с ролью RDSH (Remote Desktop Session Host) позволяет одновременно подключаться к серверу по RDP нескольким пользователям (по умолчанию в Windows Server разрешены только 2 административных RDP подключения). Для каждого пользователя создается отдельная сессия и он получает доступ к персональному рабочему столу
Если вы планируете используете отдельный RDS сервер в рабочей группе, имейте в виду, что его функциональность ограничена. Он не может масштабироваться до полноценной RDS фермы Windows Server, нельзя создавать отдельные коллекцию или RemoteApp, нет брокера, нельзя использовать User Profile Disks для профилей пользователей, отсутствуют средства централизованного управления, при проведении операций обслуживания RDP сервис будет недоступен.
Содержание:
- Установка роли Remote Desktop Services в Windows Server 2019
- Настройка роли Remote Desktop Licensing, добавление RDS лицензий (CAL)
- Настройка роли Remote Desktop Session Host в рабочей группе
Установка роли Remote Desktop Services в Windows Server 2019
Предполагаем, что вы уже установили сервер с Windows Server и выполнили базовые настройки (ip адрес, имя сервера, время/дата, установили обновления и т.д.). Теперь можно установить службу RDS.
Для этого можно использовать Server Manager или PowerShell.
Для установки службы RDS через Server Manager нужно выбрать Role-based or feature-based installation -> Server roles -> Remote Desktop Services -> в компонентах RDS выберите службы Remote Desktop Session Host и Remote Desktop Licensing (согласитесь с установкой компонентов RSAT для управления этими ролями).
Обратите внимание, что если в Server Manager вы выбрали тип установки Remote Desktop Services installation, то в режиме Standard deployment и Quick Start установщик дополнительно установит роли RD Connection Broker и Web Access. В нашем случае все эти роли излишни, т.к. мы ставим стендалон RDS сервер.
Также вы можете установить нужные роли Windows Server с помощью PowerShell:
Install-WindowsFeature -Name RDS-Licensing, RDS-RD-Server –IncludeManagementTools
Проверьте, какие RDS роли установлены на сервере:
Get-WindowsFeature -Name RDS* | Where installed
Перезагрузите сервер:
Restart-Computer
Настройка роли Remote Desktop Licensing, добавление RDS лицензий (CAL)
Следующий этап – настройка роли Remote Desktop Licensing, которая обеспечивает лицензирование RDP подключений пользователей к вашему RDS серверу. Вы можете установить и активировать роль Remote Desktop Licensing на данном хосте (если он у вас один), либо можете разместить роль RDLicensing на другом сервере. Один сервер с ролью RDS Licensing можете выдавать лицензии неограниченному количеству RDSH хостов.
Если вы решили использовать локальный сервер RDLicensing, активируйте сервер лицензий RDS и установите клиентские лицензии (RDS CAL) согласно гайду по ссылке.
В рабочей группе нужно использовать RDS CAL типа Per Device. Если ваш сервер лицензирования выдает только Per User лицензии, то пользователи при RDP подключении к серверу будут получать ошибку:
Remote Desktop License Issue There is a problem with your Remote Desktop license, and your session will be disconnected in 60 minutes.
Настройка роли Remote Desktop Session Host в рабочей группе
Перейдите в Control Panel -> System and Security -> Administrative Tools -> Remote Desktop Services -> Remote Desktop Licensing Diagnoser. Обратите внимание, что ваш сервер еще не настроен на получение RDS CAL лицензий с сервера лицензирования. Об этом свидетельствуют надписи:
- The licensing mode for the Remote Desktop Session Host server is not configured
- Number of licenses available for clients:
0
Если вы не нацелите ваш RDSH сервер на сервер лицензирования RDS, который может выдать пользователям лицензии, ваш сервер будет находится в триальном режиме. В этом режиме службы RDS работают в течении всего 120 дней (при каждом подключении в трее будет появляться сообщение “
Служба удаленных рабочих столов перестанет работать через xxx дней
”). После окончания grace периода ваши пользователи не смогут подключится к RDS с ошибкой:
Remote session was disconnected because there are no Remote Desktop client access licenses available for this computer.
Основной недостаток роли Remote Desktop Services в Windows Server 2019 при установке в рабочей группе – у вас по сути нет никаких удобных инструментов управления ролью RDS. Любые настройки роли RDSH придется выполнять через редактор локальных групповых политик
gpedit.msc
.
[/alert]
В локальной GPO нужно настроить параметры лицензирования RDS:
- Перейдите в раздел GPO Computer Configuration -> Administrative Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Session Host -> Licensing;
- Установите параметра Set the Remote Desktop licensing mode: Per Device;
- В Use the specified Remote Desktop license servers укажите адрес сервера, на котором установлен сервер RDLicensing. Если сервер лицензии установлен локально, укажите localhost или 127.0.0.1;
- Обновите локальные политики, и запустите Remote Desktop Licensing Diagnoser. Убедитесь, что он видит ваши RDS CAL.
Дополнительно в локальных GPO вы можете настроить лимиты (таймауты) на длительность RDP сессий и правила отключения пользователей при неактивности.
Если вы хотите настроить различные групповые политики для локальных пользователей и администраторов, воспользуйтесь функционалом множественных GPO (MLGPO).
Теперь нужно создать для пользователей локальные учетные записи на RDS сервере, под которыми они будут аутентифицироваться. Можно создать пользователей с помощью оснастки lusrmgr.msc или через PowerShell:
$UserPassword = ConvertTo-SecureString "Pa$$dr0w!!" -AsPlainText -Force
New-LocalUser "AIvanov" -Password $UserPassword -FullName "Andrey Ivanov"
Чтобы разрешить пользователю подключаться к серверу через службы Remote Desktop Services, нужно добавить аккаунт в локальную группу Remote Desktop Users. Добавьте пользователей вручную через консоль управления группами или через PowerShell:
Add-LocalGroupMember -Group "Remote Desktop Users" -Member AIvanov
Для данной группы пользователей разрешен вход в локальной политикие Allow logon through Remote Desktop Services (Computer Configuration -> Windows Settings -> Security Settings -> Local Policies -> User Rights Assignment). Эта же политика позволяет обеспечить RDP вход пользователям даже на контроллер домена.
Теперь пользователи могут попробовать со своих компьютеров подключится к вашему RDS хосту с помощью клиента mstsc.exe (или любого другого RDS клиента). Проверьте, что к серверу одновременно может подключится более двух активных RDP сессий .
При первом входе устройству пользователя выдается временная лицензия (особенности RDS Per Device лицензирования). При втором входе выдается постоянная лицензия, которая появится в консоли Remote Desktop Licensing Manager. Лицензия выдается на срок от 52 до 89 дней (случайное число).
Если у вас исчерпаны Per Device лицензии, вы можете вручную отозвать лицензии для некоторых устройств пользователей. Воспользуйтесь консоль RDSLicensing или таким PowerShell скриптом:
$licensepacks = Get-WmiObject win32_tslicensekeypack | where {($_.keypacktype -ne 0) -and ($_.keypacktype -ne 4) -and ($_.keypacktype -ne 6)}
# общее количество лицензий типа per device
$licensepacks.TotalLicenses
# количество лицензий, выданных устройствам
$TSLicensesAssigned = gwmi win32_tsissuedlicense | where {$_.licensestatus -eq 2}
# имя компьютера, для которого нужно отозвать лицензию
$compname="MSK-PC16"
$RevokePC = $TSLicensesAssigned | ? sIssuedToComputer -EQ $compname
$RevokePC.Revoke()
Если вам нужно подключиться в RDP сессию пользователя, вы можете воспользоваться режимом теневого подключения RDS (он работает на RDSH в рабочей группе).
И так, нами всеми, любимый и не мерянно дорогой Microsoft Windows Server. О стоимости его лицензии можно только думать, особенно, на фоне множества бесплатных решений.
Одна из основных задач серверов для корпоративного сегмента — это терминальный сервер. «На него часто ставят» 1С и другое ПО для учета, а так же размещают информацию для общего пользования или то, что надо быстро скрыть от лишних глаз.
Сервер терминалов Windows требует лицензирования. Есть бесплатный период на 120 (90 для MS Windows Server 2000) дней, после чего «железка» остается доступной только админам и то монопольно.
Благо продукция Microsoft настолько дорога, что даже ее сотрудникам за это становиться стыдно и они добродушно оставляют лазейки. Вот одна из них: «6 шагов к лицензиям для терминального сервера». Процедуру установки описывать не буду, считаем что у вас установлена «служба удаленных рабочих столов» и «сервер лицензирования». Так же картинки понятные скрины комментировать не буду.
1. Входим в диспетчер лицензирования удаленных рабочих столов
2. Активируем сервер
3. Вводим любые учетные данные
4. Выбираем тип лицензии: Соглашение Enterprise Agreement
5. Указываем номер соглашения: 4965437
6. Выбираем вашу версию продукта и тип лицензии «на пользователя», можно и на устройство, но тогда есть вероятность их исчерпать, и указываем количество желаемых лицензий (более 9999 увы нельзя)
Для чистой совести можно перезагрузить Сервер. Пользуемся!
Кратко. ВСЕ УСТАНОВЛЕНО НА УСТРОЙСТВО.
1. Посмотрел все сайты, которые указывают на ошибку. Бестолковые
https://social.technet.microsoft.com/Forums/office…
2. Удалить все и с нуля установить AD
Только так и может сработать, а может и нет. Не знаю…
3. В режиме домена не все функции работают рабочего стола, параметры интернета и другие опции… Нет разрешения.
Ваши варианты?
-
Вопрос задан
-
2399 просмотров
Давайте по шагам.
1. Роль «Лицензирование удалённых рабочих столов» установлена?
2. Сервер лицензий в диспетчере лицензирования удалённых рабочих столов активирован (зелёный кружочек с галочкой на иконке рядом с именем сервера)?
3. Лицензии «на устройство» в диспетчере лицензирования удалённых рабочих столов активированы в достаточном количестве?
4. Адрес сервера лицензий в политиках указан (gpedit.msc, Конфигурация компьютера -> Административные шаблоны -> Компоненты Windows -> Службы удалённых рабочих столов -> Узел сеансов удалённых рабочих столов -> Лицензирование -> Использовать указанные серверы лицензирования удалённых рабочих столов, Включено, указано имя или IP хотя бы одного сервера лицензирования)?
5. Режим лицензирования в политиках указан? (gpedit.msc, Конфигурация компьютера -> Административные шаблоны -> Компоненты Windows -> Службы удалённых рабочих столов -> Узел сеансов удалённых рабочих столов -> Лицензирование -> Задать режим лицензирования удалённых рабочих столов, Включено, На устройство)?
6. Средство диагностики лицензирования удалённых рабочих столов ошибок не показывает?
Пригласить эксперта
-
Показать ещё
Загружается…
09 окт. 2023, в 11:38
1500 руб./за проект
09 окт. 2023, в 11:36
10000 руб./за проект
09 окт. 2023, в 11:29
30000 руб./за проект
Минуточку внимания
Доброго времени суток! Иногда при подключении у к серверу терминалов через клиент «Подключение к удаленному рабочему столу», может возникнуть ошибка: «Удаленный сеанс отключен, поскольку отсутствуют клиентские лицензии удаленного рабочего стола.» В данной статье я хочу описать причины возникновения данной ошибки и предложу возможные решения этой проблемы.
Итак, при подключению к серверу терминалов по протоколу RDP возникает ошибка: «Удаленный сеанс отключен, поскольку для данного компьютера отсутствуют клиентские лицензии удаленного рабочего стола.»
Данное сообщение можно увидеть в следующих случаях:
- Для службы удаленных рабочих столов на сервере терминалов не настроен сервер лицензирования.
- На сервере лицензирования не осталось клиентских лицензий доступа (CAL).
Рассмотрим эти ситуации более подробно, а также обозначим способы их устранения .
1. Настройка сервера лицензирования
Об установке сервера терминалов, а также о настройке сервера лицензирования удаленных рабочих столов и об активации лицензий можно прочитать в статьях:
- Установка сервера терминалов в Windows Server 2012 R2
- Установка сервера терминалов в Windows Server 2008 R2
Если прежде подключение через удаленный рабочий стол к серверу терминалов работало, то возможно данному клиенту была выдана временная лицензия на 180 дней, и срок этой лицензии уже истек. Для того чтобы заново получить временную лицензию необходимо на клиентской машине удалить из реестра сведения о действующей просроченной лицензии.
Запускаем редактор реестра. Сделать это можно выполнив команду regedit.exe («Пуск» — «Найти программы и файлы», либо «Пуск» — «Выполнить» или нажать комбинацию клавиш Win+R и вписать имя команды в окне «Выполнить»).
Настоятельно рекомендуется при любом изменении реестра делать его копию, для восстановления работоспособности Windows либо программ в случае возникновении проблем.
В запустившемся редакторе реестра необходимо удалить следующий каталог:
HKEY_LOCAL_MACHINE\Software\Microsoft\MSLicensing
После удаления, нужно обязательно запустить клиента «Подключение к удаленному рабочему столу» с правами «Администратора», для того чтобы в реестре прописалась новая временная лицензия.
2. Нехватка CAL-лицензий
Если на сервере лицензирования, который лицензирует данный сервер терминалов, закончились лицензии, необходимо дождаться пока кто-либо освободит лицензию, либо приобрести и активировать необходимое число CAL-лицензий.
Просмотреть общее, занятое и доступное количество лицензий можно в оснастке «Лицензирование сервера терминалов». Чтобы открыть данную оснастку в MS Windows Server 2008 нужно последовательно зайти в меню «Пуск» — «Администрирование» — «Службы удаленных рабочих столов» — «Диспетчер лицензирования удаленных рабочих столов»
Далее следует выбрать свой сервер лицензирования, нажать «Действие» и «Создать отчет». Этот отчет покажет:
- дату и время создания отчета;
- область отчета, например Domain, OU=Sales или All trusted domains;
- число Клиентских лицензий служб удаленных рабочих столов «на пользователя», установленных на сервере лицензирования;
- число Клиентских лицензий служб удаленных рабочих столов «на пользователя», выданных сервером лицензирования с учетом заданной области отчета.
Созданные отчеты отображаются на вкладке «Отчеты» в Диспетчере лицензирования удаленных рабочих столов.
Продолжение записи про ограничения сеанса в Windows Server 2019.
Бывают такие случаи, когда переключить режим лицензирования на «устройство», как я об этом писал тут не всегда помогает. Проблема может быть из-за временных лицензии. Я пару раз ловил такой баг, что терминальным пользователям не выдаются нормальные CAL, а временные кончились. Проблема решается простым удалением вообще всех лицензий и активацией по новой.
Открываем оснастку «Диспетчер лицензирования удаленных рабочих столов»
Далее нам необходимо деактивировать наш сервер лицензирования. Нажимаем правой кнопкой по серверу, нажимаем подробно -> Деактивировать сервер
Запускается мастер деактивации. Примерно такая же процедура, как активация. Проходим эту процедуру.
Далее открываем Службы и нам необходимо остановить службу Лицензирование удаленных рабочих столов
Или через cmd (запускаем от админа)
net stop TermServLicensing |
Далее необходимо открыть C:\Windows\System32\lserver через проводник и переносим файлик TLSLic.edb в какое-нибудь укромное место.
Запускаем службу Лицензирование удаленных рабочих столов
net start TermServLicensing |
Опять переходим в оснастку «Диспетчер лицензирования удаленных рабочих столов», проверяем, что все лицензии пропали.
Активируем сервер лицензирования.
Активируем по новый user cal.
Радуемся жизни.
Просмотры: 4 588
Если мой материал был полезен, то можете угостить меня кофе ☕️
Кроме очевидных достоинств сервер терминалов имеет ряд недостатков, к самым распространенным можно отнести сложности с организацией печати, особенно для удаленных клиентов, работающих с домашних устройств, а также затруднения в доступе к локальным файлам на сервере и наоборот. Также следует принимать во внимание, что терминальный доступ достаточно дорогое решение: кроме лицензий клиентского доступа CAL каждое подключение должно быть покрыто специальной лицензией Remote Desktop Services CAL.
Прежде всего откроем Диспетчер серверов и запустим Мастер добавления ролей и компонентов в котором выберем пункт Установка ролей или компонентов.
В разделе Выбор ролей сервера выбираем Службы удаленных рабочих столов:
Затем пролистываем мастер до раздела Выбор служб ролей, где выбираем Remote Desktop Session Host (Узел сеансов удаленных рабочих столов) и Лицензирование удаленных рабочих столов:
Продолжим установку и обязательно перезагрузим сервер. На этом установка необходимых ролей закончена, приступим к настройке. Начнем с Сервера лицензирования. Это совершенно отдельная сущность, работающая независимо от терминальных служб, которая может располагаться на любом из узлов сети и обслуживать несколько терминальных серверов.
Снова откроем Диспетчер серверов и перейдем в Средства — Remote Desktop Services — Диспетчер лицензирования удаленных рабочих столов, выберем из списка наш сервер и в меню правой кнопки мыши нажмем Активировать сервер.
В открывшемся мастере выбираем Метод подключения — Авто:
Заполняем требуемые данные о владельце сервера:
Поля на следующем экране можно оставить пустыми и перейти к активации, которая будет выполнена в автоматическом режиме. По завершении работы Мастер активации сервера запустит Мастер установки лицензий с помощью которого можно установить на Сервер лицензирования приобретенные вами Remote Desktop Services CAL.
Прежде всего следует выбрать программу лицензирования в рамках которой были получены лицензии, скорее всего это будет OpenLicense или пакет лицензий в розницу.
В зависимости от выбранной программы следующее окно может выглядеть по-разному, в нем потребуется ввести данные о приобретенной лицензии. Также может потребоваться указать тип (на устройство или на пользователя) и количество приобретенных лицензий.
После завершения работы мастера вы увидите в Диспетчере лицензирования установленный пакет лицензий. Если у вас несколько пакетов лицензий, то следует щёлкнуть правой кнопкой мыши на любой пакет лицензий и выбрать в выпадающем меню пункт Установить лицензии, там же можно выполнить Преобразование лицензий изменив их тип (на устройство или на пользователя), если используемая вами программа лицензирования это позволяет.
В отличие от Сервера лицензирования Узел сеансов удаленных рабочих столов (другими словами, терминальный сервер) при установке в рабочей группе не имеет никаких инструментов управления и для его настройки нам придется воспользоваться Локальными групповыми политиками. Для этого запустим оснастку gpedit.msc и перейдем в Конфигурация компьютера — Административные шаблоны — Компоненты Windows — Службы удаленных рабочих столов.
Если мы войдем внутрь раздела Узел сеансов удаленных рабочих столов, то увидим вполне привычный любому, кто хоть раз настраивал терминальный сервер, набор настроек. Мы не будем рассматривать их все, разберем только самые необходимые.
Начнем с раздела Лицензирование, в нем откроем политику Использовать указанные серверы лицензирования удаленных рабочих столов и укажем адрес или имя узла Сервера лицензирования, в нашем случае это этот же самый сервер.
Затем перейдем к политике Задать режим лицензирования удаленных рабочих столов и укажем там тип активированных нами лицензий. Будьте внимательны, при несоответствии режима лицензирования и типа активированных лицензий доступ пользователей к серверу может оказаться невозможен.
Следующий важный раздел — Безопасность. В нем включаем политику Требовать использования специального уровня безопасности для удаленных подключений где устанавливаем значение SSL. Это отключает использование небезопасного собственного шифрования RDP, но делает невозможным подключение устаревших клиентов.
Здесь же включим еще одну политику Требовать проверку подлинности пользователя для удаленных подключений путем проверки подлинности на уровне сети, это принудительно включит проверку подлинности клиента на уровне сети (NLA), т.е. без создания пользовательского сеанса, что увеличивает безопасность и снижает нагрузку на сервер. Если данная политика не задана, то используются локальные политики клиента, начиная с Windows 8 и Server 2012 проверка подлинности на уровне сети используется по умолчанию.
Остальные политики можете настраивать исходя из собственных потребностей, назначение большинства из них понятно из названия, также каждая из них содержит достаточно подробную справку.
Для того, чтобы пользователи имели возможность подключаться к терминальному серверу они должны быть участниками группы Пользователи удаленного рабочего стола.
Также доступ имеют пользователи группы Администраторы, но есть одна существенная тонкость. Для целей настройки и управления сервером разрешается два нелицензируемых удаленных сеанса, доступных группе Администраторы, выполнять работу на сервере в таких сеансах нельзя, это будет нарушением лицензионного соглашения.
Отсюда проистекает и правильный ответ на один не самый очевидный вопрос: следует ли включать администраторов в группу Пользователи удаленного рабочего стола? Конечно же нет, в противном случае вы должны будете обеспечить такое подключение лицензией, а в режиме лицензирования на устройство лицензия на компьютер администратора будет выдана автоматически.
Напоследок немного коснемся лицензий, если мы вернемся в Диспетчер лицензирования, то можем заметить, что количество выданных лицензий может не соответствовать количеству подключений. Поэтому коротко разберем, как происходит этот процесс. В режиме лицензирования на пользователя сервер лицензирования не контролирует количество фактических подключений и выдает каждому подключившемуся в этом режиме пользователю временную лицензию при условии, что активирована хотя бы одна лицензия. В данном случае контроль необходимого количества лицензий ложится на администратора.
В режиме на устройство каждый подключившийся первый раз клиент получает временную лицензию сроком на 90 дней, при повторном подключении сервер вместо временной лицензии выдает постоянную на срок от 52 до 89 дней, время действия лицензии выбирается случайным образом. На скриншоте ниже обратите внимание на срок действия выданных в один и тот же день лицензий.
Если устройство, на которое выдана лицензия вышло из строя или больше не является частью сети, то лицензию можно отозвать, для этого щелкните на лицензии правой кнопкой мыши и выберите действие Отозвать лицензию.
Однако следует принимать во внимание достаточно серьезные ограничения: нельзя отозвать более 20% лицензий в течении 75 дней.
Существует достаточно распространенная ошибка — несоответствие режима лицензирования активированным лицензиям. Здесь может быть два варианта развития событий:
- Режим лицензирования на устройство, лицензии на пользователя — каждый подключившийся клиент получит временную лицензию на 90 дней, по истечении этого срока доступ к серверу будет невозможен.
- Режим лицензирования на пользователя, лицензии на устройство — при наличии активированной лицензии любого типа клиент будет получать каждый раз новую временную лицензию, но такой режим работы будет однозначным нарушением правил лицензирования.
После завершения активации сервера лицензирования, который включен в ОС Microsoft, и установки лицензий выдается льготный период лицензирования продолжительностью 120 дней. По истечении данного срока достаточно заново активировать сервер лицензирования, чтобы сбросить счетчик дней и продолжить использование терминального сервера.
В данной статье мы рассмотрим способ сброса данного льготного периода.
1. Переходим в редактор реестра. Для этого нажимаем сочетание клавиш WIN+R и вводим regedit. В редакторе реестра открываем раздел:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\RCM\GracePeriod
2. После этого нажимаем правой кнопкой мыши на раздел GracePeriod и переходим в Разрешения
3. В появившемся окне нажимаем Дополнительно
4. Далее нам потребуется сменить владельца раздела и разрешить ему полный доступ. Для смены владельца нажмите на Изменить в поле Владелец.
5. В качестве владельца раздела установим группу Администраторы. Нажав кнопку Проверить имена можно сделать проверку наличия этой группы — если она существует, то имя группы станет подчеркнутым. Нажимаем ОК для сохранения изменений.
6. Для выхода из дополнительных параметров безопасности еще раз нажимаем ОК, чтобы сохранить внесенные изменения. Затем в окне разрешений выбираем группу Администраторы и ставим галочку для разрешения полного доступа. Также нажимаем ОК и возвращаемся в открытый раздел в редакторе реестра.
7. Теперь в редакторе реестра нам необходимо удалить параметр L$RTMTIMEBOMB_<…>. Для этого нажимаем на него правой кнопкой мыши и выбираем Удалить. Если на предыдущих шагах вы корректно сменили владельца и назначили права, то удаление произойдет без проблем.
8.Закрываем редактор реестра и перезагружаем сервер для применения изменений.
9. Для проверки того, что льготный период сбросился, вы можете воспользоваться командной строкой. Для этого нажмите сочетание клавиш WIN+R, введите cmd, после этого в открывшемся окне выполните команду:
wmic /namespace:\\root\CIMV2\TerminalServices PATH Win32_TerminalServiceSetting WHERE (__CLASS !=»») CALL GetGracePeriodDays
Сервер Remote Desktop Licensing используется для выдачи и отслеживания клиентских терминальных лицензий RDS (CAL). Согласно схеме лицензирования Microsoft все пользователи, или устройства, подключающиеся к графическому сеансу рабочего стола RDS, должны быть лицензированы. В этой статье мы рассмотрим, как установить и активировать роль сервера лицензирования удаленных рабочих столов на хосте с Windows Server 2022, 2019 и 2016, а также как установить клиентские лицензии RDS CAL.
Содержание:
- Установка роли Remote Desktop Licensing в Windows Server
- Активация сервера лицензий RDS на Windows Server
- Установка клиентских лицензий RDS CAL в Windows Server
- Настройка серверов RDSH на использование сервера лицензий RDS
- Управление клиентскими лицензиями CAL на RDS
Установка роли Remote Desktop Licensing в Windows Server
Компонент Remote Desktop Licensing можно установить на любом хосте Windows Server (не обязательно устанавливать его на одном из серверов фермы RDS). Если вы разворачиваете хост RD Licensing в домене AD, добавьте сервер во встроенную группу Terminal Server License Servers (иначе сервер не сможет выдать CAL типа RDS Per User пользователям домена).
Состав этой группы позволяют быстро найти все хосты с лицензиями RDS в домене.
Установите службу Remote Desktop Licensing через консоль Server Manager (Add Roles and Features -> Remote Desktop Services -> 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
Для управления службой RDS-Licensing используются две консоли:
- Remote Desktop Licensing Manager (
licmgr.exe
) - RD Licensing Diagnoser (
lsdiag.msc
)
Активация сервера лицензий RDS на Windows Server
Чтобы сервер лицензирования RDS мог выдавать лицензии клиентам, его необходимо активировать. Откройте консоль Remote Desktop Licensing Manager (
licmgr.exe
), щелкните ПКМ по имени вашего сервера и выберите пункт меню Activate Server.
В мастере активации сервера лицензирования RDS нужно выбрать, хотите ли вы активировать сервер через интернет, с помощью браузера или по телефону.
Далее нужно будет заполнить ряд информации о вашей организации (часть полей является обязательными).
Нажмите кнопку Finish. Должна появится надпись:
The license server has been successfully activated.
Щелкните в консоли по имени сервера и выберите 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.
Установка клиентских лицензий 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 ”.
Клиентские лицензия RDS которые вы используете должны быть совместимы с версией Windows Server, к которой подключается пользователь или устройство. Следующая таблица позволяет определить совместимость RDS CAL с версий Windows Server на сервере лицензирования RDS:
2008 R2 СAL | 2012 CAL | 2016 CAL | 2019 CAL | 2022 CAL | |
2008 R2 | Yes | No | No | No | No |
2012 | Yes | Yes | No | No | No |
2012 R2 | Yes | Yes | No | No | No |
2016 | Yes | Yes | Yes | No | No |
2019 | Yes | Yes | Yes | Yes | No |
2022 | Yes | Yes | Yes | Yes | Yes |
Примечание. RDS CAL для новых версий Windows Server нельзя установить на предыдущие версии WS. Например, вы не сможете установить 2022 RDS CAL на хост лицензирования Windows Server 2016. При попытке установить новые лицензии на старую версию Windows Server появится ошибка:
RD Licensing Manager The license code is not recognized. Ensure that you have entered the correct license code.
В консоли Remote Desktop Licensing Manager щелкните по серверу и выберите Install Licenses.
Выберите способ активации (автоматически, через веб или по телефону) и программу лицензирования (в нашем случае Enterprise Agreement).
В сеть утекло уже довольно много enterprise agreement номеров для RDS (4965437). Найти номера думаю, не составит проблемы. Обычно даже не нужно искать кряки или активаторы.
Следующие шаги мастера зависят от того, какой тип лицензирования выбран. В случае Enterprise Agreement нужно указать его номер. Если выбран тип лицензирования License Pack (Retail Purchase), нужно будет указать 25-символьный ключ продукта, полученный от Microsoft или партнера.
Укажите тип продукта (Windows Server 2022, 2019 или 2016), тип RDS CAL и количество терминальных лицензий, которые нужно установить на сервере.
Если нужно сконвертировать RDS лицензии User CAL в Device CAL (или наоборот), щелкните по пакету лицензий в консоли RD Licensing Manager и выберите Convert Licenses.
Настройка серверов 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.
Перейдите на вкладку RD Licensing, выберите тип лицензирования (Per user или Per device в зависимости от имеющихся лицензий) и адрес сервера RDS. Нажмите Add -> Ok.
Можно задать настройки сервера лицензирования 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).
Если вы установили 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.
Если сервер сервера лицензий 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.
Примечание. В нашем случае после указания нового сервера лицензирования, на 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.
Управление клиентскими лицензиями CAL на RDS
Рассмотрим несколько типовых инструментов администратора при управлении RDS CAL на сервере лицензирования.
Вы можете в консоли управления RD Licensing Manager отчет об использовании лицензий RDS CAL. Для этого в контекстном меню сервера выберите Create Report -> CAL Usage.
Вывести информацию по установленным и используемым лицензиям RDS CAL с помощью PowerShell:
Get-WmiObject Win32_TSLicenseKeyPack|select-object KeyPackId,ProductVersion,TypeAndModel,AvailableLicenses,IssuedLicenses |ft
Если у вас закончились свободные лицензии, вы можете отозвать ранее выданные лицензии RDS Device CAL для неактивных компьютеров из консоли (правой кнопкой по лицензии и выберите Revoke License.
Также вы можете отозвать 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 отозвать нельзя.