Настройка rds windows server 2016
В это статье мы рассмотрим процесс установки, настройки и активации роли сервера лицензирования удаленных рабочих столов (Remote Desktop Licensing) на базе Windows Server 2019 и 2016, а также процедуру установки и активации клиентских терминальных (RDS CAL).
Напомню, что после установки роли терминального сервера Remote Desktop Session Host, пользователи могут использовать его только в течении пробного периода 120 дней, после окончания которого возможность подключения к удаленному RDS серверу пропадает. Согласно схеме лицензирования Microsoft, все пользователи или устройства, подключающиеся к рабочему столу RDS сервера, должны быть лицензированы. Для учета и выдачи терминальных лицензий (RDS CAL) существует отдельная служба в роли RDS — Remote Desktop License Server.
Установка роли Remote Desktop Licensing в Windows Server 2019/2016
Вы можете установить компонент Remote Desktop Licensing на любом сервере домена, не обязательно устанавливать его на одном из серверов фермы RDSH.
Переда началом установки сервера лицензирования RDS нужно добавить данный хост (или убедиться, что у вас есть право на добавление) в доменную группу Terminal Server License Servers, иначе сервер не сможет выдать CAL типа RDS Per User пользователям домена.
Установить службу Remote Desktop Licensing можно через консоль Server Manager. Для этого в мастере Add Roles and Features выберите роль Remote Desktop Services.
В качестве компонента роли нужно выбрать службу Remote Desktop Licensing.
Осталось дождаться окончания установки роли.
Для управления службой RDS-Licensing используется консоль Remote Desktop Licensing Manager — licmgr.exe .
В Windows Server стандартные компоненты и роли проще всего установить с помощью PowerShell. Для установки службы лицензирования RDS и утилиты RD Licensing Diagnoser достаточно выполнить одну команду:
Install-WindowsFeature RDS-Licensing –IncludeAllSubFeature -IncludeManagementTools
Для вывода списка RDS служб, установленных на сервере, используйте команду:
Get-WindowsFeature -Name RDS* | Where installed
Активация сервера лицензий RDS в Windows Server
Чтобы сервер лицензирования RDS мог выдавать лицензии клиентам, его необходимо активировать. Для этого, откройте консоль Remote Desktop Licensing Manager (licmgr.exe), щелкните ПКМ по имени вашего сервера и выберите пункт меню Activate Server.
Запустится мастер активации сервера лицензирования RDS, в котором нужно будет выбрать желаемый метод активации. Если ваш сервер имеет доступ в Интернет, он может автоматически подключиться к серверам Microsoft. Если доступа в интернет с сервера нет, можно активировать сервер через веб браузер или по телефону.
Далее нужно будет заполнить ряд информации о вашей организации (часть полей является обязательными).
Осталось нажать кнопку Finish.
Щелкните в консоли по имени сервера правой клавишей и выбрать пункт Review Configuration. Здесь можно убедиться, что данный сервер лицензий RDS является активированным и может быть использован для активации RDS клиентов в домене.
Типы клиентских терминальных лицензий (RDS CAL)
Каждый пользователь или устройство, которое подключается к серверам Remote Desktop Session Host, должно иметь клиентскую лицензию (CAL — client access license). Есть два типа терминальных CAL.
- На устройство (PerDeviceCAL) – это постоянный тип лицензии, назначающийся компьютеру или устройству, которое подключается к RDS серверу более одного раза (при первом подключении устройства ему выдается временная лицензия). Данные лицензии не являются конкурентными, т.е. если у вас 10 лицензий Per Device, то к вашему RDS серверу смогут подключится всего 10 компьютеров. Актуальная OVL лицензия называется так: WinRmtDsktpSrvcsCAL 2019 SNGL OLV NL Each AP DvcCAL
- На пользователя (PerUserCAL) – такой тип лицензии позволяет одному пользователю подключиться к серверу RDS с любого количества компьютеров/устройств. Данный тип лицензий привязывается к учетной записи пользователя в Active Directory, но выдается не навсегда, а на определенный период времени. Лицензия выдается на срок от 52 до 89 дней (случайное число). Актуальная Open Value лицензия этого типа называется так: WinRmtDsktpSrvcsCAL 2019 SNGL OLV NL Each AP UsrCAL .
При попытке добавить новые RDS CAL 2019 на Windows Server 2016 появится ошибка:
Установка клиентских лицензий RDS CAL в Windows Server 2019/2016
Теперь на сервер лицензирования нужно установить приобретенный пакет терминальных лицензий (RDS CAL).
В консоли Remote Desktop Licensing Manager щелкните ПКМ по серверу и выберите Install Licenses.
Выберите способ активации (автоматически, через веб или по телефону) и программу лицензирования (в нашем случае Enterprise Agreement).
В сеть утекло уже довольно много enterprise agreement номеров для RDS (4965437). Найти номера думаю, не составит проблемы. Обычно даже не нужно искать кряки или активаторы.Следующие шаги мастера зависят от того, какой тип лицензирования выбран. В случае Enterprise Agreement нужно указать его номер. Если выбран тип лицензирования License Pack (Retail Purchase), нужно будет указать 25-символьный ключ продукта, полученный от Microsoft или партнера.
Укажите тип продукта (Windows Server 2016 или 2019), тип лицензии (RDS Per User CAL) и количество терминальных лицензий, которые нужно установить на сервере.
После этого, сервер может выдавать лицензии (RDS CAL) клиентам.
Вы можете сконвертировать RDS лицензии User CAL в Device CAL (и наоборот) с помощью контекстного меню Convert Licenses в консоли RD Licensing Manager.
Если у вас закончились свободные лицензии, вы можете отозвать ранее выданные лицензии RDS Device 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
$RevokePC = $TSLicensesAssigned | ? sIssuedToComputer -EQ $RevokedPCName
Отчеты об использовании лицензий CAL на RDS
В консоли управления CAL лицензиями RDS можно сформировать отчет по использованию лицензий. Для этого в контекстном меню сервера выберите Create Report -> CAL Usage.
Однако, я предпочитаю использовать PowerShell для построения отчетов об использовании RDS CAL.
Следующий скрипт покажет оставшееся количество лицензий во всех паках RDS CAL:
Import-Module RemoteDesktopServices -ErrorAction Stop
Set-Location -Path 'rds:' -ErrorAction Stop
$licenses = (Get-Item -Path RDS:\LicenseServer\LicenseKeyPacks\* | Where-Object Name -Like "-Per User-*").Name
$total=0;
$issued=0;
foreach ($license in $licenses) $count=(Get-Item -Path RDS:\LicenseServer\LicenseKeyPacks\$license\TotalLicenses).CurrentValue
$total= $total + $count
$count2=(Get-Item -Path RDS:\LicenseServer\LicenseKeyPacks\$license\IssuedLicensesCount).CurrentValue
$issued= $issued + $count2
>
$available = $total - $issued
Write-Host "Total Licenses available: $available"
Вы можете запускать этот PowerShell скрипт через Zabbix и генерировать алерт, если оставшееся количество лицензий меньше, например, 5.
Следующий скрипт позволит получить таблицу по использованию Per User лицензий:
Import-Module RemoteDesktopServices -ErrorAction Stop
Set-Location -Path 'rds:' -ErrorAction Stop
$path = “C:\Logs\Reports\RDS_CAL_Report.csv”
$fileName = (Invoke-WmiMethod Win32_TSLicenseReport -Name GenerateReportEx).FileName
$fileEntries = (Get-WmiObject Win32_TSLicenseReport | Where-Object FileName -eq $fileName).FetchReportEntries(0,0).ReportEntries
$objArray = @()
foreach($entry in $fileEntries)$objArray += $entry | select User, ProductVersion, CALType, ExpirationDate
$objArray[-1].User = $objArray[-1].User.Split('\') | select -Last 1
$time = $objArray[-1].ExpirationDate.Split('.') | select -first 1
$objArray[-1].ExpirationDate = [datetime]::ParseExact($time, "yyyyMMddHHmmss", $null)
>
$objArray | Export-Csv -Path $path -Delimiter ',' -NoTypeInformation
Удаление RDS CAL с сервера лицензирования
Если вы хотите перенести свой набор лицензий RDS CAL с одного сервера лицензирования Remote Desktop на другой, вы можете удалить установленные лицензии с сервера лицензирования с помощью PowerShell.
Следующая команда выведет список установленных пакетов RDS лицензий на сервере:
Get-WmiObject Win32_TSLicenseKeyPack|select-object KeyPackId,ProductVersion,TypeAndModel,AvailableLicenses,IssuedLicenses |ft
Найдите значение KeyPackId для пакета RDS CAL, который нужно удалить и выполите команду:
wmic /namespace:\\root\CIMV2 PATH Win32_TSLicenseKeyPack CALL UninstallLicenseKeyPackWithId KEYPACKID
Также вы можете полностью удалить все наборы CAL, пересоздав базу лицензий RDS. Для этого остановите службу Remote Desktop Licensing:
Переименуйте файл C:\Windows\System32\lserver\TLSLic.edb в C:\Windows\System32\lserver\TLSLic.bak и запустите службу:
После этого все RDS CAL лицензии будут удалены, и вы должны активировать их заново.
Настройка серверов RDSH на использование сервера лицензий RDS
После активации службы сервера лицензирования RDS можно перенастроить терминальные сервера RD Session Host на получение лицензий с данного сервера. Выбрать тип лицензий и указать имя терминального сервера из графического интерфейса Server Manager, с помощью PowerShell или групповой политики.
Чтобы изменить адрес сервера лицензирования на хосте RDS, откройте Server Manager -> Remote Desktop Services -> Collections. В правом верхнем меню “Tasks” выберите “Edit Deployment Properties”.
В настройках перейдите на вкладку RD Licensing, выберите тип лицензирования (Select the Remote Desktop licensing mode) и сервер RDS лицензий (Specify a license server). Нажмите Add -> Ok.
Вы можете изменить адрес сервера лицензирования RDS и тип CAL с помощью PowerShell:
$obj = gwmi -namespace "Root/CIMV2/TerminalServices" Win32_TerminalServiceSetting
Затем укажите желаемый тип лицензирования:
Теперь можно указать имя сервера лицензирования RDS:
И проверить настройки:
Если вы хотите назначить настройки сервера лицензирования RDS через групповые политики, нужно создать новую GPO и назначить ее на OU с RDS серверами (либо вы можете указать имя сервера лицензирования RDS с помощью локального редактора групповых политик – gpedit.msc ). Настройки лицензирования задаются в разделе: Computer Configuration -> Policies -> Admin Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Session Host -> Licensing.
В этом разделе имеется 2 интересующие нас политики:
- Use the specified Remote Desktop license servers – здесь указывается адрес сервера лицензирования RDS;
- Set the Remote Desktop licensing mode – выбор метода лицензирования (типа клиентских лицензий – RDS CAL).
- 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). Утилиту RD Licensing Diagnoster можно установить на серверах с ролью RDSH через (Server Manager: Features -> Remote Server Administration Tools -> Role Administration Tools -> Remote Desktop Services Tools -> Remote Desktop Licensing Diagnoser Tools).
Если сервер RDSH не настроен на использование сервера лицензий RDS, в консоли Licensing Diagnoser будут присутствовать следующие предупреждения:
alert] Если вы установили RDSH на ознакомительно редакции Windows Server Evaluation, не забудьте перевести его в полноценную версию согласно инструкции. Без конвертации службы RDSH на таком хосте будут работать только 120 дней даже после того, как вы нацелите его на активированный сервер лицензий RDS.[/alert]
Службы удаленных рабочих столов (RDS) – это предпочтительная платформа для создания решений виртуализации для любых нужд конечных пользователей, включая доставку отдельных виртуализированных приложений, обеспечение безопасного доступа к мобильным и удаленным рабочим столам и предоставление конечным пользователям возможности запускать свои приложения и рабочие столы из облака.
Службы удаленных рабочих столов предлагают гибкость развертывания, экономическую эффективность и расширяемость — все это обеспечивается различными вариантами развертывания, включая Windows Server 2016 для локальных развертываний, Microsoft Azure для облачных развертываний и надежный набор партнерских решений.
В зависимости от среды и параметров можно настроить решение службы удаленных рабочих столов для виртуализации на основе сеансов, в качестве инфраструктуры виртуальных рабочих столов (VDI) или в виде комбинации из двух:
- Сеансовая виртуализация: используйте вычислительные возможности Windows Server, чтобы обеспечить экономически эффективную многосессионную среду для повседневных рабочих нагрузок своих пользователей.
- Архитектура виртуальных рабочих столов (VDI) : Используйте клиент Windows, чтобы обеспечить высокую производительность, совместимость приложений и осведомленность, которые пользователи ожидают от своего рабочего стола Windows.
Эти средства виртуализации располагают дополнительной гибкостью, позволяющей публиковать для своих пользователей:
- Рабочие столы: Предоставьте своим пользователям все возможности рабочего стола с помощью различных приложений, которые вы устанавливаете и управляете ими. Идеально подходит для пользователей, которые используют эти компьютеры в качестве основных рабочих станций или которые приходят от тонких клиентов, таких как служба MultiPoint.
- Удаленные приложения: Укажите отдельные приложения, размещенные или запускаемые на виртуальной машине, при этом они выглядят так, словно они работают на рабочем столе пользователя в качестве локальных приложений. Приложения имеют собственный вход на панель задач, а также могут меняться и перемещаться по мониторам. Идеально подходит для развертывания и управления ключевыми приложениями в защищенной удаленной среде, позволяя пользователям работать с собственными рабочими столами и настраивать их.
В средах, где эффективность затрат имеет решающее значение и вы хотите расширить преимущества развертывания полных рабочих столов в среде виртуализации на основе сеансов, вы можете использовать службы MultiPoint для обеспечения наилучшего соотношение цены и качества.
Благодаря этим опциям и настройкам можно гибко развертывать рабочие столы и приложения, необходимые вашим пользователям, удаленно, безопасно и экономически эффективно.
Дальнейшие действия
Ниже приведены некоторые шаги, которые помогут вам лучше понять службы удаленных рабочих столов и даже начать развертывание собственной среды:
Установка самой оси Microsoft Windows Server 2016 в рамках данной статьи рассматриваться не будет, только отдельно сама установка терминального сервера. На будущем терминальном сервере открываем диспетчер сервера через Панель управления ( Win + R Control) — Администрирование — Диспетчер серверов (Server Manager) или через команду "Выполнить" ( Win + R ServerManager). После чего переходим по вкладке Локальный сервер (Local Server)
Открываем мастер добавления ролей и компонентов, жмём далее, в типе установки отмечаем радиокнопкой пункт Установка ролей или компонентов (Role-based or feature-based installation), выбираем сервер, жмём далее, чекбоксом отмечаем Службы удаленных рабочих столов. В службах ролей отмечаем для установки две службы: Лицензирование удаленных рабочих столов (Remote Desktop Licensing) и Узел сеансов удаленных рабочих столов (Remote Desktop Session Host), жмём далее и потом установить. Дожидаемся конца установки и перезагружаем сервер, если это не было сделано автоматически по завершению установки.
Активация лицензии удалённых рабочих столов
Средства - Remote Desktop Services - Диспетчер лицензирования удаленных рабочих столов (RD Licensing Manager). Раскрываем древо, правой кнопкой по нашему серверу вызываем выпадающее меню и выбираем пункт активировать сервер.
В мастер активации сервера вначале заполняем сведения об организации, а после устанавливаем саму лицензию. При выборе программы лицензии указываем Другое соглашение, и указываем ключи активации купленной лицензии 6565792 (или любой другой. Для тестового сервера нагуглите за 2 минуты:"номер соглашения windows server 2016". Ключ 6565792 - также является результатом выдачи поисковика google). Выбираем версию продукта Windows Server 2016и тип лицензии Клиентская лицензия служб удаленных рабочих столов (на пользователя). Готово!
Но Средство диагностики лицензирования удаленных рабочих столов сообщает нам, что сервер лицензирования не включён. Чтож, поправим это дело через политики. Вызываем командное меню "Выполнить" Win + R gpedit.msc. Переходим: Конфигурация компьютера (Computer Configuration) - Административные шаблоны (Administrative Templates) - Компоненты Windows (Windows Components) - Службы удаленных рабочих столов (Remote Desktop Services) - Узел сеансов удаленных рабочих столов (Remote Desktop Session Host) - Лицензирование (Licensing).
Тут поправим Использовать указанные серверы лицензирования удаленных рабочих столов (Use the specified Remote Desktop license servers) и Задать режим лицензирования удаленных рабочих столов (Set the Remote licensing mode).
Обновляем сведения в оснастке Средство диагностики лицинзирования удаленных рабочих столов. Теперь всё ок!
Изменение стандартного порта подключения
Стандартный порт для RDP подключения: 3389
Открываем реестр ( Win + R regedit), переходим по ветке:
Находим ключ PortNumber, меняем систему исчисления на Десятичную и задаем необходимый номер порта. Так же это можно сделать через командную строу:
Возможные проблемы
Подключение было запрещено
Возможно вам будет полезна статья о том как из Windows 10 сделать Терминальный сервер.
CredSSP
Ещё можете столкнуться с такой вот ошибкой: An authentication error has occurred. The function is not supported. This could be due to CredSSP encryption oracle remediation.
Отсутствуют доступные серверы лицензирования удаленных рабочих столов
После настройки сервера всё шло хорошо, но только 120 дней. Потом случилось следущее:
Удаленный сеанс отключен, поскольку отсутствуют доступные серверы лицензирования удаленных рабочих столов. Обратитесь к администратору сервера
А это означает что у вас установлен ключ льготного периода (grace period licensing), который необходимо удалить. Для этого вам нужно залогиниться на сервер локально. Где удалять ключ льготного периода? В реестре под именем L$RTMTIMEBOMB. Идём по ветке реестра:
Но не тут то было! У вас недостаточно прав, но и это нас не остановит. Жмём правой кнопкой мыши и меняем владельца на ветку реестра и даём полные права самому себе, после чего спокойно удаляем эту гадость). Если не поможет, то советую переустановить роли и компоненты.
Установим роли терминального сервера на Windows Server 2016 и лицензируем.
- Подготовка Windows Server 2016.
- Установка роли терминального сервера.
- Лицензирование терминального сервера.
Ссылки
Подготовка Windows Server 2016
Сервер разворачиваю на базе виртуальной машины VMware. Устанавливаем ОС:
Ссылка на инструкцию по установке ОС приведена выше. ОС установлена.
Не забываем установить VMware Tools.
Тип сетевухи E1000E нежелателен.
Меняем его на VMXNET 3.
Активируем Windows Server 2016.
Установка роли терминального сервера
Before You Begin пропускаем. Next.
Installation Type. Для установки сервиса удаленных рабочих столов предусмотрен специальный мастер Remote Desktop Services installation, выбираем его, Next.
Deployment Type. Для одного сервера, выбираем Quick Start. Next.
Deployment Scenario. Наши пользователи будут подключаться к серверу (собственным сессиям на сервере), а не к собственным виртуальным машинам. Выбираем Session-based desktop deployment. Next.
Server Selection. Выбираем текущий сервер. Next.
На наш сервер будут добавлены следующие серверные роли:
- RD Connection Broker — контроль подключений пользователей, определяет для какого пользователя на каком сервере будет открыта сессия или запущено приложение.
- Web Access — доступ к приложениям через веб браузер.
- RD session Host — сервер, на котором будут опубликованы приложения и на который пользователи смогут подключаться через удаленный рабочий стол.
Позже мы добавим на сервер ещё одну роль:
Установим галку, чтобы сервер при необходимости перезагружался. Deploy.
Начинается автоматическая установка ролей. Сервер перезагружается.
Даже какие-то обновления подтянулись.
После перезагрузки и установки первой роли включается триальный период работы терминального сервера 120 дней.
Первые три роли установлены. Close.
Выбираем QuickSessionCollection, проверяем, что пользователям дан доступ к терминальному серверу. При необходимости можно создать свою коллекцию.
По умолчанию в группе все доменные пользователи.
Редактирую, даю доступ нужной группе пользователей и переименовываю коллекцию.
Перезагружаемся и переходим к лицензированию.
Лицензирование терминального сервера
Устанавливаем RD Licensing сервис, нажав на зелёный плюсик.
Следуем инструкциям, сложностей не должно быть.
Выбираем текущий сервер, Next.
Начинается установка роли RD Licensing.
Установка роли RD Licensing успешно завершена. На всякий случай перезагружаю сервер.
Запускаем Диспетчер лицензирования удалённых рабочих столов (Remote Desktop Licensing Manager).
Выбираем наш сервер, правой кнопкой — активировать.
Открывается окно активации.
Жмем Next на первой странице мастера.
Выбираем метод соединения Web Browser. Next.
Получаем код продукта который нам понадобится для активации (Product ID).
Выбираем "Activate a license server". Next.
Вводим Product ID полученный ранее, организацию и любую страну или регион. Next.
Если все сделано правильно, то мы получим необходимый код сервера лицензирования. На вопрос "Do you wish to install client access licenses now on the license server with this product ID?" отвечаем "Yes" и пока возвращаемся к терминальному серверу, к текущему окну ещё вернёмся.
Вводим код в открытом мастере, жмём Next.
Устанавливаем галку "Start Install Licenses Wizard now". Next.
Открывается мастер установки лицензий. Next.
Нас просят ввести license key pack ID. Возвращаемся к браузеру.
Вставляем License Server ID, в качестве программы лицензирования, по идее он уже должен сюда переместиться из предыдущего окна. License Program выбираем Enterprise agreement. Указываем компанию и страну. Next.
Выбираем тип продукта: Windows Server 2016 Remote Desktop Services Per User client access license. Указываем количество лицензий. Обязательно соглашение Enterprise agreement, один из данных номеров ищем в Интернете… Next.
Ну вот мы и получили нужные нам клиентские лицензии.
Копируем ключ и вводим его в мастер. Next.
Возвращаемся к Remote Desktop Licensing Manager. Сервер активирован. Лицензии получились, но сервер светится желтым:
Сервер не является членом группы терминальных серверов в Active Directory. Нажмём Add to Grоup.
Сервер добавлен в группу терминальных серверов в Active Directory.
Сервер лицензий позеленел, на первый взгляд всё в порядке.
Запускаем Remote Desktop Licensing Diagnoser.
The licensing mode for Remote Desktop Session Host server is not configured.
Откроется Local Group Policy Editor.
Раскрываем Computer Configuration > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Licensing.
Редактируем Set the Remote Desktop licensing mode.
Включаем — Enabled. В поле "Specify the licensing mode for the RD Session Host server" устанавливаем значение Per Device или Per User в зависимости от установленных вами лицензий. В моём случае Per User. OK.
Редактируем Use the specified Remote Desktop license servers.
Включаем — Enabled. В поле "License server to use" прописываем сервер, с которого получать лицензии, в моём случае "localhost". OK.
Перезагружаем сервер. Запускаем Remote Desktop Licensing Diagnoser.
Читайте также: