Настройка RDP веб клиента HTML5 на RDS Windows Server 2016

Несмотря на то, что Microsoft за последние несколько лет портировала свой RDP клиент под различные платформы (iOS, macOS, Android, есть даже отдельное UWP приложение для Windows 10), многим пользователям хотелось бы получать удаленный RDP доступ к RDS серверам и опубликованным приложениям из любого браузера. Для этих целей Microsoft несколько лет разрабатывала отдельный Remote Desktop Web Client на базе HTML5. Совсем недавно была выпушена первая официальная версия RD Web Client. В этой статье мы рассмотрим, как установить и настроить Remote Desktop Web Client и использовать его для доступа к RemoteApp на RDS сервере с Windows Server 2016 из обычного браузера.

Требования к инфраструктуре веб клиента Remote Desktop
Remote Desktop Web Client пока доступен как расширение для роли RD Web Access на RDS серверах под управлением Windows Server 2016/2019.

Перед внедрением RD Web Client нужно убедится, что ваша RDS инфраструктура соответствует следующим требованиям:

Наличие развернутой инфраструктуры RDS, включающей RD Gateway, RD Connection Broker и RD Web Access на Windows Server 2016/2019;
Используются терминальные лицензии (RDS CAL) в режиме Per User;
На серверах RDS Gateway и Web Access должны использоваться SSL сертификаты, выданные доверенным CA (самоподписанные сертификаты SSL использовать нельзя);
В качестве RDP клиентов можно использовать только Windows 10 или Windows Server 2008 R2 (и выше);
На RDS серверах нужно установить обновление (KB4025334 – от 18 июля 2017 года), или любое следующее кумулятивное обновление для Windows Server.
Установка RD Web HTML5 клиента на Windows Server 2016 RDS
Как мы уже говорили, на данный момент доступна версия RD Web Client для Windows Server 2016 / 2019, однако на текущий момент этот компонент не входит в состав дистрибутива WS 2019 и устанавливается отдельно.

На сервере с ролью RD Web Access необходимо установить модуль PowerShellGet:

Install-Module -Name PowerShellGet -Force

Закройте консоль PoSh и запустите еще раз. Теперь нужно установить модуль RD Web Client Management:

Install-Module -Name RDWebClientManagement
Чтобы принять лицензионное соглашение Microsoft, введите A.

Теперь нужно установить последнюю версию пакета Web Remote Desktop:

Install-RDWebClientPackage

После установки пакета, проверьте его свойства командой:

Get-RDWebClientPackage
Как вы видите, у вас появился пакет rd-html 5.0 версия 1.0.0.

Далее вам нужно с сервера с ролью RDS Broker экспортировать SSL сертификат, использующийся для SSO (Enable Single Sign On) в .cer файл (BASE64) Можно выполнить экспорт из графической оснастки управления сертификатами компьютера certlm.msc, нужный сертификат находится в разделе Personal\Certificates.

Импортируйте сертификат на сервере RD Web:

Import-RDWebClientBrokerCert C:\RDBroker.cer

Теперь можно опубликовать клиент RD Web:

Publish-RDWebClientPackage -Type Production -Latest
Доступ к RDWeb серверу через браузер с поддержкой HTML5
После того, как вы развернули пакет Web Client на RDS сервере, вы можете запустить браузер на клиентском компьютере. Поддерживаются все последние версии браузеров Edge, IE 11, Google Chrome, Safari и Firefox (пока веб клиент RD работает далеко не на всех мобильных устройствах). Для доступа к RDS серверам из браузера вам достаточно передать пользователям ссылку на сервер RDWeb.

Откройте URL адрес:

https://FQDN.server.name/RDWeb/webcli...

Для доступа к тестовой среде используйте адрес:

https://FQDN.server.name /RDWeb/WebClient-Test/index.html

Имя сервера должно соответствовать имени сервера RD Web Access в сертификате.

Авторизуйтесь на RDWeb сервере под своей учетной записью.
При входе у вас будет запрошено какие локальные ресурсы должны быть доступны в RD сессии. Пока доступно только перенаправление буфера обмена и принтеров (локальные диск и USB устройства через веб-клиент RDP не пробрасываются, нужно использовать тяжёлый клиент mstsc.exe)

Перед вами должен появится список опубликованных RemoteApps и RDP ярлыков. Вы можете переключаться между ними с помощью иконок в верхней части окна.
Печать из RD Web клиента осуществляется через виртуальный PDF принтер (Microsoft Print to PDF). Вы отправляете документ на печать в окне веб клиента и браузер предлагает скачать сформированный pdf файл, который можно открыть и распечатать на локальный принтер.
В HTML5 доступно динамическое изменение окна удаленного рабочего стола и возможность запуска в полноэкранном режиме. Через буфер обмена можно копировать только текст (файлы, графика через буфер веб клиента не копируются).

Что интересно, в RDP веб клиенте теперь видно количество памяти и CPU на RDS сервере, которое использует то или иное приложение. Просто щелкните по значку опубликованного приложения.