Эта большая инструкция посвящена особенностям установки, настройки и эксплуатации фермы терминальных серверов на базе роли Remote Desktop Services (RDS) в Windows Server. Статья поможет вам развернуть службы удаленных столов на Windows Server 2022, 2019 и 2016 в домене Active Directory.
Содержание:
- Компоненты Remote Desktop Services в Windows Server 2022/2016/2016/2012R2
- Создаем новую конфигурацию Remote Desktop Services в Windows Server
- Создаем коллекции Remote Desktop Services в Windows Server
- Публикация RemoteApp в Remote Desktop Services
- Настройка фермы Remote Desktop services с помощью PowerShell
Компоненты Remote Desktop Services в Windows Server 2022/2016/2016/2012R2
В состав роли RDS в Windows Server входя следующие компоненты:
- Remote Desktop Session Host (RDSH) – узлы сеансов RDS. Основные рабочие лошадки фермы RDS, на которых работают приложения пользователей;
- Remote Desktop Connection Broker (RDCB) – посредник RDS подключений. Используется для управления фермой RDS, распределения нагрузки, обеспечивает переподключение пользователей к своим сеансам, хранит коллекции RDS и опубликованные приложения RemoteApps;
- Remote Desktop Gateway (RDGW) – обеспечивает безопасный доступ к сервисам RDS из Интернета;
- RD Web Access (RDWA) – веб интерфейс для доступа к рабочим столам, программам RemoteApp;
- Remote Desktop Licensing (RD Licensing) — служба лицензирования, управляет RDS лицензиями (CAL) пользователей.
В нашем небольшом стенде будут всего три сервера со следующим распределением ролей
-
msk-rds1.winitpro.ru
— RDSH -
msk-rds2.winitpro.ru
– RDSH -
msk-rdsman.winitpro.ru
– RDSH, RDWA, RDCB, RD License
Предварительные требования, которые нужно выполнить перед созданием RDS фермы:
- Установите одинаковую версию Windows Server на все сервера, настроить их, и добавить в один домен AD;
- Откройте консоль ADUC (
dsa.msc
) и переместите все хосты с ролью RDSH в одну OU в AD. Так будет удобнее применять единые настройки через GPO; - Создайте в домене группу для RDSH серверов (например,
msk-rdsh
) и добавьте в нее все хосты; - Если вы хотите использовать диски User Profile Disk (UPD) для хранения профилей пользователей RDS (или перемещаемые профили), нужно создать на файловом сервере сетевой каталог, в котором они будут хранится (желательно расположить этот каталог на отказоустойчивом файловом кластере Windows Server). Предоставьте права Full Control на этот сетевой каталог для группы
msk-rdsh
.
Создаем новую конфигурацию Remote Desktop Services в Windows Server
Рассмотрим, как создать и настроить RDS конфигурацию с помощью графического интерфейса Server Manager.
Откройте Server Manager и добавьте все планируемые RDS сервера в консоль. Щелкните All Server -> Add servers.
Теперь в меню Server Manager выберите Add Roles and Features -> Remote Desktop Services installation -> Standard deployment –> Session-based deployment.
Режим Quick Start используется для развертывания всех компонентов RDS на одном сервере. В RDS ферме минимум может быть один сервер, который совмещает все роли RDS (RD Session Host, RD Web Access и RD Connection broker). Но такая конфигурация не обеспечивает отказоустойчивость и балансировку нагрузки в службах удаленных рабочей столов Windows Server.
Далее нужно указать, как вы хотите распределить роли RDS по вашим серверам. В мастере построения фермы RDS нужно выбрать сервера для соответствующих ролей. В моем случае я хочу построить такую конфигурацию:
- RD Connection Broker –
msk-rdsman
- RD Web Access —
msk-rdsman
- RD Session hosts —
msk-rdsman, msk-rds1, msk-rds2
Вы можете распределить RDS роли по серверам в любой другой конфигурации.
Поставьте галку Restart destination server automatically if required и нажмите кнопку Deploy. Дождитесь установки ролей RDS на всех серверах.
Итак, ваша ферма RDS создана.
Следующий этап установка и настройка сервера лицензирования RDS. Вы можете установить роль RD Licensing на один из серверов в вашей ферме или использовать существующий в домене сервер лицензирования RDS. Подробная инструкция по установке, настройке и активации роли RD Licensing доступа по ссылке.
Для управления вашим развертыванием RDS нужно перейти в раздел Server Manager -> Remote Desktop Services. На вкладке Overview показана текущая конфигурация RDS фермы.
Чтобы изменить настройки RDS фермы выберите Tasks -> Edit Deployment Properties в разделе Deployment Overview.
Здесь можно изменить:
- Параметры RD Gateway;
- Адрес сервер сервера лицензирования и тип пользовательских лицензий RDS CAL (per user/per device);
- Посмотреть URL адреса RD Web Access;
- Добавить SSL сертификаты для служб RDS (в инструкции мы пропустим этот пункт).
Для построения отказоустойчивой фермы Remote Desktop Services нужно обеспечить высокую доступность роли RD Connection Broker. Это достигается за счет запуска нескольких экземпляров RDCB (Active/Active) на разных серверах с общей базой данных SQL, в которой хранится конфигурация брокера подключений. Для обеспечения высокой доступности SQL базы RDCB ее можно размесить в группе высокой доступности SQL Server Always On. Ранее мы публиковали подробный гайд по настройке RDS Connection Broker с высокой доступностью.
Создаем коллекции Remote Desktop Services в Windows Server
Следующий этап настройки – создание коллекций сеансов RDS. Коллекции Remote Desktop позволяют разделить хосты в ферме RDSH на отдельные группы или создать разный набор настроек и доступных приложений Remote App для разных групп пользователей.
Перейдите в раздел Collections, выберите Edit -> Create Session Collection.
Здесь нужно задать:
- Имя коллекции RDS:
rds-Msk-Managers
- Выберите какие хосты RDSH будут обслуживать пользователей коллекции (один RDSH хост может находиться в одной коллекций; не рекомендуется объединять в одну коллекцию сервера с разными версиями Windows Server);
- На вкладке User Groups указываются группы пользователей, которым разрешено подключаться к коллекции. Уберите из групп Domain users и добавьте вашу группу (msk-Managers);
- На вкладке User Profile Disk нужно указать, хотите ли вы использовать формат UPD для хранения профилей пользователей (Enable user profile disks). В поле Location of user profile disks укажите UNC путь к сетевому каталогу(например,
\\msk-fs01\mskrds_upd
), в котором будут хранится профили пользователей в форматер UPD виртуальных дисков (в этом случае при входе на любой сервер коллекции RDS, пользователь будет всегда загружать свой профиль) и максимальный размер диска (20 Гб по умолчанию); - Нажмите Create чтобы создать новую RDS коллекцию;
- Убедитесь, что в указанном каталоге создался UPD файл с шаблоном профиля пользователя UVHD-template.vhdx.
Чтобы задать параметры коллекции RDS, выберите ее и нажмите Tasks -> Edit Properties.
Здесь можно изменить базовые параметры коллекции (имя, описание, группы доступа) и ряд других важных настроек.
В разделе Session можно задать параметры переподключения/ автоматического отключения простаивающих RDP сессий (подробнее рассматривалось в статье Настройка таймаутов для RDP сессий).
На вкладке Security можно выбрать настройки безопасности (Negotiate, RDP Security level или SSL/TLS) и шифрования (Low, High, Client compatible или FIPS compliant) для сессий RDP. Здесь также можно включить/отключить Network Level Authentication для RDP.
В секции Load Balancing можно изменить веса (
Relative Weight
) RDSH хостов в вашей ферме. Если характеристики серверов (RAM, CPU) в коллекции сильно отличаются, нужно задать меньший вес для менее производительных серверов. В этом случае RDCB будет распределять сессии пользователей по серверам в зависимости от их веса.
На вкладке Client Settings можно указать, какие устройства пользователям разрешено пробрасывать в RDP сессию. Например, вы можете разрешить/запретить пробрасывать с локального компьютера пользователя в RDS сеанс принтера, сетевые диски, аудио устройства, буфер обмена.
В разделе User Profile Disks можно более тонко настроить параметры UPD профилей пользователей. Можно исключить из синхронизации определенные папки или файлы. Это позволит уменьшить размер профиля UPD в сетевом каталоге и увеличить скорость загрузки профиля (не забывайте, что он загружается по сети из сетевой папки при входе пользователя).
Настройка и эксплуатация UPD обычно гораздо проще, чем использование перемещаемых профилей или folder redirection. Один UPD профиль не может использоваться в разных коллекциях RDS.
Для уменьшения размера UPD диска пользователя можно использовать стандартный PowerShell командлет
Resize-VHD
, используемый для изменения размеров виртуальных VHDX дисков Hyper-V.
В секции HOST SERVERS коллекции RDS можно перевести любой сервер фермы в режим обслуживания RDSH (Drain Mode). Для этого щелкните по нему и выберите Do not allow new connection. В результате Connection Broker не будет отправлять новые подключения пользователей на этот сервер. В таком режиме вы можете спокойно установить обновления Windows или обновлять на сервере приложения, не затрагивая пользователей.
Здесь же можно добавить/удалить RDS Host из коллекции.
Если RDSH хост вышел из строя и не доступен, его можно корректно удалить из фермы Remote Desktop Services по этой инструкции.
Публикация RemoteApp в Remote Desktop Services
RemoteApps – это опубликованные для пользователей приложения на RDS серверах. Благодаря RemoteApp можно использовать приложения, установленные на терминальном RDSH сервере так, как будто оно запущено непосредственно на компьютере пользователя. Пользователь не видит всего рабочего стола Windows Server RDS и работает только с теми программами, которые опубликовал для него администратор. На компьютере пользователя будет отображаться только окно запущенной на RDS программы.
Если вы не создаете RemoteApp, пользователи будут работать непосредственно на собственных рабочих столах на Windows Server. Поэтому не забудьте скопировать все необходимые пользователю ярлыки приложений в папку C:\Users\Public\Desktop. Файлы из этой папки будут отображаться на рабочем столе всех пользователей. Если вы устанавливаете на RDSH пакет MS Office 365, обратите внимание что Office нужно разворачивать в режиме SharedComputerLicensing.
RemoteApp приложения создаются в настройках коллекций RDS. Выберите пункт Tasks -> Publish RemoteApp Programs в секции REMOTEAPP PROGRAMS.
Windows отобразит все приложения, установленные на текущем сервере. Можете выбрать одно из них. Если вашего приложения нет в списке, но оно установлено на других хостах RDS, нажмите кнопку Add и укажите полный путь к исполняемому файлу приложения (exe, bat, cmd и т.д.).
Опубликуйте приложение RemoteApp.
Затем в настройках RemoteApp можно указать дополнительные параметры приложения.
- Нужно ли показывать опубликованное RemoteApp приложение в веб интерфейсе RD Web Access;
- Задать параметры запуска (аргументы) приложения (Command-line Parameters -> Always use the following command-line parameters);
- На вкладке User Assignment можно дополнительно ограничить каким группам пользователей разрешено запускать приложение.
Если вы хотите изменить иконку опубликованного RemoteApp, нужно открыть следующую папку на сервере с ролью RDS Connection Broker:
C:\Windows\RemotePackages\CPubFarms\rds-Msk-Managers\CPubRemoteApps
Замените иконку приложения другим ico файлом.
Теперь пользователь может запустить RemoteApp приложение из RD Web Access (
https://msk-rdsman.wintpro.ru/RDWeb
) или с помощью специального RDP файла.
Для запуска опубликованного приложения RemoteApp, нужно добавить в RDP файл такие строки:
remoteapplicationmode:i:1 remoteapplicationname:s:putty remoteapplicationprogram:s:"C:\Tools\putty.exe" disableremoteappcapscheck:i:1 alternate shell:s:rdpinit.exe
Несколько полезных мелочей для удобной эксплуатации фермы RDS:
- Для роли RDWeb можно настроить поддержку HTML5, это позволит пользователям подключаться к RDS серверам из любого браузера и ОС даже без клиента RDP;
- На веб сервере RD Web Access можно опубликовать ссылку на смену истекшего пароля пользователя (по умолчанию при включенном NLA вы не сможете аутентифицироваться на RDSH с истекшим паролем пользователя Active Directory);
- Инструкция для пользователей по смене пароля в RDP сессии;
- Администратор может использовать теневые подключения RD Session Shadow для подключения/просмотра рабочего стола сеанса пользователя на сервере RDS;
- Чтобы быстро найти, на каких RDS серверах есть сессии определенного пользователя, можно использовать PowerShell:
Import-Module RemoteDesktop
Get-RDUserSession -ConnectionBroker msk-rdsman.winitpro.ru | where {$_.UserName -eq "a.ivanov"} | Select HostServer - Вы можете использовать PowerShell скрипты для просмотра и анализа логов RDP подключений пользователей к серверам RDS;
- Для дополнительной защиты можно настроить двухфакторную аутентификацию (2FA) пользователей на RDS серверах Windows с помощью сторонних средств.
Настройка фермы Remote Desktop services с помощью PowerShell
Если вы четко представляете себе концепцию RDS фермы, вы можете быстро разворачивать RDS конфигурацию с помощью PowerShell.
Следующие PowerShell команды для создания RDS фермы лучше запускать с другого на другом сервера, т.к. управляемые RDS хосты придется перезагружать.
Задайте имена серверов в вашей ферме RDS. В этом примере я установлю роли RDCB и RDS Licensing на отдельный сервер (в дальнейшем рекомендуется настроить отказоустойчивую конфигурацию RDCB).
$RDSH1 = "msk-rds1.winitpro.ru"
$RDSH2 = "msk-rds2.winitpro.ru"
$RDSCB = "msk-rdcb.winitpro.ru"
$RDSGW = "msk-rdsgw.winitpro.ru"
Import-Module RemoteDesktop
Установите RDS роли на сервера:
Add-WindowsFeature –ComputerName $RDSH1, $RDSH2 -Name RDS-RD-Server –IncludeManagementTools
Add-WindowsFeature –ComputerName $RDSCB -Name RDS-Connection-Broker -IncludeManagementTools
Add-WindowsFeature –ComputerName $RDSGW -Name RDS-Web-Access, RDS-Gateway –IncludeManagementTools
Перезагрузите все хосты:
Restart-Computer -ComputerName $RDSH1,$RDSH2,$RDSCB,$RDSGW
Создайте новый инстанс RDSessionDeployment:
New-RDSessionDeployment -ConnectionBroker $RDSCB -SessionHost $RDSH1,$RDSH2 –Verbose
Добавить в ферму сервера RDWA и RDGW:
Add-RDServer -Server $RDSGW -Role RDS-WEB-ACCESS -ConnectionBroker $RDSCB
Add-RDServer -Server $RDSGW -Role RDS-GATEWAY -ConnectionBroker $RDSCB -GatewayExternalFqdn "rds.winitpro.ru"
Текущее распределение RDS ролей по серверам фермы можно вывести так:
Get-RDServer -ConnectionBroker $RDSGW
Установка роли лицензирования RDS:
Add-WindowsFeature –ComputerName $RDSCB -Name RDS-Licensing, RDS-Licensing-UI
Задайте режим лицензирования PerUser:
Invoke-Command -ComputerName $RDSCB -ScriptBlock {Set-RDLicenseConfiguration -Mode PerUser -LicenseServer $RDSCB -ConnectionBroker $RDSCB}
Add-RDServer -Server $RDSCB -Role RDS-LICENSING -ConnectionBroker $RDSCB
Добавить сервер лицензирования в доменную группу с помощью Add-ADGroupMember:
Add-ADGroupMember "Terminal Server License Servers" -Members "msk-rdcb$"
Если у вас есть сертификат для RDS можно его добавить в конфигурацию фермы (можно использовать бесплатный SSL сертификат Let’s Encrypt для вашего RDS хоста):
Path = "C:\ps\RDSCert.pfx"
$Password = ConvertTo-SecureString -String "CertPAssddr0w11-" -AsPlainText -Force
Set-RDCertificate -Role RDGateway -ImportPath $Path -Password $Password -ConnectionBroker $RDSCB -Force
Set-RDCertificate -Role RDWebAccess -ImportPath $Path -Password $Password -ConnectionBroker $RDSCB -Force
Set-RDCertificate -Role RDPublishing -ImportPath $Path -Password $Password -ConnectionBroker $RDSCB -Force
Set-RDCertificate -Role RDRedirector -ImportPath $Path -Password $Password -ConnectionBroker $RDSCB -Force
Информацию об установленных SSL сертификатах можно получить так:
Get-RDCertificate
Теперь можно создать коллекции RDS:
$CollectionName = "DEVdept"
New-RDSessionCollection –CollectionName $CollectionName –SessionHost $RDSH1,$RDSH2 –ConnectionBroker $RDSCB –CollectionDescription “Develovers”
Разрешить доступ к RDS серверам для групп:
$UserGroup =@("WINITPRO\msk-developers","WINITPRO\msk_devops")
Set-RDSessionCollectionConfiguration -CollectionName $CollectionName -UserGroup $UserGroup
Опубликовать приложение RemoteAPP:
New-RDRemoteapp -Alias GoogleChrome -DisplayName GoogleChrome -FilePath "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" -ShowInWebAccess 1 -CollectionName $CollectionName -ConnectionBroker $RDSCB
В статье мы рассмотрели, как установить и настроить ферму Remote Desktop Services на базе Windows Server 2019/2022 с помощью графического интерфейса Server Manager и с помощью PowerShell. За рамками статьи осталось более подробное описание ролей RD Web Access и RD Gateway. Мы рассмотрим настройку этих ролей отдельно в следующих статьях.
Служба удаленных рабочих столов — это программный компонент, который позволяет дистанционно запускать приложения или управлять сервером с любого устройства, на котором установлен соответствующий клиент и есть доступ по локальной сети или интернет. Компонент Remote Desktop Services (RDS) в первой версии назывался Terminal Services, или «Службы терминалов», он входит в серверные и клиентские модификации операционных систем Microsoft Windows. Изначально протокол рассчитан на использование маломощными клиентами ресурсов более производительного сервера.
Она обеспечивает работу с более мощным компьютером (сервером) в удаленном режиме, то есть чтобы подключиться к нему дистанционно и затем работать там с установленными приложениями. RDS используется компонентами, которые отвечают за функционирование удаленного помощника, подключение к удаленным рабочим столам и быстрое переключение пользователей.
В обычном сеансе работы RDS с клиентского компьютера на сервер поступают сигналы клавиатуры и мыши, а также передается изображение с экрана. Эти данные мало весят, потому не создают нагрузку на сеть. Исключения бывают, когда нужно передать большой объем медиаданных — тогда RDS обеспечивает поддержку перенаправленных аудио и видео сигналов. Также эта служба позволяет работать с локальными дисками и принтерами, с PnP-устройствами, умеет передавать отметки времени в электронных письмах и файлах. Недавно у нее появилась поддержка дисплеев высокого разрешения (4096×2048 точек) и передача нарезанного на фрагменты изображения на группу мониторов.
Компонент RDS по умолчанию поставляется с большинством версий операционной системы Windows, но в зависимости от номера версии его возможности могут немного отличаться — например, Windows Server без покупки дополнительных лицензий поддерживает подключение только двух удаленных пользователей к одному рабочему столу.
Преимущества Remote Desktop Services
RDS относится к часто используемым компонентам Windows. Его популярность объясняется тем, что он:
- 1Может работать совместно с технологией виртуализации рабочих столов;
- 2Позволяет централизовано обслуживать пользовательские сессии;
- 3Сокращает время на инсталляцию и обновление сложного ПО;
- 4Имеет прозрачные условия лицензирования;
- 5Легко устанавливается и настраивается.
Где используется RDS
Remote Desktop Services — что это и зачем нужно? Этот компонент позволяет развернуть на одном устройстве программы, к которым имеют доступ пользователи других (клиентских) устройств. Это полезно в решении ряда типичных для бизнеса задач.
Развертывание ПО
Благодаря RDS ускоряется установка любого программного обеспечения — теперь его можно инсталлировать на одном устройстве вместо нескольких. Это актуально для приложений, которые отличаются сложностью и трудоемкостью в развертывании и настройке.
Сокращение числа установок к ПО
Приложения выполняются только на той машине, на которой они установлены. На остальные устройства передается изображение того, что происходит во время их выполнения. Это позволяет снизить требования к пропускной способности сети, которая используется для передачи данных между сервером и клиентскими машинами.
Организация удаленного доступа
К основному компьютеру с установленным ПО можно получать доступ с самых разных устройств:
- Офисных ноутбуков;
- Домашних ПК;
- Мобильных устройств.
При этом не важно, как далеко друг от друга находятся клиентское и серверное оборудование — главное, чтобы между ними был установлен канал связи (данные можно передавать по локальной сети или через интернет).Такой способ «общения» можно наладить между удаленными филиалами и центральным офисом компании.
Как настроить RDS в Windows Server
Разбираемся, что такое служба удаленных рабочих столов с точки зрения настройки.
- Запустите «Диспетчер серверов» и нажмите кнопку «Добавить роли и компоненты»;
- Откройте вкладку с названием «Роли сервера» и выберите в списке роль «Службы удаленных рабочих столов». Щелкните по кнопке «Далее»;
- Перейдите к разделу «Службы ролей», выберите там пункты «Лицензирование удаленных рабочих столов» и «Узел сеансов удаленных рабочих столов», а потом снова щелкните по кнопке «Далее»;
- Согласитесь с автоматическим перезапуском конечного сервера, если это потребуется (поставьте галочку напротив строки с этим текстом) и нажмите на кнопку «Установить»;
- Перейдите в «Диспетчер серверов» и на вкладке с названием «Средства» выберите Terminal Services, а затем «Диспетчер лицензирования удаленных рабочих столов». Компонент появится в списке, но не будет активированным;
- После покупки лицензии в контекстном меню компонента выберите пункт «Активировать сервер», чтобы запустить мастер активации. На странице с детальным описанием функции нажмите «Далее» и выберите рекомендованный способ подключения (по умолчанию — автоматический) и снова щелкните «Далее»;
- В открывшемся окне заполните предложенные системой поля: имя, фамилия, страна и название организации, на которую куплена лицензия. Нажмите «Далее» и в новом окне введите дополнительные сведения об активации. Щелкните «Далее» для продолжения установки и еще несколько раз после вопросов «мастера»;
- В окне «Программа лицензирования» в выпадающем списке выберите тип лицензии, которую вы ранее приобрели, и снова нажмите «Далее». Введите номер соглашения и укажите точное количество лицензий. После завершения работы мастера нажмите на «Готово» — к этому моменту сертификат уже будет активирован;
- Для завершения установки зайдите в групповую политику, нажмите комбинацию клавиш WIN + R (команда «Выполнить») и напечатайте в поле «Открыть» команду gpedit.msc. В ветке с компонентами Windows откройте «Службы удаленных рабочих столов», а вслед за этим — «Узел сеансов удаленных рабочих столов». В правом окне вы увидите папку с надписью «Лицензирование». Щелкните по ней, чтобы увидеть состояние лицензирования, а потом напротив строки «Включено» поставьте галочку и впишите IP-адрес сервера лицензирования. Не забудьте сохранить изменения перед закрытием редактора.
После установки проверьте работоспособность четырех основных служб RDS: DNS-клиента, обнаружения SSDP, публикация ресурсов обнаружения функции и узел универсальных PNP-устройств.
Для подключения к удаленному рабочему столу выполните такие действия:
- «Выполнить» (комбинация WIN + R);
- Введите команду mstsc.
В окне, которое появится на экране, впишите IP-адрес машины, к которой вы планируете подключиться, а затем нажмите на кнопку «Подключить».
Теперь вы знаете все про службы удаленных рабочих столов — что это, как работает и каким образом настраивается на сервере с последующим подключением клиентских машин.
The Remote Desktop Services role enables users to connect to virtual desktops, RemoteApp programs, and session-based desktops. Microsoft Remote Desktop Services is a set of services of the Windows operating system that each fulfil a designated role. It combines several features that enable users to access graphical desktops and Windows applications remotely.
Remote Desktop Services (RDS)
- Remote Desktop Connection Broker
- Remote Desktop Gateway
- Remote Desktop Licensing
- Remote Desktop Session Host
- Remote Desktop Web Access
- Remote Desktop Web Access
Remote Desktop Connection Broker
RD Connection Broker (Remote Desktop Connection Broker) manages incoming remote desktop connections to RD Session Host server farms. Remote Desktop Connection Broker allows users to reconnect to their existing virtual desktops, RemoteApp programs, and session-based desktops. It enables even load distribution across RD Session Host servers in a session collection or across pooled virtual desktops in the pooled virtual desktop collection and provides access to virtual desktops in a virtual desktop collection.
Remote Desktop Gateway
RD Gateway (Remote Desktop Gateway) grants users on public networks access to Windows desktops and applications hosted. The RD Gateway component uses a Secure Sockets Layer (SSL) to encrypt the communications channel between clients and the server. Remote Desktop Gateway enables authorized users to connect virtual desktops, RemoteApp programs, and session-based desktops on the corporate network or over the internet.
Remote Desktop Licensing
Remote Desktop Licensing manages the licenses required to connect to a Remote Desktop Session Host server or a virtual desktop. you can use RD Licensing to install, issue, and track the availability of licenses
Remote Desktop Session Host
RD Session Host (Remote Desktop Session Host) holds the session-based apps and desktops you share with users. Remote Desktop Session Host enables a server to host RemoteApp programs or session-based desktops. Users can connect to the RD Session collection to run programs, save files, and use resources on those servers. Users can access an RD Session Host server by using the RemoteApp programs.
Remote Desktop Web Access
RD Web Access (Remote Desktop Web Access) lets users access desktops and applications through a web portal and launches them through the device’s native Microsoft Remote Desktop client application. Remote Desktop Web Access enables users to access RemoteApp and Desktop Connection through the start menu or through a web browser. RemoteApp and Desktop Connection provide users with a customized view of RemoteApp programs, Session-based desktops, and virtual desktops.
RDS Configuration Tutorials | Windows Server 2022
- Enable Remote Desktop Protocol
- Install and Configure RemoteApp (Quick Start)
- Install Remote Desktop Services (Session based)
- Create Session Collection on Remote Desktop Services
- Publish RemoteApps using Remote Desktop Services
Understanding Remote Desktop Services (RDS)
Remote Desktop Services (RDS) is a collection of technologies provided by Microsoft that allow users to connect to remote desktops and applications over a network. This functionality is particularly useful for enabling remote work, supporting virtual desktops, and managing centralized IT environments.
What Is RDS?
Remote Desktop Services (RDS) is a suite of Microsoft Windows Server features that enable users to remotely access graphical desktops and Windows applications. Initially known as Terminal Services, RDS has evolved to support a wide range of
remote access
scenarios.
-
Remote Access: Users can access their work desktops and applications from virtually anywhere, using various devices, including PCs, tablets, and smartphones.
-
Centralized Management: IT administrators can manage multiple remote sessions and applications from a central console, improving efficiency and control.
-
Application Delivery: RDS allows businesses to deploy and manage applications centrally, ensuring that all users have access to the same software versions and updates.
RDS vs. Other Remote Access Technologies
Comparing RDS with RDP and VDI:
RDP
(Remote Desktop Protocol): RDP is a protocol used by RDS to provide remote access. While RDP can be used independently for basic remote desktop access, RDS builds on RDP by adding enterprise-level management and scalability features.
VDI
(Virtual Desktop Infrastructure): VDI involves running multiple virtual desktops on a single server. Unlike RDS, where users share a server OS, VDI provides each user with a dedicated virtual machine, offering higher customization at a higher cost and complexity.
Key Components of RDS
Remote Desktop Services is comprised of several components, each playing a vital role in enabling and managing
remote access
. Understanding these components is crucial for effectively deploying and maintaining an RDS environment.
Remote Desktop Session Host (RDSH)
RDSH is the cornerstone of RDS, hosting Windows desktops and applications that multiple users can access simultaneously. It provides the necessary session-based environment where user applications run.
-
Session Management: RDSH allows multiple concurrent user sessions, each isolated from others, ensuring security and stability.
-
Resource Allocation: It efficiently allocates server resources like CPU, memory, and storage to each user session, optimizing performance and ensuring a smooth user experience.
Remote Desktop Connection Broker
The Remote Desktop Connection Broker plays a critical role in managing and directing user connections to available remote desktops and applications.
-
Session Persistence: It maintains session states, allowing users to reconnect to their existing sessions without data loss in case of disconnection.
-
Load Balancing: Distributes user sessions across available servers to ensure optimal resource utilization and prevent server overload.
Remote Desktop Gateway
The Remote Desktop Gateway facilitates secure access to RDS resources over the Internet.
-
HTTPS Tunneling: Uses HTTPS to tunnel RDS traffic, ensuring secure and encrypted communication between clients and servers.
-
Policy Management: Allows administrators to configure policies controlling who can access specific resources and under what conditions.
Remote Desktop Web Access
Remote Desktop Web Access (RDWA) enables users to access RDS resources through a web browser, providing a versatile access method.
-
Web Portal: Offers a web-based interface where users can launch remote desktops and applications.
-
Cross-Platform Compatibility: Supports various browsers and devices, making it accessible from almost any Internet-enabled device.
Remote Desktop Licensing
Remote Desktop Licensing (RD Licensing) ensures compliance by managing client access licenses (CALs) for RDS deployments.
-
License Management: Tracks and issues licenses to users or devices, ensuring that only authorized clients can access RDS resources.
-
License Compliance: Helps organizations stay compliant with Microsoft licensing requirements, avoiding potential legal and financial penalties.
Deployment Options for RDS
RDS can be deployed in various environments, offering flexibility to meet different organizational needs. This flexibility allows IT professionals to tailor the deployment to their specific infrastructure and business requirements.
On-Premises Deployment
Deploying RDS on-premises involves installing and configuring RDS components on local servers within an organization’s data center.
-
Control: Provides complete control over the infrastructure, security policies, and data.
-
Customization: Allows extensive customization to meet specific business and security requirements.
-
Cost: May require significant upfront investment in hardware and ongoing maintenance costs.
Public Cloud Deployment
RDS can also be deployed on public cloud platforms, such as Microsoft Azure, leveraging Infrastructure as a Service (IaaS).
-
Scalability: Easily scales resources up or down based on demand, without the need for physical hardware.
-
Cost Efficiency: Reduces capital expenditure by converting it into operational expenditure, paying only for the resources used.
-
Disaster Recovery: Enhances disaster recovery capabilities with built-in redundancy and backup options provided by cloud services.
Hybrid Deployment
A hybrid deployment combines on-premises and cloud resources, offering the best of both worlds.
-
Flexibility: Balances the control and customization of on-premises deployments with the scalability and cost efficiency of cloud deployments.
-
Redundancy: Provides additional redundancy and failover options, ensuring higher availability and reliability.
Benefits of Using RDS
RDS offers numerous benefits that enhance operational efficiency, user experience, and cost management. These benefits make it an attractive solution for businesses of all sizes.
Enhanced Administration
RDS simplifies IT administration through centralized management tools and features.
-
Centralized Management: Administrators can manage user sessions, applications, and server configurations from a single console.
-
Streamlined Updates: Facilitates the deployment of software updates and patches across all remote desktops and applications, ensuring consistency and security.
-
Resource Monitoring: Provides detailed insights into resource usage and performance, allowing for proactive management and optimization.
Optimized Personalization
RDS supports user profile management, ensuring a personalized experience for each user.
-
User Profiles: Allows the creation of user profiles that retain individual settings, preferences, and data across sessions.
-
Consistency: Ensures that users experience the same desktop environment and settings, regardless of the device or location they use to access RDS.
Cost-Effective Storage
RDS offers flexible storage options that help reduce costs while maintaining high performance.
-
Local Storage: Utilizes local storage for live migration and session data, minimizing latency and improving performance.
-
Network Storage: Supports network storage for personal virtual desktops, providing scalable and cost-effective storage solutions.
Practical Applications of RDS
RDS enables various practical applications that enhance business operations and user experience, making it a versatile tool for modern IT environments.
Remote Work
RDS facilitates remote work by allowing employees to access their work desktops and applications from anywhere.
-
Work Flexibility: Employees can work from home, on the go, or from any remote location, increasing productivity and job satisfaction.
-
Business Continuity: Ensures that business operations can continue uninterrupted in case of emergencies or unforeseen events.
Centralized Application Deployment
RDS simplifies the deployment and management of applications across an organization.
-
Application Delivery: Centralizes the installation and management of applications, ensuring all users have access to the latest software versions.
-
Maintenance: Reduces the administrative burden by eliminating the need to install and update applications on individual user devices.
Disaster Recovery
RDS enhances disaster recovery capabilities, ensuring business continuity in case of system failures or disasters.
-
Redundancy: Provides built-in redundancy and failover mechanisms, ensuring high availability and reliability.
-
Data Protection: Protects critical data and applications by enabling remote access to backup systems and resources.
RDS in Windows Server 2019 and 2022
RDS is available in the latest versions of Windows Server, including 2019 and 2022. These versions offer enhanced security features, improved performance, and support for modern application requirements.
New Features and Improvements
Windows Server 2019 and 2022 introduce several new features and improvements for RDS.
-
Security Enhancements: Improved encryption and authentication methods, including support for multifactor authentication (MFA) and advanced threat protection.
-
Performance Optimization: Enhanced resource allocation and session management, providing a smoother and more responsive user experience.
-
Modern Application Support: Compatibility with modern applications and cloud services, ensuring that RDS can meet the demands of today’s IT environments.
Feature Restrictions
Some consumer-oriented features are restricted in the RDSH role to maintain a focused enterprise environment.
Excluded Features: Microsoft Cortana, the Microsoft Store, and Xbox app and services are not included in RDSH, ensuring that the environment remains streamlined and secure for business use.
Azure Virtual Desktop (AVD)
Azure Virtual Desktop (AVD), formerly known as Windows Virtual Desktop, is an evolution of RDS that leverages Microsoft’s Azure cloud infrastructure to provide a Desktop-as-a-Service (DaaS) solution.
Overview of AVD
AVD simplifies the deployment of virtual desktops and applications, offering a scalable and secure platform for remote access.
-
Cloud-Based Infrastructure: Utilizes Azure’s robust cloud infrastructure to deliver virtual desktops and applications, reducing the need for on-premises hardware.
-
Scalability: Easily scales resources to meet changing demands, ensuring optimal performance and cost efficiency.
-
Security: Leverages Azure’s advanced security features, including encryption, access controls, and compliance certifications, to protect data and applications.
Benefits of AVD
AVD offers several advantages over traditional RDS deployments.
-
Simplified Management: Centralized management tools streamline the deployment and maintenance of virtual desktops and applications.
-
Cost Savings: Pay-as-you-go pricing model reduces upfront costs and allows for more predictable budgeting.
-
Flexibility: Supports a wide range of devices and access methods, ensuring that users can work from anywhere.
Common RDS Errors and Troubleshooting
Understanding and troubleshooting common RDS errors is crucial for maintaining a stable environment. Typical issues include connection drops, licensing problems, and authentication failures.
Common Errors
-
Connection Drops: Users may experience connection drops due to network issues or server overload.
-
Licensing Problems: Issues with RD Licensing can prevent users from accessing RDS resources.
-
Authentication Failures: Incorrect credentials or misconfigured authentication settings can cause login issues.
Troubleshooting Tools
-
Remote Desktop Services Manager: Monitors and manages active RDS sessions.
-
Event Viewer: Provides detailed logs of system events, helping identify and diagnose issues.
-
Performance Monitor: Tracks server performance metrics, enabling proactive management and optimization.
TSplus: Your Remote Desktop Solution
For organizations seeking a robust and cost-effective alternative to Microsoft RDS, TSplus offers a comprehensive
remote desktop solution
. With features like remote access, application publishing, and secure connections, TSplus simplifies the management of remote desktops and applications, providing an excellent choice for businesses of all sizes. Explore tsplus.net for more information and start enhancing your remote work capabilities today.
Conclusion
Remote Desktop Services (RDS) is a powerful and versatile technology that plays a critical role in modern IT infrastructure. By enabling remote access to desktops and applications, RDS supports remote work, centralized management, and efficient resource utilization. For IT professionals, mastering RDS is essential for optimizing organizational productivity and ensuring secure, seamless remote access.
До появления персональных компьютеров вычислительные задачи выполнялись на больших машинах – «мэйн-фреймах», которые в нашей стране назывались ЭВМ. Пользователи получали к ним доступ в режиме разделения времени через терминал, чаще всего представлявший собой алфавитно-цифровой дисплей и клавиатуру. Такой терминал подключался к ЭВМ через выделенную линию, в качестве которой могла использоваться даже обычная телефонная линия, либо, позднее, через ранние прообразы компьютерной сети. Именно в таком режиме, будучи ещё школьником, начинал свою работу основатель компании Microsoft Билл Гейтс.
Режим разделения времени означает, что процессорное время разделяется между всеми пользователями по очереди (которых могло быть до нескольких сот). Однако за счёт относительно высокого быстродействия процессора и небольшого периода обслуживания каждому пользователю казалось, что он работает на ЭВМ в полном одиночестве.
Так выглядели терминальные устройства и ЭВМ VAX-11/780 компании DEC. Такая ЭВМ и терминалы были поставлены для обслуживания московской Олимпиады 1980 г. (источник: thg.ru)
В наши дни решение удалённого терминального доступа RDS (Remote Desktop Service) продолжает успешно использоваться и входит в состав операционной системы Windows Server, начиная с Windows NT 4.0. Оно стало основой для более продвинутого решения виртуальной инфраструктуры рабочих столов VDI (Virtual Desktop Infrastructure).
Различия терминального доступа и виртуализации рабочего стола
Основное различие между решениями RDS и VDI в том, что если в RDS у всех пользователей рабочий стол выглядит одинаково (берётся с удалённого сервера), то в VDI каждый пользователь может иметь свой собственный рабочий стол, т. е. полностью эмулировать работу на персональном компьютере.
Ключевым отличием решений виртуализации рабочего стола и терминального сервера является уровень изоляции ресурсов для пользователей. В терминальном сервере создаются учётные записи пользователей, которые обеспечивают работу в единой операционной системе так, чтобы они не мешали друг другу. На терминалы пользователей устанавливаются специальные приложения, которые дают им возможность работать с отдельными сессиями на терминальном сервере. Однако в терминальном режиме можно запустить не каждое приложение. При терминальном доступе изоляция пользователей происходит на уровне сессии. И если какое-то приложение вызывает сбой на уровне операционной системы, то вместе с пользователем, вызвавшим сбой, перезагрузятся и остальные пользователи, работающие на этом же сервере.
Технология виртуализации VDI предоставляет гораздо большие возможности, в частности возможность создания персональной виртуальной машины для каждого пользователя. Однако это требует бóльших серверных мощностей по сравнению с терминальным доступом. Кроме того, для развёртывания VDI часто требуется система хранения данных с высоким IOPS.
Решение в пользу одного или другого решения должно приниматься на основе анализа стоящих задач.
Терминальный сервер проще и дешевле в развёртывании, однако часто не обеспечивает требуемого уровня изоляции пользователей.
Виртуализация полезна в случаях, если пользователю необходимы права администратора либо требуются приложения, которые нестабильно работают на терминальном сервере.
Что такое терминальный сервер
Итак, терминальный сервер – это сервер или кластер серверов, который обеспечивает удалённое обслуживание многих клиентских систем (рабочих компьютеров пользователей), которые подключаются к локальной сети без использования модема или сетевой интерфейсной карты. Эта концепция была введена компанией Microsoft в виде функции терминальных услуг (terminal services) в ОС Windows Server. Начиная с версии Windows Server 2008 R2, эти услуги стали именоваться Remote Desktop Services (RDS).
На сегодняшний день для организации сервера терминалов Windows чаще всего используется ОС Windows Server 2019, 2016, 2012 R2. Более ранние версии 2008 и 2010 уже мало актуальны и сейчас лишь поддерживаются.
Преимущества и недостатки
Терминальные серверы дают возможность централизованного хостинга приложений и данных предприятия вне зависимости от расположения и платформы устройств конечных пользователей, давая доступ к ним через терминальные клиентские устройства. Эта концепция даёт много преимуществ:
- Доступ к цифровым ресурсам предприятия из любого места, в любое время и практически с любого устройства.
- Наличие единой точки мониторинга позволяет контролировать всю инфраструктуру с центрального пульта.
- Приложения устанавливаются однократно и регулярно обновляются в терминальном сервере централизованно, то есть нет необходимости делать это на каждом компьютере в сети.
- Наличие одновременной централизованной лицензии вместо лицензирования каждого устройства, что снижает стоимость лицензирования.
- Замена пользовательских компьютеров на рабочих местах на т. н. «тонкие клиенты» (thin clients – устройства для подключения к терминальному серверу) снижает капитальные и операционные затраты предприятия за счёт централизации обслуживания, а также снижения расходов на электроэнергию.
- Увеличивается срок службы терминального оборудования.
- Повышается безопасность сети предприятия.
- Однако и недостатки у такого решения тоже есть:
- Концентрация всей функциональности в рамках одного или нескольких серверов. Поэтому выход из строя любого элемента между приложением и терминалами приводит к простою многих пользователей.
- Усиливаются последствия ошибок конфигурации и работы ПО, которые затрагивают сразу всех пользователей.
- Возможные проблемы с лицензированием: некоторые приложения не предусматривают работы нескольких пользователей на одном сервере или требуют использования более дорогих лицензий.
Архитектура и лицензирование
Терминальный сервер состоит из трёх основных компонентов:
- Многоядерный сервер для централизованного хостинга ресурсов.
- Протокол для связи с удалёнными рабочими столами пользователей RDP (Remote Desktop Protocol), который управляет передачей данных между сервером и клиентом.
- Клиентская программа на каждом пользовательском устройстве, которая позволяет ему подключаться к серверу по протоколу RDP.
Кроме того, необходима служба лицензирования терминалов (Terminal Services Licensing Service), которая представляет серверу клиентские лицензии служб терминалов TS CAL (Terminal Services Client Access License), чтобы они могли к нему подключаться. Список сессий при этом сохраняется в службе Sessions Directory Service. Список индексируется по имени пользователя, что позволяет ему всё время подключаться к одному и тому же серверу.
Начиная с Windows Server 2008, лицензии служб удалённых рабочих столов называют RDS CAL.
Существует два типа лицензий RDS CAL.
- CAL на пользователя, которая позволяет установить сеанс удалённого рабочего стола на сервере независимо от количества устройств, используемых для подключения.
- CAL на устройство, которая позволяет определенному устройству установить сеанс удалённого рабочего стола на сервере независимо от количества пользователей, подключённых с помощью этого устройства.
Примеры продуктов
Microsoft RDS
Службы удалённого рабочего стола (RDS) – один из компонентов Microsoft Windows Server, позволяющий пользователю работать под управлением удалённого компьютера, на котором установлены нужные ему приложения, через устройства тонкого клиента либо через сетевое соединение при помощи протокола удалённого рабочего стола (RDP).
Службы удалённого рабочего стола RDS (источник: Microsoft)
Платформа RemoteApp Service позволяет представлять приложения, доступ к которым может быть получен удалённо через Службы удалённых рабочих столов (RDS), как если бы они были запущены на локальном компьютере пользователя. Программа RemoteApp запускается на терминале пользователя в собственном окне, размеры которого можно менять, оно может перемещаться между несколькими мониторами, а также имеет собственный значок на панели задач. Если один пользователь запускает несколько программ RemoteApp на одном сервере, эти программы RemoteApp совместно используют один сеанс RDS.
Citrix XenApp и XenDesktop
В решении Citrix используется платформа Microsoft RDS. В инфраструктуре виртуализации Citrix есть много компонентов, но главные среди них следующие:
- Citrix Virtual Apps.
- Citrix Virtual Apps & Desktops.
Citrix Virtual Apps – основной продукт, предназначенный для удалённой работы в приложениях для пользователей. Citrix Virtual Apps & Desktops расширяет возможности RDS, организуя инфраструктуру виртуальных рабочих столов (VDI). Оба продукта обеспечивают пользователям безопасную работу приложений и настройки безопасности в зависимости от устройства пользователя.
В названиях продуктов терминального сервера Citrix есть некоторая путаница. Компания ввела наименования Citrix XenApp для виртуализации приложений и Citrix XenDesktop для виртуализации рабочих столов. Затем Citrix объединила оба продукта в одном бренде – XenDesktop 7.0. Затем компания отказалась от такого объединения, и это иногда путает пользователей. Сейчас Citrix опять поставляет два раздельных продукта – XenApp 7.6 и XenDesktop 7.6, в то же время называя их Citrix Virtual Apps и Citrix Virtual Apps & Desktops, поскольку второе решение включает в себя практически весь функционал первого.
Как Citrix Virtual Apps, так и Citrix Virtual Apps & Desktops поставляются в трёх комплектациях, с разным функционалом и ценами:
- Standard.
- Advanced.
- Premium.
Для того чтобы повысить воспринимаемое качество работы пользователей, нужно приобрести и другие продукты – такие, как Citrix Provisioning Services (PVS) и Citrix Director
Установка продуктов Citrix может быть достаточно сложной, и для этой цели часто требуются сертифицированные профессионалы. Кроме того, необходимо подобрать правильные конфигурации большого количества компонентов. Для поддержки инфраструктуры Citrix также требуется база данных Microsoft SQL.
VMware Server и VMware ESX
Компания VMware занимает прочные позиции на рынке виртуализации серверов, а также на рынке ПО виртуализации рабочих столов (VDI). В сегменте бесплатных средств виртуализации серверов есть продукт VMware Server, который с 2010 года не поддерживается.
Функции VMware Server (ранее VMware GSX Server) входят теперь в функционал решения VMware ESX. Решение VMware Server позволяет не только работать в режиме терминального сервера, но также есть возможность создания, редактирования и работы виртуальных машин. В нём могут работать виртуальные машины, созданные другими продуктами VMware, а также Microsoft Virtual PC. В настоящее время функции VMware Server заменены функцией «Shared Virtual Machines», введённой в продукте VMware Workstation 8.0 и его более поздних версиях.
<
Оборудование для хостинга услуг RDS
RDS – прежде всего программное решение. В качестве аппаратной платформы для услуг RDS может подойти практически любой, достаточно мощный сервер, который выбирается согласно потребностям предприятия или организации. Он должен соответствовать нуждам пользователей и ресурсам, необходимым для эффективного исполнения на сервере рабочих приложений, чтобы ни один сотрудник не испытывал затруднений или задержек при работе приложений.
Это могут быть, например, следующие платформы:
- Dell EMC PowerEdge R640 / R740
- HPE Proliant DL360 Gen10 / DL380 Gen10
- Lenovo ThinkSystem SR570 / SR670
- Fujitsu Primergy RX2530 M5 / RX2540 M5