Настройка gateway windows server

Remote Desktop Gateway это один из сервисов роли Remote Desktop Services в Windows Server для организации защищенного доступа из Интернета к службам рабочих столов и опубликованным RemoteApp приложениям через HTTPS шлюз. Сервер с ролью RD Gateway выступает в роли посредника между внешними клиентами и развернутыми внутри службами RDS. При использовании RDGW пользователям не нужно настраивать VPN для подключения к RDS в корпоративной сети. Для подключения используется стандартный клиент Remote Desktop Connection (mstsc.exe). В этой статье рассмотрим процесс развертывания шлюза Remote Desktop Gateway на Windows Server 2019 (инструкция применима для Windows Server 2022/2016 и 2012 R2).

Содержание:

  • Установка роли RDS-Gateway в Windows Server
  • Настройка политик доступа RDS Gateway
  • Настройка SSL сертификата для Remote Desktop Gateway
  • Настройка RDP клиента для подключения шлюзу RD Gateway
  • Настройка шлюза RD Gateway в рабочей группе

Установка роли RDS-Gateway в Windows Server

Служба шлюза удаленных рабочих столов не является обязательным компонентом фермы RDS, поэтому ее нужно установить отдельно. В большинстве случае рекомендуется использовать отдельный сервер для развертывания RDGW или можно совместить его с RDWeb.

Предполагается, что в вашей сети уже развернута служба каталогов Active Directory и ферма серверов RDS.

Вы можете установить роль Remote Desktop Gateway через Server Manager (Add roles & Features -> Server Role -> Remote Desktop Services) или с помощью PowerShell.

установка роли Remote Desktop Gateway черех Server manager

При установке службы RDGW также устанавливаются веб сервер IIS и роль NPS (Network Policy Server).

Убедитесь, что роль RDS-Gateway установлена:

Get-WindowsFeature RDS*

powershell установить роль RDS-Gateway

Или установите роль в Windows Server с помощью команды Install-WindowsFeature:

Install-WindowsFeature RDS-Gateway -IncludeAllSubFeature –IncludeManagementTools

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

  • rdgwExtUsers – группа пользователей, которым разрешено аутентифицироваться на RDGW;
  • rdgwExternalAdmins – группа для доступа к терминальным серверам через RDGW;
  • msk-rds-farm — должна включать в себя все хосты RDSH и RD Conneciton Broker, к которым вы хотите разрешить подключаться через шлюз удаленных рабочих столов.

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

Для управления политиками и правилами доступа на RDGW используется консоль RD Gateway Manager (tsgateway.msc). Здесь нужно настроить два типа политик:

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

Создайте сначала политику RD CAP:

  1. Разверните Policies -> Connection Authorization Policies и выберите пункт меню Create New Policy -> Wizard;
  2. Укажите имя политики (rdgwExtUsers);
  3. Выберите тип аутентификации (по паролю и/или по смарт карте), укажите группу пользователей, которым разрешено аутентифицироваться на RDGW;
    группа, которой разрешено аутентфицироваться на шлюзе удаленных рабочих столов

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

  5. Далее можно настроить таймауты для RDP сеансов;
  6. Подтвердите создание политики.

Также вы можете создать политику клиентского доступа RDGW с помощью PowerShell:

Import-Module -Name RemoteDesktopServices
New-Item -Path 'RDS:\GatewayServer\CAP' -Name 'rdgwAllowAutht-CAP' -UserGroups rdgwExtUsers -AuthMethod '1'

Затем создайте политику RD RAP:

  1. В консоли RD Gateway Manager выберите Policies -> Resource Authorization Policies и выберите пункт меню Create New Policy -> Wizard;
    RD Gateway manager создать политику Resource Authorization Policies

  2. Укажите имя политики: rdgwExternalAdmins;
  3. Укажите имя группу, которой разрешено подключаться к внутренним RDS ресурсам;
    разрешить подключение через RDGW для группу пользователей

  4. На вкладке Network Resources нужно указать к каким RDS серверам разрешено подключаться вашим внешним пользователям (msk-rds-farm);
    разрешить подключение к группе серверов

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

  6. Политика готова.

Правило RAP также можно создать с помощью PowerShell:
New-Item -Path RDS:\GatewayServer\RAP -Name allowextAdminMskRDS -UserGroups [email protected] -ComputerGroupType 1 -ComputerGroup [email protected]

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

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

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

  1. Откройте свойства сервера RDGW в консоли RD Gateway и перейдите на вкладку SSL Certificate;
  2. В этом примере мы используем самоподписанный сертификат. Выберите пункт Create a self-signed certificate -> Create and Import Certificate;
    SSL сертификат для Remote Desktop GW

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

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

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

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

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

настройка Remote Desktop Gateway на Windows Server 2019 закончена

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

Теперь можно настроить клиент Remote Desktop Connection для подключения к вашим внутренним RDS хостам через шлюз удаленных рабочих столов.

  1. Запустите клиент
    mstsc.exe
    ;
  2. На вкладке General укажите имя RDSH хоста, RDS фермы, или компьютера к которому вы хотите подключиться по RDP (можно также указать имя пользователя и использовать сохраненные учетные данные для RDP подключения);
  3. Затем перейдите на вкладку Advanced и щелкните на кнопку Settings в разделе Connect from anywhere (Configure settings to connect through Remote Desktop Gateway when I am working remotely);
    настройка клиента mstsc

  4. Выберите опцию Use these RD Gateway server settings, укажите внешнее DNS имя по которому доступен ваш RDGW сервер (напоминаю, что это имя должно быть указано в сертификате).Если вы используете нестандартный порт для RDGW, его нужно указать после имени сервера через двоеточие, например: gw.winitpro.ru:4443;
    RDP подключение через RD Gateway

  5. Чтобы не при подключении клиент не запрашивал пароль два раза, включите опцию Use my RD Gateway credentials for the remote computer;
  6. Нажмите кнопку Connect и введите пароль для подключения к RDGW серверу в окне RD Gateway Server Credentials;
  7. Клиент должен установить подключение с RDS/RDP хостом в вашей локальной сети;
  8. Запустите консоль RD Gateway Manager, перейдите в раздел Monitoring и проверьте, что в списке отображается подключение вашего клиента.
    мониторинг подключений через шлюз удаленного доступа рабочих столов

Если вы используете утилиту RDCMan для RDP подключений, параметры RD Gateway можно задать на вкладке GatewaySetting. Включите опцию Use a TS Gateway server и укажите параметры подключения.

rdcman подключение через remote desktop gateway

Отслеживать удачные и неудачные подключения пользователей через RDGW можно с помощью журнала событий Applications and Services Logs -> Microsoft -> Microsoft-Windows-TerminalServices-Gateway -> Operational.

При успешном подключении пользователя через RDGW в журнале появится событие с Event ID 205 от источника TerminalServices-Gateway

The user "winitpro\kbuldogov", on client computer "xx.xx.xx.xx", successfully connected to the remote server "msk-rdsman.winitpro.ru" using UDP proxy. The authentication method used was: "Cookie".

Event ID 205 событие подключения через rdgw

Если вы хотите запускать RemoteApp через RD Gateway, нужно добавить в *.rdp файл remoteapp следующие строки:

gatewayhostname:s:gw.winitpro.ru
gatewayusagemethod:i:1

В этой статье мы показали, как настроить роль Remote Desktop Gateway на Windows Server для реализации защищенного удаленного доступа в вашу сеть с помощью RDP over HTTPS.

Настройка шлюза RD Gateway в рабочей группе

При размещении отдельностоящего RDSH сервера в интернете, открывать наружу стандартный RDP порт 3389 небезопасно. В журналах безопасности хоста будут постоянно фиксироваться события перебора паролей по RDP. Вы можете безопасно опубликовать RDSH в интернете через RD Gateway и использовать для RDP доступа защищённое SSL/TLS подключение по порту TCP:443.

Вопреки распространённому убеждения, RD Gateway можно развернуть без домена Active Directory (в рабочей группе).

Предполагаем, что вы развернули отдельный RDS хост с Windows Server в рабочей группе.

Установите роль RDGateway с помощью команды:

Install-WindowsFeature RDS-Gateway -IncludeAllSubFeature –IncludeManagementTools

Откройте консоль RD Gateway Manager (
tsgateway.msc
) и создайте политику Connection Authorization Policy (CAP).

  1. В настройках политики разрешите подключение по паролям для пользователей из локальной группы
    BUILTIN\Remote Desktop Users
    ;

    RDGW в рабочей группе

  2. Выберите какие устройства разрешено перенаправлять в RDP сессию клиентам (по умолчанию разрешено перенаправлять все, включая принтеры, локальные диски и буфер обмена в RDP);
    настройки перенаправления устройств в RDGW

  3. На следующем этапе можете настроить таймауты неактивности для RD сессий.

После этого создайте новую Resource Authorization Policy (RAP).

  1. Разрешите подключения для группы
    BUILTIN\Remote Desktop Users
    ;

    RD gateway доступ для группы BUILTIN\Remote Desktop Users

  2. Выберите опцию Allow users to connect to any network resource (computer);
    Разрешить подключение RDP пользователей

  3. Разрешите подключение только на RDP порт 3389.
    открыть только доступ для 3389 портв

Следующий этап – установить SSL/TLS сертификат для защиты подключений к шлюзу RDS. Можно использовать бесплатный SSL сертификат Let’s Encrypt или самоподписанный SSL сертификат Windows (для простоты мы будем использовать этот вариант).

По умолчанию для RDGW генерируется самоподписанный сертификат со сроком действия полгода. С помощью PowerShell можно создать сертификат с большим сроком. В CN имени сертификата или в Subject Alternative Name (DNS) должно содержаться внешнее DNS имя и/или статический (белый) IP адрес сервера RD Gateway, к которому будут подключаться клиенты. Укажите через запятую все необходимые имена при создании сертификата:

$todaydate = Get-Date
$addyear = $todaydate.AddYears(5)
New-SelfSignedCertificate -dnsname rdgw.winitpro.ru,123.123.123.12,gw.mydomain.ru -notafter $addyear -CertStoreLocation cert:\LocalMachine\My

Откройте свойства сервера RDGW, перейдите на вкладку SSL Certificates -> Select an existing certificate from the RD Gateway Certificates Local/Personal Store -> Import Certificate. Выберите созданный вами сертификат.

Самоподписанный SSL сертификат для Remote Desktop Gateway

Теперь можно настроить подключение на клиенте. В первую очередь надо экспортировать с сервера RDGW сертификат.

  1. Откройте консоль сертификатов компьютера (
    certlm.msc
    );
  2. Разверните хранилище Personal -> Certificates;
  3. Выберите сертификат -> All tasks -> Export;
    Экспорт сертификата RDGW

  4. Экспортируйте сертификат в файл *.CER (без закрытого ключа);

Этот сертификат нужно установить на клиенте. Если клиент не доверяет сертификату RD Gateway, он не сможет подключиться к шлюзу.

Вы можете установить сертификат вручную или через GPO. Установить сертификат в Trusted Root Certification Authorities.

Добавить сертификат RDGW в Trusted Root Certification Authorities

Теперь откройте клиент
mstsc
и настройте подключение через Remote Desktop Gateway. Укажите имя или IP адрес хоста RDGW в разделе Advanced -> Settings -> Use these RD Gateway settings.

Подключение к RDS через шлюз Remote Desktop Gateway в рабочей группе

В качестве имени RDP хоста укажите
localhost
и имя пользователя для подключения в формате
rdssrv01\user1
, где rdssrv01- локальное имя компьютера (hostname) Windows Server с ролью RDS.

Если SAN имя в сертификат не соответствует имени RD gateway хоста в подключении, появится ошибка:

Your computer cannot connect to the remote computer because the remote desktop gateway server address requested, and the certificate subject name do not match.

Имя remote desktop gateway server не совпадает с именем в сертификате

В этой статье мы подробно рассмотрим, как создать интернет-шлюз на базе Windows Server 2022, используя возможности Remote Desktop Gateway и роли сервера шлюза. Этот процесс позволяет настроить сервер для раздачи интернета в локальную сеть через два сетевых интерфейса: один для приема интернет-трафика, другой для его распределения. Это решение удобно для создания шлюзов в корпоративных и виртуальных сетях, обеспечивая централизованное управление доступом к сети.

Приобрести Windows Server 2022 можно у нас в магазине от 2790 ₽.

Скачать оригинальные дистрибутивы Windows Server 2022 можно в нашем каталоге.

Требования для настройки шлюза

Для того чтобы создать интернет-шлюз, вам потребуется сервер с двумя сетевыми интерфейсами:

— Откройте «Параметры сети и интернет» в правом нижем углу

— Перейдите в Ethernet > Настройка параметров адаптера

Здесь должно быть два сетевых интерфейса

LAN-интерфейс для локальной сети (внутренней)

WAN-интерфейс для подключения к интернету (внешней)

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

Шаг 1: Проверка сетевых интерфейсов

1. На сервере должно быть два сетевых адаптера: один для внутренней сети (LAN-интерфейс), другой для внешней сети (WAN-интерфейс).

2. WAN-интерфейс получает интернет, а через LAN-интерфейс будет происходить его раздача.

Проверьте статус подключения на тестовых компьютерах.

— Нажмите «пуск» и в поиске введите «cmd»

— В командной строке введите ping 8.8.8.8 -t

В данный момент интернета на них нет.

Шаг 2: Установка роли «Удаленный доступ»

1. Откройте Диспетчер серверов и выберите Добавить роли и компоненты.

2. Нажмите Далее несколько раз, пока не дойдете до списка ролей.

3. В списке выберите Удаленный доступ и нажмите Далее несколько раз, пока не дойдете до Cлужбы ролей.

4. В окне компонентов выберите Маршрутизация и нажмите Добавить компоненты.

5. Нажмите Далее пока не дойдете до Подтверждение

6. После чего установите компоненты нажав на Установить.

7. После окончания установки нажмите «Закрыть»

Шаг 3: Настройка маршрутизации и удаленного доступа

1. После установки роли, в Диспетчере серверов появится оснастка Удаленный доступ.

2. Откройте оснастку и перейдите в раздел Средства.

3. В списке выберите Маршрутизация и удаленный доступ.

4. Щелкните правой кнопкой мыши на сервере и выберите Настроить и включить маршрутизацию и удаленный доступ.

5. В мастере настройки Нажмите Далее.

6. Выберите Преобразование сетевых адресов (NAT) и нажмите Далее.

7. Выберите WAN-интерфейс в качестве интерфейса для подключения к интернету.

8. Нажмите Готово для завершения настройки.

Шаг 4: Проверка подключения к интернету

1. После завершения настройки маршрутизации проверьте подключение к интернету на тестовых компьютерах. Теперь интернет должен появиться на обоих устройствах.

2. Выполните команду ping 8.8.8.8 -t на каждом компьютере, чтобы убедиться, что интернет-соединение установлено.

Заключение

Вы успешно настроили интернет-шлюз на базе Windows Server 2022 с использованием двух сетевых интерфейсов и функции маршрутизации. Теперь сервер может раздавать интернет во внутреннюю сеть через LAN-интерфейс. Такой способ настройки удобен для создания шлюзов в корпоративных или виртуальных сетях.

Лицензионный ключ активации Windows Server 2022 от

Опубликовано:

Используемые термины: Remote Desktop Gateway, Active Directory, Терминальный сервер.

В данном руководстве мы рассмотрим развертывание роли шлюза удаленных рабочих столов (Remote Desktop Gateway или RDG) на отдельном сервере с Windows Server 2019. Действия будут аналогичны для Windows Server 2012 и 2016 (даже, в основных моментах, 2008 R2). Предполагается, что в нашей инфраструктуре уже имеются:

1. Служба каталогов Active Directory — настроено по инструкции Как установить роль контроллера домена на Windows Server.

2. Два терминальных сервера — настроено по инструкции Установка и настройка терминального сервера на Windows Server.

Пошагово, мы выполним следующие действия:

Установка серверной роли
Настройка шлюза
    Создание групп в AD
    Создание политик RDG
    Привязка сертификата
Настройка клиента для подключения
Remoteapp через Gateway
DNS round robin
Часто встречаемые ошибки

Установка роли

Открываем Диспетчер серверов:

Переходим в УправлениеДобавить роли и компоненты:

Переход к добавлению ролей и компонентов

При появлении окна приветствия нажимаем Далее (при желании, можно поставить галочку Пропускать эту страницу по умолчанию):

Пропускаем страницу приветствия

На страницы выбора типа установки оставляем выбор на Установка ролей или компонентов:

Выбираем установку ролей или компонентов

Выбираем целевой сервер — если установка выполняется на сервере локально, то мы должны увидеть один сервер для выбора:

Выбираем наш сервер

Ставим галочку Службы удаленных рабочих столов:

Дополнительные компоненты нам не нужны:

Пропускаем страницу с выбором компонентов

… просто нажимаем Далее.

На странице служб удаленных рабочих столов идем дальше:

Переход к настройкам роли во время установки

Выбираем конкретные роли — нам нужен Шлюз удаленных рабочих столов. После установки галочки появится предупреждение о необходимости поставить дополнительные пакеты — кликаем по Добавить компоненты

Ставим галочку для установки шлюза удаленных рабочих столов

Откроется окно для настроек политик:

Пропускаем службы политики сети и доступа

… нажимаем Далее.

Откроется окно роли IIS:

Переход к настройке роли веб-сервера

… также нажимаем Далее.

При выборе служб ролей веб-сервера ничего не меняем:

Выбираем службы ролей для веб-сервера

… и идем дальше.

В последнем окне ставим галочку Автоматический перезапуск конечного сервера, если требуется:

Ставим галочку для автоматической перезагрузки после установки

Нажимаем Установить:

Дожидаемся окончания установки роли:

Завершение установки роли RDG

Сервер может уйти в перезагрузку.

Настройка RDG

Для настройки Microsoft Remote Desktop Gateway мы создадим группу компьютеров в Active Directory, настроим политику для RDG и создадим сертификат.

Создание групп для терминальных серверов

Политика ресурсов позволит задать нам конкретные серверы, на которые терминальный шлюз позволит нам подключаться. Для этого мы откроем консоль Active Directory — Users and computers (Пользователи и компьютеры Active Directory) и создаем группу:

Создание группы безопасности для серверов

* в данном примере мы создаем группу All terminals в организационном юните Servers Group. Это группа безопасности (Security), локальная в домене (Domain local).

Добавим в нашу группу терминальные серверы:

* в данном примере у нас используются два сервера — Terminal-1 и Terminal-2.

Закрываем консоль Active Directory — Users and computers.

Настройка политик

Для предоставления доступа к нашим терминальным серверам, создадим политики для подключений и ресурсов.

В диспетчере сервера переходим в СредстваRemote Desktop ServicesДиспетчер шлюза удаленных рабочих столов:

Открываем диспетчер шлюза удаленных рабочих столов

Раскрываем сервер — кликаем правой кнопкой по Политики — выбираем Создание новых политик безопасности:

Устанавливаем переключатель в положении Создать политику авторизации подключений к удаленным рабочим столам и авторизации ресурсов удаленных рабочих столов (рекомендуется):

Выбираем создание обоих политик в одном мастере

Даем название политике:

Называем политику для авторизации подключений

Задаем параметры авторизации:

Указываем группу, связанную с политикой

* мы указали, что пользователи должны подтверждать право вводом пароля, также мы указали, что для применения политики они должны принадлежать группе Domain Users.

В следующем окне есть возможность настроить ограничения использования удаленного рабочего стола. При желании, можно их настроить:

Задаем настройки подключения по RDP

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

Далее настраиваем временные ограничения использования удаленного подключения. Если в этом есть необходимость, оставляем галочки в состоянии Включить и указываем количество минут, по прошествии которых сеанс будет отключен:

Настройка таймаутов

В следующем окне мы увидим вне введенные настройки:

Заданные настройки

Идем далее.

Откроется страница создания политики для авторизации ресурса — задаем для нее название:

Задаем имя для авторизации ресурсов

Указываем группу пользователей, для которой будет применяться политика:

Указываем группу, связанную с политикой ресурсов

* как и при создании первой политики, мы добавили группу Domain Users.

Теперь выбираем группу ресурсов, на которую будет разрешен доступ со шлюза терминалов:

Группа серверов, на которые разрешаем доступ через шлюз удаленных рабочих столов

* мы выбрали группу, созданную нами ранее в AD.

Указываем разрешенный для подключения порт или диапазон портов:

Разрешаем только порт 3389 для подключений

* в данном примере мы разрешим подключение по порту 3389, который используется по умолчанию для RDP.

Нажимаем Готово:

Политики будут созданы.

Настройка сертификата

Для работы системы нам необходим сертификат, который можно купить или получить бесплатно от Let’s Encrypt. Однако, с некоторыми неудобствами, будет работать и самоподписанный. Мы рассмотрим вариант настройки с ним.

Запускаем «Диспетчер шлюза удаленных рабочих столов» — кликаем правой кнопкой по названию нашего сервера — выбираем Свойства:

Переходим к свойствам RDG

Переходим на вкладку Сертификат SSL:

Переходим на вкладку для настройки сертификата

Выбираем вариант Создать сомозаверяющий сертификат и кликаем по Создать и импортировать сертификат:

Создаем новый сертификат

Задаем или оставляем имя для сертификата — нажимаем OK:

Задаем название для сертификата и указываем путь его хранения

Мы увидим информацию о создании сертификата:

Сертификат создан

Консоль диспетчера шлюза перестанет показывать ошибки и предупреждения:

Ошибок и предупреждений нет

Сервер готов к работе.

Подключение к серверу терминалов через шлюз

Выполним первое подключение с использованием шлюза. В качестве клиентской операционной системы могут использоваться Windows, Linux, Mac OS. Рассмотрим пример на Windows 10.

Запускаем «Подключение к удаленному рабочему столу» (приложение можно найти в Пуск или ввести команду mstsc). На вкладке Общие вводим локальное имя конечного сервера, к которому мы хотим подключиться:

Вводим название локального терминального сервера

* в нашем случае мы будем подключаться к серверу terminal-1.dmosk.local.

Переходим на вкладку Дополнительно и кликаем по Параметры:

Переходим на вкладку Дополнительно для настройки Remote Desktop Gateway

Переключаем параметр приложения в положение Использовать следующие параметры сервера шлюза удаленных рабочих столов и указываем внешнее имя сервера:

Задаем внешнее имя для сервера RDG

* важно указать именно имя сервера, а не IP-адрес. В моем примере имя сервера rdp.dmosk.local (данное имя не является правильным внешним, но это только пример).

Кликаем Подключить:

Если мы используем самозаверенный сертификат, приложение выдаст ошибку. Кликаем по Просмотреть сертификат:

Переходим на вкладку Состав и кликаем Копировать в файл:

Указываем путь для выгрузки файла:

Указываем путь к файлу для выгрузки

Открываем папку, куда сохранили сертификат. Кликаем по сохраненному файлу правой кнопкой и выбираем Установить сертификат:

Выбираем Локальный компьютерДалее:

Установка сертификата для локального компьютера

В качестве размещения сертификата выбираем Доверенные корневые центры сертификации:

Помещаем сертификат в корневые центры сертификации

Импортируем сертификат.

После снова пробуем подключиться к удаленному рабочему столу через шлюз:

Система запросит логин и пароль для подключения (возможно, дважды) — вводим данные для учетной записи с правами на подключение (на основе настройки политики RDG).

Настройка Remoteapp через Gateway

Предположим, у нас есть опубликованное приложение Remoteapp и мы хотим подключаться к терминальному серверу через настроенный шлюз. Для этого открываем rdp-файл приложения на редактирование (например, блокнотом) и вносим в него изменения:


gatewayhostname:s:rdg.dmosk.local
gatewayusagemethod:i:1

* где:

  • gatewayhostname:s:rdg.dmosk.local — добавленная строка. Настройка говорит, что если при подключении к серверу нужно использовать шлюз, то это должен быт rdg.dmosk.local.
  • gatewayusagemethod:i:1 — отредактированная строка. Указывает, что необходимо использовать шлюз.

Пробуем подключиться.

Несколько терминальных серверов и dns round robin

При наличие нескольких серверов терминалов, мы можем создать несколько записей в DNS, чтобы получать по round robin разные серверы:

Созданные записи в DNS для разных терминалок

Однако, при попытке подключиться к незарегистрированному серверу мы увидим ошибку:

Ошибка при подключении к серверу по новой записи через шлюз

Для решения переходим в настройку шлюза — кликаем правой кнопкой по Политики авторизации ресурсов и выбираем Управление локальными группами компьютеров:

Переход к управлению локальными группами компьютеров в RDG

Выбираем нужную группу компьютеров и нажимаем Свойства:

Переход к свойствам групп компьютеров в RDG

* в моем случае это была единственная группа, созданная по умолчанию.

На вкладке Сетевые ресурсы добавляем имя, созданное в DNS:

Добавляем новое имя, созданное в DNS

Теперь подключение будет выполняться без ошибок.

Возможные ошибки

При подключении мы можем столкнуть со следующими ошибками.

1. Учетная запись пользователя не указана в списке разрешений шлюза удаленных рабочих столов.

Причиной является отсутствие пользователя, под которым идет подключение к шлюзу, в группе, которой разрешено использование политики. Для решения проблемы проверяем настройки политики — группы пользователей, которым разрешено использование политики и к каким ресурсам разрешено подключение. В итоге, наш пользователь должен быть в нужной группе, а терминальный сервер, к которому идет подключение должен быть указан в соответствующей группе ресурсов.

2. Возможно, удаленный компьютер указан в формате NetBIOS (например, computer1), но шлюз удаленных рабочих столов ожидает полное доменное имя или IP-адрес (например, computer1.fabrikam.com или 157.60.0.1).

Обращение к терминальному серверу выполняется по незарегистрированному имени. Необходимо проверить настройку в клиенте подключения или зарегистрировать ресурс, как мы это делали при настройке нескольких терминальных серверов.

3. Сертификат шлюза удаленных рабочих столов просрочен или отозван.

В данном случае нужно проверить, какой сертификат привязан к RDG. Также нужно убедиться, что привязанный сертификат, на самом деле, не просрочен или отозван. В крайнем случае, можно заново создать сертификат.

Расскажем подробно, как настроить сервис Remote Desktop Gateway (RDG) на домене на платформах под управлением Windows Server.

Что такое RDG

Компания Microsoft предлагает использовать удаленный доступ к рабочим столам по протоколу RDP (Remote Desktop Protocol). Для создания защищенного соединения используется сервис RDG (Remote Desktop Gateway). Его особенность в том, что он использует подключение по протоколу HTTPS. При этом создается надежный канал связи, который гарантирует пользователю должный уровень защиты. Соответственно, нет нужды использовать сторонние сервисы по созданию VPN-туннеля.

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

Настройка роли

Запускаем «Диспетчер серверов», переходим на правой стороне во вкладку «Добавить роль»:

Выбор опции

Скриншот №1. Выбор опции

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

Выбор инсталляции

Скриншот №2. Выбор инсталляции

Далее утилита попросит указать сервер, для которого производится выдача роли. Выбираем из списка, нажимаем «Next». На следующем этапе появится перечень доступных ролей для сервера. Для примера проставляем «Службу удаленных рабочих столов»:

Активируем роль

Скриншот №3. Активируем роль

После нажатия кнопки «Next» на экране отобразится информация о выбранной роли. Соглашаемся и переходим к следующему шагу. Теперь в разделе Role Server появилась добавленная функция. Заходим в нее и отмечаем опции, которые необходимы администратору. Для примера, активируем RDG:

Выбор дополнительных функций

Скриншот №4. Выбор дополнительных функций

Мастер настройки проверяет выбранную роль и совместимость с серверной ОС. Если необходима установка дополнительных компонентов, то автоматически откроется рабочая область с отмеченными компонентами. Чтобы RDG работал, в операционной системы должны быть установлены сервисы web-администрирования с полным набором программных инструментов:

Выбор дополнительных компонентов

Скриншот №5. Выбор дополнительных компонентов

Рекомендуется оставить по умолчанию выбранные сервисы. Нажимаем «Next», подтверждаем установку.

Доступ к ресурсам

После установки выбранной роли переходим в главное окно «Диспетчера серверов». Выбираем раздел «Инструменты» и переходим к настройке RDG. Откроется новое рабочее окно (RD Gateway Manager). В нем переходим во вкладку с именем сервера, далее выбираем «Политики» и сконфигурируем авторизированные подключения. Нажимаем кнопку «Wizard», чтобы открыть мастер настройки:

Создание политики

Скриншот №6. Создание политики

Установщик предложит на выбор 3 пункта. Оставляем активным первую опцию:

Выбор конфигурации

Скриншот №7. Выбор конфигурации

Задаем имя новому шаблону, нажимаем «Next». Следующий этап — выбор метода аутентификации и списка пользователей, которые получат доступ к политике. Авторизация разрешена при помощи пароля либо смарт-карты, либо оба варианта. Оставляем только по паролю. Далее нажимаем кнопку «Добавить группу» и добавляем данные в поле:

Выбор авторизации и пользователей

Скриншот №8. Выбор авторизации и пользователей

Далее разграничиваем доступ к сетевым ресурсам, к которым пользователи будут подключаться через Remote Desktop Gateway:

Выбор ресурсов

Скриншот №9. Выбор ресурсов

Оставим для примера первый пункт. Нажимаем «Next». Теперь необходимо установить значения таймаутов для сетевых ресурсов. Проставляем в зависимости от требований. На экране появится окно с настроенным шаблоном. Если информация верная, переходим к следующему шагу.

Мастер настройки попросит указать политику авторизации для сетевых ресурсов. Для начала придумываем имя конфигурации. Потом добавляем группы пользователей, которые будут подключаться:

Выбор группы

Скриншот №10. Выбор группы

Теперь выбираем группу ресурсов:

Выбор группы ресурсов

Скриншот №11. Выбор группы ресурсов

Мастер настройки попросит указать номер порта для подключения. Если специальных требований нет, оставляем по умолчанию — 3389. После нажатия «Next» на экране появится информация о созданной политики авторизации. Если все верно, завершаем конфигурирование.

Установка сертификата SSL

Чтобы доступ через RDG был активен, также необходимо создать сертификат. В рабочем окне RDG Manager переходим к разделу «Имя сервера». Через контекстное меню открываем пункт «Просмотреть или изменить свойства сертификата». В открывшемся окне переключаемся на вкладку SSL. Доступно 3 варианта создания. Выбираем пункт, отмеченный красным на скриншоте:

Выбор метода

Скриншот №12. Выбор метода

Теперь прописываем имя сертификата и путь, по которому он будет храниться:

Импорт

Скриншот №13. Импорт

Нажимаем «ОК» для генерации. В итоге рабочая область менеджера выглядит следующим образом:

Общая информация

Скриншот №14. Общая информация

Для повышения уровня безопасности рекомендуется сменить порт по умолчанию для подключения через Remote Desktop Protocol. Открываем в RDG Manager раздел «Действия», пункт «Свойства». Переходим во вкладку «Свойства транспортировки». В поле, отмеченным красным, меняем значение:

Смена порта

Скриншот №15. Смена порта

Подтверждаем изменения, закрываем окно.

Как подключиться

Теперь необходимо настроить подключение через RDP. Нажимаем сочетание клавиш Win+R, вводим команду mstsc.exe. В открывшемся окне нажимаем «Параметры»:

Настройка RDP

Скриншот №16. Настройка RDP

В поле, отмеченном красным, прописываем адрес сервера, а через двоеточие в конце отмечаем номер порта. Нажимаем «ОК».

Теперь переходим во вкладку «Общие». Прописываем имя домена и пользователя:

Домен и пользователь

Скриншот №17. Домен и пользователь

Мастер настройки попросит указать пароль для учетного имени. Вводим его. Конфигурирование завершено.

Аverage rating : 3.7

Оценок: 3

220140
Минск
ул. Домбровская, д. 9

+375 (173) 88-72-49

700
300

ООО «ИТГЛОБАЛКОМ БЕЛ»

220140
Минск
ул. Домбровская, д. 9

+375 (173) 88-72-49

700
300

ООО «ИТГЛОБАЛКОМ БЕЛ»

700
300

Remote Desktop Gateway is a Remote Desktop Services role on Windows Server that is used to provide secure access to remote desktops and published RemoteApps from the Internet via an HTTPS gateway. A server with the RD Gateway role acts as an intermediary between external RDP clients and internal RD services. When using RDGW, users don’t need to configure a VPN to connect to RDS in a corporate network. The standard Remote Desktop Connection client (mstsc.exe) is used to connect. In this article, let’s look at how to deploy Remote Desktop Gateway on Windows Server 2019 (the guide is also applicable for Windows Server 2022/2016 and 2012 R2).

Contents:

  • Deploy RDS-Gateway Role on Windows Server
  • Configure Remote Desktop Gateway Authorization Policies
  • Install SSL Certificate for Remote Desktop Gateway
  • Configuring RDP Client to Use an RDS Gateway
  • Standalone RD Gateway in a Workgroup (without AD Domain)

Deploy RDS-Gateway Role on Windows Server

The Remote Desktop Gateway service is an optional RDS farm component, so you have to install it separately. In most cases, it is recommended to use a dedicated server to deploy RDGW or combine it with RD Web Access.

It is supposed that Active Directory and RDS farm are already deployed in your network.

You can install the Remote Desktop Gateway role through the Server Manager (Add roles & Features -> Server Role -> Remote Desktop Services) or with PowerShell.

Install Remote Desktop Gateway Role on Windows Server

When you install the RDGW service, the IIS web server and NPS (Network Policy Server) role are also installed.

Make sure that the RDS-Gateway role is installed:

Get-WindowsFeature RDS*

powershell - add RDS-Gateway

Or install the role on Windows Server using the Install-WindowsFeature command:

Install-WindowsFeature RDS-Gateway -IncludeAllSubFeature –IncludeManagementTools

Create access groups in Active Directory using the ADUC (dsa.msc) console or with PowerShell:

  • rdgwExtUsers – a group of users allowed to authenticate on the RDGW;
  • rdgwExternalAdmins – a group to access internal RDS hosts via the RDGW;
  • mun-rdsfarm — must include all RDS hosts and your RD Connection Broker that you want to allow connections to through the Remote Desktop Gateway

Configure Remote Desktop Gateway Authorization Policies

The RD Gateway Manager (tsgateway.msc) console is used to manage RDGW authorization policies and access rules, Configure two types of policies here:

  • Connection Authorization Policies (RD CAP) – sets who is allowed to authenticate on the RDS Gateway;
  • Resource Authorization Policies (RD RAP)– specify users and resources (computers) on the internal network that are allowed to connect via RDGW.

Create the RD CAP first:

  1. Expand Policies -> Connection Authorization Policies and select Create New Policy -> Wizard;
  2. Enter a policy name (rdgwExtUsers);
  3. Select an authentication type (a password and/or a smart card) and specify a group of users allowed to authenticate on the RDGW;
    RDS gateway authorization policy

  4. In the Enable or Disable Device Redirection window, you may specify what devices are allowed to be redirected to an RDP session (a clipboard, printers, local drives, etc.);
  5. Then you can configure timeouts for RDP sessions;
  6. Confirm the creation of the policy.

You can also create an RDGW connection policy using PowerShell:

Import-Module -Name RemoteDesktopServices
New-Item -Path 'RDS:\GatewayServer\CAP' -Name 'rdgwAllowAutht-CAP' -UserGroups rdgwExtUsers -AuthMethod '1'

After that create the RD RAP policy:

  1. In the RD Gateway Manager console, click Policies -> Resource Authorization Policies and select Create New Policy -> Wizard;
    RD Gateway manager - Resource Authorization Policy

  2. Enter a policy name: rdgwExternalAdmins;
  3. Specify the name of the user group allowed to connect to internal RDS resources;
    select security group allowed to connect RDS

  4. On the Network Resources tab, specify what RDS servers your external users are allowed to connect to (mun-rdsfarm);
  5. Then specify the port numbers you want to allow connection to. By default, it is recommended to open only the default RDP port TCP/3389. But you can open additional ports as well;
  6. The policy is ready.

You can add this RAP rule using PowerShell:
New-Item -Path RDS:\GatewayServer\RAP -Name allowextAdminMunRDS -UserGroups [email protected] -ComputerGroupType 1 -ComputerGroup [email protected]

Install SSL Certificate for Remote Desktop Gateway

To secure the connection to the RDS gateway, you must install an SSL certificate on it. It is better to use a commercial certificate issued by an external certification authority (CA). You may also use a free Let’s Encrypt SSL certificate (Configure a Let’s Encrypt certificate on IIS for Remote Desktop Gateway) or a self-signed Windows SSL certificate, but note that external clients must trust it. If a client doesn’t trust a certificate on an RDGW server, it won’t be able to connect to the gateway (you can import self-signed SSL certificates to clients manually or using GPO).

A FQDN (DNS) name of your RDGW server must be specified in the Subject Name (CN) or Subject Alternative Name fields of the certificate. It will be used for connection by external clients (available from the Web).

  1. Open the RDGW server properties in the RD Gateway console and go to the SSL Certificate tab;
  2. In this example, we are using a self-signed certificate. Select Create a self-signed certificate -> Create and Import Certificate;
  3. Enter the certificate name (this name will be used by your clients to connect to RDGW) and select a directory you want to save the certificate to (distribute this certificate to your RD clients).
    Use Self-signed cert on RD Gateway

The following ports are used to connect to RDGateway on Windows Server 2019:

  • HTTPPort (default) — 443 TCP
  • UDPPort (default) — 3391 UDP (using UDP transport protocol is optional, however, it allows to significantly improve the tunnel performance and image quality in an RDP session).

Remember to open (forward) these ports from your public IP to your RDGW host on the network hardware.

Open the RDGW Manager and make sure that there are no errors and that all items have green icons.

RDGW status

Configuring RDP Client to Use an RDS Gateway

Then you may configure a Remote Desktop Connection client to connect to your internal RDS hosts through the Remote Desktop Gateway.

If you are using a self-signed certificate on your RDGW, put it to the Trusted Root Certification Authorities on your client. See an article on how to update root certificates on Windows.

  1. Run the mstsc.exe client;
  2. In the General tab, enter the name of a standalone RDS Host, RDS farm, or a computer you want to connect to via RDP (you may also specify a user name and use saved credentials for the RDP connection);
  3. Then go to the Advanced tab and click Settings under Connect from anywhere (Configure settings to connect through Remote Desktop Gateway when I am working remotely) section;
  4. Select Use these RD Gateway server settings and specify an external DNS name of your RDGW server (note that this name must be specified in the certificate). If you are using a different port for RDGW, enter it after the server name separated by a colon, for example, gw.woshub.com:4443.
  5. To prevent entering a password twice when connecting, check the option Use my RD Gateway credentials for the remote computer;
  6. Click Connect and enter user credentials to connect to the RD Gateway server;
  7. The client will establish a connection with an RDS/RDP host in your local network;
  8. Open the RD Gateway Manager, go to the Monitoring section, and make sure that the connection of your client is displayed in the list.
    monitoring rd gateway connections

If you are using RDCMan for RDP connections, you can set RD Gateway parameters on the Gateway Setting tab. Check Use a TS Gateway server and set the connection options.

You can monitor successful or failed connections to RDGW in the Event Viewer (Applications and Services Logs -> Microsoft -> Microsoft-Windows-TerminalServices-Gateway -> Operational).

If the user has successfully connected to the RDGW, Event ID 205 will appear from the TerminalServices-Gateway source.

The user "woshub\maxadmin", on client computer "xx.xx.xx.xx", successfully connected to the remote server "mun-rdsgw.woshub.com" using UDP proxy. The authentication method used was: "Cookie".

Event ID 205 - rd gateway sucessful connection

If you want to run RemoteApps through the RD Gateway, add the following lines to the RemoteApp *.rdp file:

gatewayhostname:s:gw.woshub.com
gatewayusagemethod:i:1

In this article, we showed how to configure the Remote Desktop Gateway role on Windows Server to implement secure remote access to your network using RDP over HTTPS.

Standalone RD Gateway in a Workgroup (without AD Domain)

If you are publishing a standalone RDSH server on the Internet, it is not safe to open the default RDP port 3389 to the outside world. In this case, you will constantly see RDP password brute-force attack attempts in the host security logs. You can use the RD Gateway to securely deploy the RDSH over the Internet and use an encrypted SSL/TLS connection on port TCP:443 to connect to the RDP service.

Contrary to popular belief, the RD Gateway can be deployed without an Active Directory domain (in a Workgroup environment). Suppose you have a standalone RDS host running Windows Server in a workgroup.

Install the RDGateway role with the command:

Install-WindowsFeature RDS-Gateway -IncludeAllSubFeature –IncludeManagementTools

Open the RD Gateway Manager snap-in (tsgateway.msc) and create an Authorization Policy (CAP).

  1. In the policy settings, allow users from the BUILTIN\Remote Desktop Users local group to connect using password authentication;
  2. Select which devices can be redirected to the RDP session by clients (by default, all local devices can be redirected to RDP, including printers, local drives, and the clipboard);
    Remote Desktop Gateway policy for non-domain RDSH

  3. In the next step, you can configure RD session inactivity timeouts.

Now, create a new Resource Authorization Policy (RAP).

  1. Allow connections to members of the BUILTIN\Remote Desktop Users group;
  2. Select the option Allow users to connect to any network resource (computer);
    Allow users to connect to any network resource (computer);

  3. Only permit connections to RDP port 3389.

The next step is to install an SSL/TLS certificate on the RDS gateway. You can use a free Let’s Encrypt SSL Certificate, a commercial certificate, or a Windows self-signed cert (we’ll use this option).

By default, RDGW generates a self-signed certificate that is valid for six months. You can use PowerShell to create a certificate with a long-term validity period. The external DNS name and/or public IP address of the RD Gateway host to which clients will connect must be included in the certificate subject CN or Subject Alternative Name (DNS). When you create a certificate, specify all the names and IPs you need, separated by commas:

$todaydate = Get-Date
$addyear = $todaydate.AddYears(5)
New-SelfSignedCertificate -dnsname gw1.woshub.com,10.11.12.13,rdgw.woshub.com -notafter $addyear -CertStoreLocation cert:\LocalMachine\My

Open the RDGW Properties, go to the SSL Certificate tab -> Select an existing certificate from the RD Gateway Certificates Local/Personal Store -> Import Certificate. Select the certificate you created.

Select certificate on RD Gateway

You can now configure the RDP connection on the client. First, you need to export the certificate from the RDGW host:

  1. Open the Computer Certificates console (certlm.msc);
  2. Expand the store Personal -> Certificates;
  3. Select your RDGW cert -> All tasks -> Export;
    Export RDGM cert to file

  4. Export the certificate to a *.CER file (without the private key);

This certificate must be installed on the clients. If the client does not trust the certificate of the RD Gateway, it will not be able to establish a connection.

You can install the certificate either manually or by using the GPO. Place the cert in the Trusted Root Certification Authorities store.

install RD gateway certificate on client

Now open the mstsc.exe client and configure the connection through the Remote Desktop Gateway. Specify the FQDN or IP address of the RDGW host in Advanced -> Settings -> Use these RD Gateway settings.

Remote Desktop client - use RD gateway server settings

For the RDP hostname, specify localhost and the user name for the connection in the format rds01\user1, where rds01 is the local computer name (hostname) of Windows Server rung the RDS role.

If any of the SAN names in the certificate don’t match the RD Gateway name, an error will be displayed.

Your computer cannot connect to the remote computer because the remote desktop gateway server address requested, and the certificate subject name do not match.

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Форматировать в apfs в windows
  • 0x8007003b непредвиденная сетевая ошибка windows 10
  • Беспроводной интерфейс в системе отсутствует windows 10 что делать
  • Oobekeyboard ошибка при установке windows 10 почему
  • Параметры потоковой передачи мультимедиа windows 10 не включается