Настройка 2FA для Remote Desktop Gateway/RD Gateway - Avanpost FAM/MFA+

Общие сведения

Avanpost FAM позволяет обеспечить 2FA для пользователей, выполняющих подключение к RDS (Remote Desktop Services), опубликованных через Remote Desktop Gateway, при подключении с помощью RDP клиента. В инструкции описывается настройка 2FA для RD Gateway с использованием RADIUS-сервера Avanpost FAM и различные сценарии использования 2FA для RD Gateway.

Сценарий взаимодействия RD Gateway с Avanpost FAM для аутентификации:

  1. Пользователь подключается к RD Gateway-шлюзу через стандартный клиент RDP, вводит логин и пароль в RD Gateway. 
  2. RD Gateway выполняет проверку пароля в Microsft Active Directory, обращается к NPS, по протоколу RADIUS подключается к службе RADIUS Avanpost FAM.
  3. Если для приложения RD Gateway на стороне Avanpost FAM настроена проверка дополнительных факторов аутентификации, то RD Gateway запрашивает у пользователя проверку этих факторов в фоновом режиме.
  4. После успешной проверки аутентификаторов в соответствии с настроенным сценарием аутентификации пользователь успешно подключен к RDP.

Для RD Gateway в качестве второго фактора (2FA) возможно использование следующих методов аутентификации:

Предварительные условия

Перед началом настройки подключения Microsoft RDGW необходимо проверить выполнение следующих условий:

  1. В сети установлена и настроена инфраструктура в виде серверов Windows Server с размещёнными компонентами (ролями сервера):

    1. Windows Server 2016/2019 с доменом Active Directory (AD);
    2. Windows Server 2016/2019 с ролью Network Policy and Access Server (NPS);

      Примечание

      Может быть развёрнут на Windows Server совместно с ролью AD либо может использоваться локальный NPS на сервере RDGW

    3. Windows Server 2016/2019 с ролью Remote Desktop Gateway (RDGW/RD Gateway);
    4. Windows Server 2016/2019 с ролью Remote Desktop Services (RDS) и Remote Desktop Connection Broker (RDCB).

  2. Все сервера Windows Server находятся в домене AD.
  3. В сети установлена и настроена система Avanpost FAM.

Схема работы

Подключение MS RDS (RDP-сервера)/RD Gateway к Avanpost FAM должно быть выполнено совместно с интеграцией с корпоративным каталогом (Рисунок 1):

Рисунок 1. Схема компонентов решения при подключении MS RDP/MS RD Gateway для выполнения многофакторной аутентификации

через Avanpost FAM с использованием LDAP-каталога как источника учётных данных


RDGateway не позволяет осуществлять проверку первого фактора во внешнем RADIUS-сервере, поэтому аутентификация пользователя по доменному логину и паролю осуществляется средствами RDGW.

Примечание

Интеграция FAM с корпоративным каталогом осуществляется отдельно и выходит за пределы текущей инструкции.

Схема взаимодействия компонентов:

  1. Пользователь подключается по RDP через шлюз RDGW.
  2. RDGW проверяет логин, пароль, политику авторизации ресурсов (RAP) для первого фактора и переадресовывает запрос в Network Policy Server (NPS).
  3. NPS получает запрос от RDGateway, запрашивает проверку аутентификации по RADIUS-протоколу у доверенного RADIUS-сервера Avanpost FAM.
  4. Avanpost FAM осуществляет дополнительное подтверждение факта аутентификации пользователя с использованием настроенных параметров аутентификации.
  5. После выполнения дополнительной аутентификации Avanpost FAM отвечает на запрос NPS, отправляя RADIUS-ответ о прохождении успешной аутентификации. Если пользователь отклонил запрос аутентификации, то Avanpost FAM сообщает RDGW, что пользователь не выполнил аутентификацию.

Ограничения RDGW:

  • RDGW не позволяет аутентифицировать пользователя по первому фактору через внешний RADIUS-сервер. Первый фактор всегда проверяется средствами RDGW;
  • RDGW не позволяет получать обратную связь от пользователя, поэтому могут использоваться только те факторы аутентификации, которые позволяют отправлять подтверждение через внешний канал связи.

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

Целевая схема размещения компонентов зависит от специфики развёртывания окружения. В общем виде возможны два варианта:

  1. На сервере RDGateway размещён локальный сервер NPS, который настраивается на подключение к RADIUS-серверу Avanpost FAM (NPS функционирует в режиме RADIUS Proxy). В этом режиме не используется сторонний NPS.

    Для настройки данной схемы развёртывания требуется выполнить Этапы 1-5, указанные ниже.

  2. На сервере RDGateway размещён локальный сервер NPS, который настраивается на подключение к внешнему NPS-серверу (в этом случае локальный NPS, размещённый на RDGateway, функционирует в режиме NPS Proxy).
    Внешний NPS-сервер настраивается на подключение к RADIUS-серверу Avanpost FAM (внешний NPS функционирует в режиме RADIUS Proxy). 

    Для настройки схемы развёртывания? указанного в пункте 2, требуется выполнить Этапы 1-5 и Приложение А, указанные ниже.

    Внимание

    Выбор схемы развёртывания зависит от решаемой задачи и выходит за границы текущей инструкции.

Пример инфраструктуры Windows Server (не является эталоном), используемый для размещения RDS с RDGW с подключением к Avanpost  FAM на схеме, которая станет доступна на сервере после установки RDS и RDCB ролей в консоли управления сервером (Рисунок 2):

Рисунок 2. Целевая инфраструктура Windows Server

Этап 1. Настройка шлюза Remote Desktop Gateway

  1. Настроить политику авторизации подключений.

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

    Рисунок 4

     

  2. Настроить политику авторизации на шлюзе, добавив группу пользователей AD, которым должен предоставляться доступ к RDS серверам (Рисунок 5):

Рисунок 5

3. Добавить группу компьютеров, к которым требуется доступ.

Рисунок 6

Группы компьютеров можно создать здесь:

Рисунок 7

Этап 2. Настройка Network Policy and Access Server (NPS)

Если целевой NPS, выполняющий аутентификацию на FAM, размещён локально на сервере RDGateway, то шаги по настройке выполняются на нём.

Если целевой NPS, выполняющий аутентификацию на FAM, размещён на внешнем по отношению к RDGateway сервере, то указанные ниже шаги выполняются на внешнем NPS.

На сервере NPS необходимо настроить политики аутентификации через встроенный в FAM RADIUS-сервер:

1. Добавить внешний RADIUS-сервер (Рисунок 8).

В роли RADIUS-сервера будет выступать система Avanpost FAM


Рисунок 8

2. Указать IP-адрес RADIUS-сервера (Рисунок 9).


Рисунок 9

3. Указать общий секрет (Рисунок 10).

Секрет должен совпадать с секретом, настроенным на стороне RADIUS-сервера в административной консоли Avanpost FAM, в разделе Сервис - Разделяемые секреты RADIUS



Рисунок 10

4. Настроить таймауты на NPS, указав значения (имя группы внешних RADIUS-серверов может отличаться от приведённой на скриншоте):

  • приоритет;
  • вес;
  • число секунд без ответа, после которого запрос считается отброшенным;
  • макс. число отброшенных запросов, после которого сервер считается недоступным;
  • число секунд между запросами, после которого сервер считается недоступным.

Рисунок 11

5. Настроить политику запроса на подключение.

Вкладка "Обзор": Тип сервера доступа к сети – Шлюз удалённых рабочих столов (Рисунок 12)

Вкладка "Условия": Любое. Допустимо без ограничения по времени. Так как требуется, чтобы условие было настроено - можно задать ограничение по дням, как указано на скриншоте (Рисунок 13)

Вкладка "Параметры": Метод проверки подлинности – внешний RADIUS-сервер (Рисунок 14)



Рисунок 12


Рисунок 13


 

Рисунок 14

При смене метода проверки подлинности в NPS он меняется одновременно в "Хранилище политики авторизации подключений к удаленным рабочим столам", они взаимосвязаны на локальном NPS.

Рисунок 15

6. Настроить сетевую политику.

Параметры настройки сетевой политики зависят от политики безопасности организации

Пример настройки сетевой политики:


Рисунок 16

В условиях можно выбрать группу пользователей для предоставления доступа.


Рисунок 17

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


Рисунок 18

Этап 3. Настройка приложения на стороне сервера FAM

На стороне сервера FAM необходимо выполнить следующие настройки:

  1. Настроить приложение с типом RADIUS, в "Настройках" которого (Рисунок 19):
    1. Установить флажок "IP адрес как идентификатор".
    2. NAS IP(Source IP) – установить адрес сервера сетевого доступа, если он не определен.
    3. Протокол аутентификации – Passwordless.
    4. Метод доставки фактора – встроенный транспорт.
    5. Нажать "Разделяемые секреты RADIUS" и и выполнить настройки в соответствии с Таблицей.

      Таблица – Описание настроек атрибутов разделяемого секрета RADIUS 

      Атрибут 

      Настройка

      Имя клиентаВвести имя клиента.
      Диапазон адресов

      Определить диапазон IP-адресов по типу:

      10.10.17.108/32,

      где 10.10.17.108 – адрес NAS, а /32 – маска подсети, используемая для определения границ диапазона IP-адресов.

      Смена общего секретаЗадать секретный ключ (см. Общие требования к разделяемому секрету)

      Общие требования к разделяемому секрету: 

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

        Максимальное количество символов в распределяемом секрете RADIUS зависит от конкретной реализации RADIUS-сервера и клиентских устройств.

      • Сложность: Рекомендуется использовать сочетание букв верхнего и нижнего регистров, цифр и специальных символов. 
      • Надежность: Секретный ключ должен быть известен только тем устройствам, которые используют его для аутентификации. Разделяемый секрет должен периодически обновляться для предотвращения возможных утечек. 
  2. Пользователь, для которого производится подключение, должен иметь доступ к приложению через группы FAM.
  3. Логин пользователей должен соответствовать тому логину, который передаёт сервер RDGW (чаще всего используется формат DOMAIN\LOGIN).

Рисунок 19

Этап 4. Настройка рабочего места пользователя (АРМ пользователя)

Требуется указать параметры:

1. Параметры подключения:

  • Выбран переключатель - "Использовать следующие параметры сервера шлюза удалённых рабочих столов".
  • Имя сервера - Указать адрес сервера с RDGW.
  • Метод входа - выбрать позднее.

2. Параметры входа:

  • Пользователь - не задано.
  • Установить флаг - "Использовать мои учётные данные шлюза удалённых рабочих столов для удалённого компьютера".

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

Рисунок 20

3. При подключении по SSL требуется установить сертификат RDGW в доверенные корнеые центры сертификации


Рисунок 21

Приложение А. Настройка внешнего Network Policy and Access Server (NPS)

Если локальный NPS, развёрнутый на сервере с RDGateway, используется в режиме NPS Proxy, а для аутентификации пользователей в сети задействован отдельно развёрнутый NPS (на отдельном сервере), то требуется выполнить указанные в данном этапе пункты. Если используется локальный NPS, размещённый на RDGateway без внешнего NPS, то данный этап следует пропустить.


1. На сервере с Remote Desktop Gateway (роль сервера "Шлюз удалённых рабочих столов") в разделе "Свойства RDGW" на вкладке "Хранилище политики авторизации подключений к удалённым рабочим столам" выбрать пункт "Центральный сервер политики сети" и добавить DNS-имя или IP-адрес сервера NPS (Рисунок 22):

Рисунок 22

2. Если используется внешний по отношению к RDGateway NPS, то требуется выбрать запись сервера и нажать "Сменить общий секрет", ввести новый общий секрет и применить его (Рисунок 23). Если используется локальный по отношению к RDGateway NPS, то данный шаг можно пропустить. Важно, секреты не должны быть одинаковыми в цепочке шлюз- nps прокси, nps прокси - FAM сервер, в противном случае подключение не будет устанавливаться.

Рисунок 23

3. На внешний NPS (расположенный не на RDGateway) необходимо добавить доверенную запись RADIUS-клиента с указанием IP-адреса шлюза RDGateway (Рисунок 24).

Рисунок 24

4. При добавлении RADIUS-клиента также необходимо задать секрет, общий с RDGateway.

Секрет должен совпадать с настройками "Шлюз удаленных рабочих столов"

Рисунок 25

5. Завести на внешнем NPS внешний RADIUS сервер по аналогии в пункте 5 этапа 1.

Рисунок 26

6. Создать уже свою политику запросов на подключения по аналогии пункта 7 этапа 1 только выбрать уже сервер который завели выше

Рисунок 27


Рисунок 28


7. Создать сетевую политику настройки по аналогии пункта 8 этапа 1

Рисунок 29

8. Настроить таймауты на локальном NPS для внешнего NPS и такие же таймауты на внешнем NPS для внешнего RADIUS сервера FAM, указав значения (имя группы внешних RADIUS-серверов может отличаться от приведённой на скриншоте):

  • Число секунд без ответа, после которого запрос считается отброшенным - 30
  • Макс. число отброшенных запросов, после которого сервер считается недоступным - 10
  • Число секунд между запросами, после которого сервер считается недоступным - 30

      Остальные настройки повторить на внешнем NPS по этапу 2.

Локальный NPS:

Рисунок 30

Внешний NPS:

Рисунок 31


Обсуждение