Перейти к основному контенту

Remote Desktop Gateway

Remote Desktop Gateway (RDGW) - обеспечивает безопасный доступ к сервисам RDS из Интернета.

Настройка Remote Desktop Gateway выполняется по протоколу RADIUS и происходит в три этапа:

  • Этап 1. Установка и настройка фермы Remote Desktop Services
  • Этап 2. Установка роли RD Gateway
  • Этап 3. Настройка аутентификации через RADIUS сервер

Этап 1. Установка и настройка фермы Remote Desktop Services

Определения:

Remote Desktop Session Host (RDSH) - узлы сеансов RDS, на которых работают приложения пользователей и которым будет осуществляться подключение пользователей;

Remote Desktop Connection Broker (RDCB) - посредник RDS подключений. Используется для управления фермой RDS, распределения нагрузки, обеспечивает переподключение пользователей к своим сеансам, хранит коллекции RDS и опубликованные приложения RemoteApps;

RD Web Access (RDWA) - веб интерфейс для доступа к рабочим столам, программам RemoteApp;

Remote Desktop Licensing (RD Licensing) - служба лицензирования, управляет RDS лицензиями (CAL) пользователей.

Перед созданием RDS фермы выполните предварительные требования:

  1. Установите одинаковую версию Windows Server на все сервера. Далее настройте их и добавьте в один домен AD.

  2. Откройте консоль Active Directory Users and Computers (ADUC) (Run -> dsa.msc) и переместите все хосты с ролью RDSH в одну OU в AD.

  3. Создайте в домене группу для рабочих серверов с ролью RDSH (например, idb-rdsh) и добавьте в нее все сервера RDSH.

Далее выполните следующие действия:

  1. Откройте Server Manager и добавьте все планируемые RDS сервера в консоль. Для этого нажмите правой кнопкой мыши на All Server в списке слева, далее на Add servers.

  1. Нажмите ОК.

  2. В меню Server Manager выберите Add Roles and Features -> Remote Desktop Services installation -> Standard deployment -> Session-based deployment.

  3. Далее укажите, как необходимо распределить роли RDS по серверам. В мастере построения фермы RDS выберите сервера для соответствующих ролей. Например,

  • RD Connection Broker - bip-udc02

  • RD Web Access - bip-udc02

  • RD Session hosts - bip-udc02, bid-dwin02

  1. Установите флажок напротив Restart destination server automatically if required и нажмите кнопку Deploy. Дождитесь установки ролей RDS на всех серверах.

Этап 2. Установка роли RD Gateway

Для добавления роли Remote Desktop Gateway выполните следующие действия:

  1. В меню Server Manager выберите Add Roles and Features -> Role-based or feature-based installation -> выберите сервер bip-udc02 и нажмите Next -> в списке раскройте Remote Desktop Services и выберите Remote Desktop Gateway, нажмите Add Features и Next -> Next -> Install. Дождитесь установки роли.

  2. Далее создайте группы доступа в Active Directory с помощью консоли ADUC:

  • rdgwExtUsers - группа пользователей, которым разрешено аутентифицироваться на RDGW.

  • rdgwExternalAdmins - группа для доступа к терминальным серверам через RDGW (данную группу добавьте в группу rdgwExtUsers).

  • rds-farm - должна включать в себя все хосты RDSH и RD Conneciton Broker, к которым необходимо разрешить подключаться через шлюз удаленных рабочих столов.

Настройка политик доступа RD Gateway

  1. Для управления политиками и правилами доступа на RDGW используется консоль RD Gateway Manager (Run -> tsgateway.msc). Настройка политик и правил доступа может осуществляться локально на сервере RDGW, либо на центральном сервере NPS (Network Policy Server).
  • В случае настройки политик на центральном сервере NPS выполните следующие действия:
  1. Разверните Policies -> правой кнопкой нажмите на Connection Authorization Policies и выберите Configure Central RD CAP.

  2. На вкладке RD CAP Store выберите Central server running NPS.

  3. В поле ниже введите IP-адрес или имя центрального сервера NPS и нажмите Add.

  • В случае настройки политик локально выполните следующие действия:
  1. Разверните Policies -> правой кнопкой нажмите на Connection Authorization Policies и выберите Configure Central RD CAP

  2. На вкладке RD CAP Store выберите Local server running NPS

  1. Далее настройте два типа политик:
  • Connection Authorization Policies (RD CAP) - определяют, кому разрешено авторизоваться на шлюзе RDS.

  • Resource Authorization Policies (RD RAP) - определяют, кому и к каким ресурсам (компьютерам) внутренней сети разрешено подключаться через RDGW.

  • Создайте политику RD CAP:
  1. Разверните Policies -> правой кнопкой нажмите на Connection Authorization Policies и выберите Create New Policy -> Wizard

  1. Укажите имя политики rdgwExtUsers

  2. Выберите тип аутентификации по паролю и укажите группу пользователей rdgwExtUsers

  3. В окне Enable or Disable Device Redirection укажите, какие устройства разрешено прокидывать в RDP сессию (буфер обмена, принтера, локальные диски и т.д.)

  4. Далее настройте таймауты для RDP сеансов

  5. Подтвердите создание политики

  • Создание политики RD RAP:
  1. Разверните Policies -> правой кнопкой нажмите на Resource Authorization Policies и выбрать Create New Policy -> Wizard

  2. Укажите имя политики rdgwExternalAdmins

  3. Укажите группу пользователей rdgwExternalAdmins

  4. На вкладке Network Resources укажите группу rds-farm

  5. Укажите разрешенные для подключения порты. По умолчанию используется только стандартный RDP порт 3389. Возможно открыть дополнительные порты.

  6. Подтвердите создание политики.

Настройка SSL сертификата для Remote Desktop Gateway

Для защиты подключения к шлюзу RDS на нем нужно установить сертификат. Оптимально использовать коммерческий сертификат, выданный внешним центром сертификации. Возможно использовать бесплатного SSL сертификат Let's Encrypt. Также можно использовать самоподписанный SSL сертификат Windows, но внешние клиенты должны обязательно доверять такому сертификату (сертификат необходимо распространить на клиентов).

Для подключения из интернета в поле Subject Name (CN) или Subject Alternative Name (SAN) сертификата должно обязательно содержаться DNS имя сервера RDGW, которое будет использоваться для подключения внешними клиентами (доступное из интернета).

  1. Откройте свойства сервера RDGW в консоли RD Gateway и перейдите на вкладку SSL Certificate.

  1. При использовании самоподписанного сертификата выберите пункт Create a self-signed certificate -> Create and Import Certificate.

  1. Укажите имя сертификата (DNS будет использоваться клиентами для подключения к RDGW) и каталог, в который нужно сохранить сертификат (сертификат нужно распространить на клиентов).

В Windows Server 2019 для подключения к RD Gateway используются следующие порты:

  • HTTP Port (default) - 443/TCP

  • UDP Port (default) - 3391/UDP (использование транспортного протокола UDP не обязательно, но его поддержка позволяет значительно улучшить производительность туннеля и качество картинки в RDP сессии)

Необходимо пробросить эти порты на RDGW хост на сетевом оборудовании.

  1. Откройте консоль RDGW Manager и убедитесь, что в ней нет ошибок и все пункты зеленые.

Настройка RDP клиента для подключения шлюзу RD Gateway

Если используетcя самоподписанный сертификат на RDGW, поместите его в доверенные корневые сертификаты (Trusted Root Certification Authorities) на клиенте.

  1. Запустите RDP клиент (Run -> mstsc.exe)

  2. На вкладке General укажите имя хоста или компьютера, к которому нужно подключиться по RDP

  1. Затем перейдите на вкладку Advanced и щелкните на кнопку Settings в разделе Connect from anywhere

  1. Выберите опцию Use these RD Gateway server settings, укажите внешнее DNS имя, по которому доступен RDGW сервер (это же имя должно быть указано в сертификате).Если используется нестандартный порт для RDGW, его нужно указать после имени сервера через двоеточие. Например: bip-udc02.bip.loc:4443.

  1. Чтобы при подключении клиент не запрашивал пароль два раза, включите опцию Use my RD Gateway credentials for the remote computer

  2. Нажмите кнопку Connect и введите пароль для подключения к RDGW серверу в окне RD Gateway Server Credentials

  3. Запустите консоль RD Gateway Manager, перейдите в раздел Monitoring и убедитесь, что в списке отображается подключение клиента.

Этап 3. Настройка аутентификации через RADIUS сервер

Настройка таймаутов RADIUS на RD Gateway NPS

  1. В меню Server Manager выберите Tools -> Network Policy Server.

  2. В консоли NPS (Local) разверните RADIUS Clients and Servers -> правой кнопкой нажмите на Remote RADIUS Server Groups -> New.

  3. Введите желаемое имя новой группы серверов (например, blitz group) и нажмите Add

  1. В открывшемся окне на вкладке Address в поле Server введите IP-адрес Radius-сервера

  1. На закладке Authentication/Accounting введите Shared secret в соответствующее поле и продублируйте в поле Confirm shared secret. Убедитесь, что все 3 галки на вкладке проставлены

  1. На вкладке Load Balancing выставите следующие значения:

  1. Нажмите OK -> OK.

Подготовка NPS к приему аутентификации от сервера MFA

  1. В консоли NPS (Local) разверните RADIUS Clients and Servers и нажмите правой кнопкой на RADIUS Clients -> New

  2. На закладке Settings установите флажок Enable this RADIUS

  3. В поле Friendly name введите любое имя (например, Blitz или IP-адрес сервера MFA)

  4. В поле Address введите IP-адрес или DNS сервера MFA

  5. Введите Shared Secret в поля в нижней части окна (тот же Shared Secret, что был указан при настройке таймаутов RADIUS)

Настройка политик запросов на подключение

  1. В консоли NPS (Local) разверните Policies и нажмите на Connection Request Policies

  2. В правом окне нажмите правой кнопкой на политике TS GATEWAY AUTHORIZATION POLICY и нажмите Duplicate Policy

  1. Кликните дважды по политике Copy of TS GATEWAY AUTHORIZATION POLICY

  2. На вкладке Overview в поле Policy name введите имя новой политики (например, blitz-policy)

  3. Установите флажок Policy enabled

  4. В пункте Type of network access server выберите Remote Desktop Gateway

  1. На вкладке Conditions нажмите Add

  2. В открывшемся окне выберите пункт Client Friendly Name и нажмите Add

  1. В открывшемся окне введите Friendly Name, который указывали ранее при создании записи RADIUS Clients в предыдущих пунктах и нажмите OK

  2. На вкладке Settings нажмите на Authentication и проставьте пункт Authenticate requests on this server

  1. На той же закладке выберите пункт Attribute, далее выберите тип атрибута User-Name и нажмите Add

  2. В открывшемся окне введите ^BIP\\ в поле Find. Оставьте поле Replace with пустым и нажмите OK -> OK

  3. Нажмите правой кнопкой по новой политике. Далее нажмите Move Up. Новая политика должна стоять выше, чем старая политика TS GATEWAY AUTHORIZATION POLICY