*КУБ– полный комплекс облачных услуг!

Как подключить и настроить Remote Desktop Services (RDS)

How to connect and configure Remote Desktop Services (RDS)

Что такое RDS и какие роли нужны

Remote Desktop Services — набор ролей Windows Server для публикации полных рабочих столов и приложений (RemoteApp) на серверных хостах (RD Session Host), с балансировкой и переподключением сеансов через RD Connection Broker, веб-порталом RD Web Access, при необходимости внешним шлюзом RD Gateway и отдельной службой RD Licensing (CAL для пользователей/устройств).

Минимальный стенд (пример):

  • 2× RD Session Host (сеансовые хосты)
  • 1× менеджер с ролями RD Connection Broker + RD Web Access + RD Licensing (для пилота роли можно объединить на одном сервере)

Предварительно в AD:

  • Все серверы добавлены в один домен и помещены в одну OU;
  • Создана группа (например, rdsh-servers) и добавлены туда все RDSH;
  • Под сетевые профили пользователей (опционально) подготовлен общий каталог для User Profile Disks (UPD).

Установка RDS через Server Manager (Standard deployment)

Откройте Server Manager, добавьте в пул все серверы (All Servers → Add Servers):

1 windows VPS

Запустите мастер: Add Roles and Features → Remote Desktop Services installation → Standard deployment → Session-based deployment.

2 windows VPS

Назначьте роли по серверам (пример ниже: RDCB+RDWA на менеджере, RDSH на всех узлах):

3 windows VPS

Подтвердите и дождитесь развертывания:

После установки откройте Server Manager → Remote Desktop Services → Overview:

5 windows VPS

В Tasks → Edit Deployment Properties задайте:

  • Сервер лицензирования и режим RDS CAL (Per User или Per Device);
  • URL RD Web Access;
  • (Позже) SSL-сертификаты для RDGW/RDWeb/Publishing/Redirector.

Для изолированного сценария (без брокера/веба, на одиночном хосте) см. вариант Standalone RDSH (работа в рабочей группе).

Создаем коллекцию сеансов и подключаем пользователей

Перейдите в Remote Desktop Services → Collections → Tasks → Create Session Collection:

Добавьте хосты RD Session Host в коллекцию:

7 windows VPS

Укажите группы пользователей (удалите Domain Users, добавьте свои, например RDS-Users) и, если необходимо, включите User Profile Disks. Далее — Create.

Чтобы редактировать параметры, откройте свойства коллекции (Tasks → Edit Properties):

8 windows VPS

Здесь же публикуются RemoteApp (приложения) и задаются лимиты сеансов (тайм-ауты активных/разъединенных сессий). О тайм-аутах есть хороший разбор с картинками.

Сертификаты и HTTPS для RDS-ролей (кратко)

Чтобы убрать предупреждение об опасном подключении и включить SSO, назначьте корректные SSL-сертификаты для ролей:

  • RD Gateway, RD Web Access, RD Publishing, RD Redirector.

Через PowerShell (пример для единого PFX и брокера $RDSCB):

				
					$RDSCB = "msk-rdsman.contoso.local"
$Path  = "C:\certs\rds-cert.pfx"
$Pwd   = ConvertTo-SecureString "StrongPfxPassword!" -AsPlainText -Force

Set-RDCertificate -Role RDGateway    -ImportPath $Path -Password $Pwd -ConnectionBroker $RDSCB -Force
Set-RDCertificate -Role RDWebAccess  -ImportPath $Path -Password $Pwd -ConnectionBroker $RDSCB -Force
Set-RDCertificate -Role RDPublishing -ImportPath $Path -Password $Pwd -ConnectionBroker $RDSCB -Force
Set-RDCertificate -Role RDRedirector -ImportPath $Path -Password $Pwd -ConnectionBroker $RDSCB -Force

Get-RDCertificate
				
			

Внешний доступ без VPN безопаснее осуществлять через RD Gateway (развертывается отдельно; есть подробное руководство).

Лицензирование (RDS CAL)

Установите роль Remote Desktop Licensing (можно на брокере), активируйте сервер лицензий и укажите в настройках развертывания адрес этого сервера и режим лицензий (Per User/Per Device). Параметры задаются в Edit Deployment Properties → RD Licensing.

Полезно помнить ограничения: обычный Windows Server без RDS дает только 2 административных RDP-подключения; полноценные сессии пользователей требуют RDS CAL.

Публикация приложений (RemoteApp) и доступ

Публикуйте приложения в свойствах коллекции (RemoteApp Programs → Publish) или через PowerShell:

				
					New-RDRemoteApp -Alias "Chrome" -DisplayName "Google Chrome" `
  -FilePath "C:\Program Files\Google\Chrome\Application\chrome.exe" `
  -ShowInWebAccess 1 -CollectionName "General" -ConnectionBroker $RDSCB
				
			

Пользователи могут заходить через:

  • RD Web Access (веб-портал),
  • ярлыки .rdp/RemoteApp,
  • или напрямую на FQDN фермы (если настроен брокер и DNS запись).

Быстрое развертывание RDS фермы PowerShell (с нуля)

Ниже — сокращенный пример: создание коллекции, назначение групп, публикация RemoteApp. (Развертывание ролей — через GUI, как выше, или автоматизацией по вашему стандарту.)

				
					$RDSCB = "msk-rdsman.contoso.local"
$RDSH1 = "msk-rds1.contoso.local"
$RDSH2 = "msk-rds2.contoso.local"

# Коллекция
New-RDSessionCollection `
  -CollectionName "General" `
  -SessionHost $RDSH1,$RDSH2 `
  -ConnectionBroker $RDSCB `
  -CollectionDescription "General users"

# Доступ
$Groups = @("CONTOSO\RDS-Users","CONTOSO\ServiceDesk")
Set-RDSessionCollectionConfiguration -CollectionName "General" -UserGroup $Groups

# Публикация приложения
New-RDRemoteApp -Alias "WordPad" -DisplayName "WordPad" `
  -FilePath "C:\Program Files\Windows NT\Accessories\wordpad.exe" `
  -ShowInWebAccess 1 -CollectionName "General" -ConnectionBroker $RDSCB
				
			

Сеть, брандмауэр и диагностика

Откройте порты на Windows Firewall и внешнем ACL провайдера Windows VPS:

  • RD Web: 443/TCP
  • RD Gateway: 443/TCP
  • RDP к RDSH через брокера: 3389/TCP (+ 3389/UDP для улучшенной графики)
  • Межсерверные соединения брокера/SQL — в соответствии с вашей схемой

Быстрые проверки с клиента:

				
					Test-NetConnection rds.contoso.ru -Port 443   # RDWeb/RDGW
Test-NetConnection rds.contoso.ru -Port 3389  # RDP (если публикуете напрямую)
				
			

О «зависании»/черном экране при UDP-транспорте RDP есть отдельный разбор.

Частые проблемы и быстрые решения

  • Пользователь не попадает в коллекцию. Проверьте, находится ли он в нужной группе доступа к коллекции (а не просто в Domain Users).
  • Не виден брокер/ошибки переподключения. Проверьте DNS-запись фермы, доступность базы брокера и соответствующие порты; для HA у брокера — Always On в SQL.
  • Сессии не завершаются/висят. Настройте лимиты (таймауты) для активных/разъединенных сессий на вкладке Session коллекции.

Требуется безопасный внешний доступ. Разверните RD Gateway (HTTPS, политики доступа, сертификат).