Служба удаленных рабочих столов (часть 1)

Опубликовано: 25.09.2020
Автор: Виталий Бочкарев
Поддержать автора статьи по этой ссылке

В современном мире все чаще используются удаленные методы работы в компании - люди подключаются к инфраструктуре компании из дома. Чтобы обеспечить работников доступом к корпоративным приложениям, можно выдать им портативные компьютеры с настроенными приложениями и организовать VPN-подключение к сети компании. А можно сделать шлюз к серверу удаленных рабочих столов и разрешить подключение с домашних компьютеров к готовому рабочему месту на сервере компании. Это же решение можно использовать как альтернативу установки специфических промышленных или секретных программ на компьютеры пользователей, то есть устанавливать приложения на серверах, а пользователям предоставлять доступ к экранам таких серверов. В этой серии заметок я расскажу, как создать инфраструктуру удаленных рабочих столов (RDS).

Составляющие компоненты инфраструктуры:
- доменная инфраструктура;
- центр сертификации домена;
- хранилище перемещаемых профилей пользователей;
- сервер брокера подключений удаленных рабочих столов (RD connection broker);
- веб-сервер для публикации ярлыков удаленных рабочих столов (RD web access);
- сервер лицензирования удаленных рабочих столов (RD Licensing);
- серверы сессий удаленных рабочих столов (RD session host);
- сервер-шлюз для подключений к службе терминалов снаружи (RD Gateway).

Итак, развертывание службы удаленных рабочих столов начинается с планирования инфраструктуры. Предполагается, что в компании уже существует доменная инфраструктура с действующими доменными контроллерами, DNS и центром сертификации - на базе этой системы и предстоит построить службу терминалов. Схема данной инфраструктуры будет выглядеть так

Remote desktop services - 001

Обязательными компонентами службы терминалов являются сервер лицензирования, сервер брокера подключений, сервер веб-подключений, серверы сессий удаленных рабочих столов. Остальные компоненты можно устанавливать по желанию.

В первой части публикаций про терминальные серверы я расскажу, как подготовить сервер для хранения профилей пользователей (RD profile storage).

Этот сервер нужен для хранения настроек и содержимого рабочих столов пользователей, чтобы при переключении сессии от хоста к хосту рабочее пространство было идентичным. Иными словами, если сегодня пользователь был распределен брокером на первый хост, то по завершении работы его профиль должен быть сохранен в общее хранилище профилей, а завтра тот же самый профиль должен быть подгружен опять даже в случае, если брокер распределит его на другой хост.

Требования к серверу хранения профилей:
- поддержка протокола SMB 2.0;
- поддержка файловой системы NTFS;
- членство в домене, где будет состоять сервер брокер подключений;
- достаточное пространство на диске (от 1 ГБ х количество пользователей + 10%).

Желательно, чтобы сервер хранения профилей был отделен от других ролей, так как при активных сессиях пользователей его нельзя перезагружать.

Итак, имеется сервер Windows Server 2016 STD с дополнительным диском E: для размещения профилей пользователей. На этом диске я создаю папку RDSProfiles, а в ней папку с именем коллекции BOFC_TEST, которая в будущем будет присвоена группе серверов с ролью RD session host.

Remote desktop services - 002

У папки BOFC_TEST необходимо настроить безопасность, отключив наследование настроек от родительской папки.

Remote desktop services - 003

Полный доступ (Full control) к папке должны иметь только следующие учетные записи:
- система SYSTEM;
- администраторы Administrators (RDSPROFILE\Administrators);
- сервер брокера подключений RDSBROKER (DOMAIN_NAME\RDSBROKER).

Remote desktop services - 004

На вкладке общего доступа необходимо выбрать Расширенные настройки доступа (Advanced sharing), создать сетевую папку с именем папки с долларом BOFC_TEST$ (символ $ скроет папку от посторонних глаз), а в настройках безопасности сетевой папки указать Everyone - Full control. Данная настройка никак не повлияет на уязвимость папки, так как доступ к содержимому регулируется разрешениями NTFS, которые настроены ранее (доступ только системе, администраторам и брокеру).

Remote desktop services - 005

Проверить доступ к папке со своего компьютера можно, набрав полное имя сервера и сетевого ресурса, например \\RDSPROFILE.domain.com\BOFC_TEST$.

Remote desktop services - 006

В следующей части я расскажу, как создать сервер управления RDS инфраструктурой и установить на него роль брокера подключений и веб сервис доступа к RDS.

Все заметки о службе терминалов в моем блоге можно найти по тегу RDS.