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

Двухфакторная аутентификация в Citrix Gateway

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

В статье описывается настройка Citrix Gateway для подключения к удаленным рабочем столам и приложениям c двухфакторной аутентификацией.

Citrix Gateway поддерживает множество методов авторизации и аутентификации пользователей, как локальных, так и с использованием различных провайдеров учётных записей.

Мультифактор интегрируется с размещенным в вашей инфраструктуре Citrix Gateway для защиты удалённого доступа многофакторной аутентификацией. Пользователям будет доступна самостоятельная регистрация второго фактора при входе через браузер. При использовании Citrix Receiver или Workspace пользователю предоставляется возможность использования одноразовых кодов, пуш-уведомлений или входа по звонку.

Citrix Gateway ранее назывался NetScaler Gateway. Эта инструкция подходит для обоих продуктов.

Возможные способы аутентификации:

  • Мобильное приложение
  • Telegram
  • Биометрия (web)
  • U2F токены (web)
  • СМС
  • Аппаратные OTP токены
  • Приложения OTP: Google Authenticator или Яндекс.Ключ
может быть полезно

Доступна настройка второго фактора в режиме диалога с пользователем.

Схема работы

  1. Пользователь подключается к рабочему столу, вводит логин и пароль в Citrix Gateway, Receiver или Workspace;
  2. Citrix Gateway по протоколу RADIUS подключается к компоненту MultiFactor Radius Adapter;
  3. Компонент проверяет логин и пароль пользователя в Active Directory и запрашивает второй фактор аутентификации;
  4. Пользователь подтверждает запрос доступа в телефоне или вводит одноразовый код.
Внимание

MultiFactor Radius Adapter требует для корректной работы доступ к https://api.multifactor.ru, через порт 443 (TLS 1.2), перед началом работы убедитесь, что NETWORK SERVICE на сервере, на который вы собираетесь устанавливать Адаптер, имеет доступ к данному ресурсу.

Перед началом настройки

Перед настройкой Мультифактора у вас должна быть работоспособная схема аутентификации пользователей в вашем Citrix Gateway.

Для интеграции Мультифактора с вашим Citrix Gateway необходимо установить внутри вашего сетевого периметра адаптер, выступающий в качестве RADIUS сервера, поэтому у вас не будет необходимости устанавливать отдельный RADIUS сервер, для работы с Мультифактором.

Настройка Мультифактора

  • Выберите или разверните сервер для установки Радиус Адаптера. Компонент устанавливается на любой Windows сервер начиная с версии 2012 R2.
  • Войдите в личный кабинет, и перейдите в раздел **Ресурсы**.
  • Нажмите на кнопку "Добавить ресурс" и создайте новый Сетевой экран -> Другой:
    • Название: произвольное
    • Адрес: произвольный
  • Сохраните настройки
  • Скопируйте NAS Identifier и Shared Secret, они понадобятся при дальнейшей настройке.

Установка Radius Adapter

Радиус адаптер может быть установлен как на физический, так и на виртуальный хост. Мы рекомендуем систему хотя бы с 1 CPU и 4 GB оперативной памяти (хотя даже 1 GB для работы достаточно).

  • Загрузите последнюю сборку с GitHub.
  • Распакуйте архив в подходящую папку
  • Параметры работы компонента хранятся в файле MultiFactor.Radius.Adapter.exe.config в формате XML. Откройте его в подходящем текстовом редакторе. В нём приведен пример настройки компонента, подробное описание опций вы можете найти в документации.

Настройка первого фактора аутентификации в Адаптере

На этом шаге вы настроите первый фактор аутентификации: систему, в которой адаптер будет проверять пароль пользователя. В большинстве случаев это означает проверку в Active Directory или на RADIUS сервере.

Active Directory

Для проверки первого фактора в Active Directory/LDAP необходимо установить опции first-factor-authentication-source значение ActiveDirectory.

<add key="first-factor-authentication-source" value="ActiveDirectory"/>

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

<add key="active-directory-domain" value="domain.local"/>

Следующие настройки являются опциональными:

<!-- Проверять принадлежность пользователя к группе (не проверяется, если удалить настройку)-->
<add key="active-directory-group" value="VPN Users"/>
<!-- Запрашивать второй фактор только у пользователей из указанной группы (второй фактор требуется всем, если удалить настройку)-->
<add key="active-directory-2fa-group" value="2FA Users"/>
<!-- Использовать номер телефона из Active Directory для отправки одноразового кода в СМС (не используется, если удалить настройку) -->
<!-- <add key="phone-attribute" value="mobile"/> -->

При включении параметра use-active-directory-user-phone компонент будет использовать телефон, записанный на вкладке General. Формат телефона может быть любым.

При включении параметра use-active-directory-mobile-user-phone компонент будет использовать телефон, записанный на вкладке Telephones в поле Mobile. Формат телефона также может быть любым.

RADIUS

Для использования RADIUS сервера (например, Network Policy Server) для проверки первого фактора необходимо установить опции first-factor-authentication-source значение RADIUS.

<add key="first-factor-authentication-source" value="ActiveDirectory"/>

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

<!--Адрес и порт (UDP) сервера -->
<add key="nps-server-endpoint" value="192.168.0.10:1812"/>
<!-- Shared secret для подключения к RADIUS серверу и адаптеру -->
<add key="radius-shared-secret" value="0000000000"/>

Дополнительно убедитесь, что RADIUS сервер настроен на приём запросов на аутентификацию от Адаптера.

Настройка адаптера для работы с Citrix Receiver or Workspace Client

Укажите NAS Identifier и Shared Secret от ресурса, который вы создавали в Личном кабинете Мультифактора

<!-- адрес API Мультифактора -->
<add key="multifactor-api-url" value="https://api.multifactor.ru"/>
<!-- NAS Identifier из созданного в ЛК ресурса -->
<add key="multifactor-nas-identifier" value="1"/>
<!-- Shared Secret из созданного в ЛК ресурса -->
<add key="multifactor-shared-secret" value="2"/>

Укажите IP адрес и порт хоста, на котором будет расположен сам Адаптер. Если вы расположили адаптер на одном хосте с другим RADIUS сервером, то их порты должны различаться.

<!--Адрес и порт (UDP) который будет использоваться для подключения к RADIUS адаптеру -->
<add key="adapter-server-endpoint" value="192.168.0.1:1812"/>

Запуск адаптера

Компонент может работать в консольном режиме или в качестве службы Windows. Для запуска в консольном режиме достаточно запустить приложение MultiFactor.Radius.Adapter.exe

Для установки, как Windows Service, запустите с ключом /i от имени Администратора

MultiFactor.Radius.Adapter.exe /i

Компонент устанавливается в режиме автоматического запуска от имени Network Service.

Настройка Citix Gateway

  • Зайдите в административный интерфейс Citrix Gateway.
  • Перейдите в Citrix Gateway → Virtual Servers в левой панели административного интерфейса.
  • Выберите необходимый Citrix Gateway Virtual Server и нажмите Edit.
  • На странице "VPN Virtual Server" нажмите значок плюса (+) рядом с Basic Authentication чтобы добавить новую политику аутентификации.
  • На странице "Choose Type", выберите политику RADIUS и тип Primary из выпадающих меню и нажмите Continue.
  • На следующем экране "Choose Type" нажмите на значок плюса (+) рядом с "Policy Binding" → "Select Policy" чекбокс.
  • На странице "Create Authentication RADIUS Policy" введите имя для политики(например, CitrixWebPortal) и потом нажмите на значок плюса рядом с полем "Server" чтобы создать новый RADIUS сервер для клиентов, подключающихся через браузер.
  • На странице "Create Authentication RADIUS Server" введите информацию о вашем инстансе Radius Адаптера:
ПараметрЗначение
NameCitrixWebPortal (или любое удобное название)
Server Name or IP AddressХостнейм или IP адрес сервера, на котором размещен Адаптер
PortПорт из значения adapter-server-endpoint настроек адаптера (1812, например)
Time-out (seconds)60
Secret KeyRadius secret из настройки radius-shared-secret адаптера
Confirm Secret KeyRadius secret из настройки radius-shared-secret адаптера
  • Нажмите Create чтобы добавить CitrixWebPortal RADIUS сервер и вернитесь на страницу "Create Authentication RADIUS Policy".

  • Нажмите на ссылку Expression Editor на странице "Create Authentication RADIUS Policy" чтобы добавить новое expression со значением "true". Это включит использование второго фактора для всех пользователей портала.

Ограничения для отдельных групп и пользователей

Citrix позволяет гибко настраивать политики аутентификации для ваших пользователей. Для более полной информации ознакомьтесь с документацией для вашей версии Gateway или Netscaler.

  • Когда вы корректно заполнили информацию о Сервере и Expression, нажмите Create, чтобы сохранить новую политику CitrixWebPortal и вернитесь на страницу "Choose Type".
  • Удостоверьтесь, что на странице "Choose Type" новая политика аутентификации через RADIUS, которую вы только что создали, выбрана. Установите приоритет в разделе "Binding Details" на 100 и нажмите Bind.
  • Убедитесь, что все новые политики для пользователей Citrix Receiver, Workspace или портала показываются и привязаны в верном порядке. Нажмите Close, чтобы сохранить политики аутентификации.
  • Убедитесь, что у вас есть две политики RADIUS в качестве Primary Authentication. Удалите остальные или увеличьте приоритет политик Мультифактора, чтобы они применялись в первую очередь, и нажмите Done.

  • Сохраните все сделанные в конфигурации изменения.