RDP веб-клиент HTML5 — это расширение роли Веб-доступ к удалённым рабочим столам (RD Web Access) в Windows Server 2022, 2019 и 2016, которое позволяет пользователям запускать приложения RemoteApp и рабочие столы через браузер без установки отдельного RDP-клиента. Это решение обеспечивает кроссплатформенный доступ с устройств на Windows, macOS, Linux, iOS и Android, поддерживая современные браузеры, такие как Microsoft Edge, Google Chrome, Safari и Mozilla Firefox. В статье описаны шаги по установке, настройке и устранению ошибок, связанных с RDP веб-клиентом.
Требования к инфраструктуре RDS
Перед установкой RDP веб-клиента HTML5 убедитесь, что ваша инфраструктура Remote Desktop Services (RDS) соответствует следующим условиям:
1. Развёрнута ферма RDS, включающая:
— Шлюз удалённых рабочих столов (Remote Desktop Gateway) для безопасного доступа через интернет.
— Посредник подключений (RD Connection Broker) для управления сеансами.
— Веб-доступ к удалённым рабочим столам (RD Web Access) для веб-интерфейса.
2. Используются терминальные лицензии RDS CAL в режиме «на пользователя» (Per User).
3. На серверах RD Gateway и RD Web Access установлены SSL-сертификаты от доверенного центра сертификации (CA). Поддерживаются бесплатные сертификаты Let’s Encrypt. Самоподписанные сертификаты допустимы только для тестирования.
4. Установлено обновление KB4025334 (от 18 июля 2017 года) или более позднее накопительное обновление для Windows Server.
5. Клиентские устройства используют Windows 10, Windows Server 2008 R2 или новее.
Установка RDP веб-клиента HTML5
RDP веб-клиент HTML5 не включён в дистрибутив Windows Server и требует ручной установки через PowerShell. Выполните следующие шаги на сервере с ролью Веб-доступ к удалённым рабочим столам (RD Web Access):
1. Откройте PowerShell с правами администратора.
2. Установите модуль PowerShellGet для загрузки необходимых компонентов:
Install-Module -Name PowerShellGet -Force
3. Перезапустите консоль PowerShell и установите модуль RDWebClientManagement:
Install-Module -Name RDWebClientManagement
При появлении запроса на принятие лицензионного соглашения введите A (Accept).
4. Установите последнюю версию пакета RDP веб-клиента:
Install-RDWebClientPackage
5. Проверьте установленный пакет командой:
Get-RDWebClientPackage
В результате вы увидите пакет rd-html 5.0 версии 1.0.0 или выше.
Настройка SSL-сертификата
Для корректной работы RDP веб-клиента требуется экспорт и импорт SSL-сертификата, используемого для единого входа (SSO) на сервере Посредник подключений (RD Connection Broker).
1. На сервере с ролью RD Connection Broker откройте консоль управления сертификатами (certlm.msc).
2. Перейдите в раздел Личное -> Сертификаты (Personal -> Certificates).
3. Найдите сертификат, используемый для RDS, щёлкните правой кнопкой мыши и выберите Все задачи -> Экспорт (All Tasks -> Export).
4. Выберите формат Base-64 encoded X.509 (.cer) и сохраните файл, например, как C:\RDBroker.cer.
5. Скопируйте файл на сервер с ролью RD Web Access.
6. Импортируйте сертификат на сервере RD Web Access:
Import-RDWebClientBrokerCert C:\RDBroker.cer
Публикация RDP веб-клиента
После установки и настройки сертификата опубликуйте RDP веб-клиент:
1. Для продуктивной среды выполните:
Publish-RDWebClientPackage -Type Production -Latest
2. Для тестовой среды используйте:
Publish-RDWebClientPackage -Type Test -Latest
3. Чтобы разрешить запуск RemoteApp только в браузере (без скачивания RDP-файла), выполните:
Set-RDWebClientDeploymentSetting -Name "LaunchResourceInBrowser" $true
Доступ к RDS через браузер
После публикации RDP веб-клиента пользователи могут получить доступ к RemoteApp и рабочим столам через браузер по URL:
— Продуктивная среда: https://FQDN_сервера/RDWeb/webclient/index.html
— Тестовая среда: https://FQDN_сервера/RDWeb/WebClient-Test/index.html
Где FQDN_сервера — это полное доменное имя сервера RD Web Access, которое должно соответствовать имени в поле Common Name (CN) или Subject Alternative Names (SAN) вашего SSL-сертификата. Например, https://rdweb.contoso.com/RDWeb/webclient/index.html.
1. Откройте URL в поддерживаемом браузере (Edge, Chrome, Safari, Firefox).
2. Авторизуйтесь под учётной записью пользователя.
3. Выберите локальные ресурсы для перенаправления в сессию (буфер обмена и принтеры). Перенаправление локальных дисков и USB-устройств через веб-клиент недоступно — для этого используйте клиент mstsc.exe.
4. После входа вы увидите список опубликованных RemoteApp. Переключение между приложениями выполняется через иконки в верхней части окна.
Особенности работы с RemoteApp
— Приложения RemoteApp отображаются в браузере с возможностью полноэкранного режима.
— Печать осуществляется через виртуальный PDF-принтер (Microsoft Print to PDF). Документ сохраняется как PDF-файл, который можно открыть и распечатать на локальном принтере.
— Через буфер обмена поддерживается только копирование текста. Файлы и графика не копируются.
Устранение ошибок подключения
При использовании RDP веб-клиента HTML5 могут возникать следующие ошибки:
Ошибка: «Не удалось подключиться к [приложение]»
Сообщение: «Потеряно подключение к удалённому компьютеру. Возможно, есть проблема с сетевым подключением.»
Возможные причины и решения:
1. Отсутствует Шлюз удалённых рабочих столов (RD Gateway):
— Если ферма RDS развёрнута без RD Gateway, привяжите SSL-сертификат к порту 3392 на сервере RD Connection Broker. Используйте Диспетчер серверов или PowerShell для назначения сертификата.
2. Проблемы с сетью:
— Проверьте доступность сервера по портам 443 (HTTPS) и 3391 (UDP) для RD Gateway. Убедитесь, что брандмауэр не блокирует эти порты.
— Используйте инструменты, такие как Wireshark, для анализа сетевого трафика.
3. Неправильная конфигурация:
— Убедитесь, что FQDN сервера в URL совпадает с именем в SSL-сертификате (поля CN или SAN).
Ошибка: «Веб-клиенту нужен RD Gateway»
Сообщение: «The web client needs a Remote Desktop Gateway to connect to desktops and apps.»
Решение:
— Убедитесь, что роль Шлюз удалённых рабочих столов (RD Gateway) установлена и настроена.
— Проверьте, что SSL-сертификат привязан к роли RD Gateway в Диспетчере серверов -> Службы удалённых рабочих столов -> Сертификаты -> Шлюз удалённых рабочих столов (SSL Certificates).
— Рекомендуется использовать wildcard-сертификат для упрощения настройки.
Ошибка: «Непредвиденный сертификат проверки подлинности»
Сообщение: «Ваш сеанс завершён, так как от удалённого компьютера получен непредвиденный сертификат проверки подлинности сервера.»
Решение:
1. Проверьте, что SSL-сертификат на всех ролях RDS (RD Gateway, RD Web Access, RD Connection Broker) совпадает и содержит правильное FQDN.
2. Если используется самоподписанный сертификат, добавьте его в хранилище Доверенные корневые центры сертификации (Trusted Root Certification Authorities) на клиентских устройствах.
3. Убедитесь, что адрес CRL (Certificate Revocation List) доступен клиентам, если используется внутренний CA. Настройте публикацию CRL через HTTP/HTTPS.
4. Проверьте привязку сертификата к порту 3392 в реестре: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp, параметр WebSocketURI.
Дополнительные рекомендации
— Регулярно обновляйте SSL-сертификаты до истечения их срока действия, чтобы избежать ошибок подключения.
— Настройте балансировку нагрузки через RD Connection Broker для равномерного распределения сеансов.
— Используйте Let’s Encrypt для бесплатных доверенных сертификатов, автоматизировав их выпуск и обновление с помощью win-acme.
— Для повышения безопасности включите Проверку подлинности на уровне сети (NLA) в настройках RDS или реестре:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp, параметр SecurityLayer = 1.
— Проверяйте журналы событий в Просмотр событий (Event Viewer) на серверах RD Gateway и RD Web Access для диагностики проблем.
Эти шаги обеспечат стабильную работу RDP веб-клиента HTML5, безопасный доступ к RemoteApp и устранение типичных ошибок подключения на Windows Server 2022/2019/2016.