
Уже практически ни у кого не вызывает вопросов то, зачем нужна двух факторная аутентификация, особенно при доступе к ресурсам удаленных пользователей. Априори пользователь относится достаточно безответственно к хранению паролей защищающих рабочую информацию, что и не удивительно, учитывая сколько личных паролей приходится помнить и приоритеты обычного человека в плане защиты личной или рабочей информации.
Внедрение аутентификации удаленных пользователей по принципу «something I know+ something I have” позволяет сделать атаку, направленную на перехват или подбор паролей, бессмысленной и значительно снизить угрозы ИБ от получения злоумышленником пароля пользователя.
Представляю Вам руководство по настройке Microsoft Azure Multi-Factor Authentication Server (MFAS) в качестве второго фактора аутентификации при подключение доменных пользователей к ресурсам компании посредством Cisco AnyConnect.
Почему именно MS Azure?
- Лучшая интеграция с AD, что очень удобно, когда для VPN используется та же учетная запись, что и для остальных ресурсов.
- Разные типы аутентификации, звонок, SMS приложение и офлайн OTP код.
- Простота настройки.
- Высокая надежность и доверие.
Из минусов, наверное, стоит отметить только то, что это платное решение, но безопасность никогда и не бывает дешевой.
Настройка Microsoft Azure
Приведенные ниже шаги предполагают, что у Вас имеется подписка или же установлена триальная версия Microsoft Azure.
Перейдем непосредственно к настройке:
- Заходим на портал управления Azure.
- Переходим на вкладку Active Directory -> Поставщики многофакторной проверки подлиности -> Быстрое создание. Указываем необходимые параметры и далее «создать».
После создания, будет доступна кнопка «Управление», переходим:
- Переходим в загрузки. Скачиваем MULTI-FACTOR AUTHENTICATION SERVER.
Также нужно создать учетную запись для активации сервера.
Для установки данного сервера понадобится .NET Framework 2.0.
Важно: Устанавливать рекомендуется на отдельную VM. При установке пропускаем мастер настройки.
Функции сервера: синхронизация пользователей с AD, RADIUS server для Cisco ASA, отправка запросов на авторизацию по второму фактору, прием и обработка ответов от клиентов, авторизация пользователей. Может устанавливаться как на серверные версии, так и на клиентские.
- При первом запуске активируем с помощью ранее сгенерированной учетной записи (от репликации на данном этапе отказываемся).
- Настраиваем интеграцию пользователей между AD и нашим сервером. Во вкладке Directory Integration добавляем каталог, который будет синхронизироваться с AD и настраиваем параметры синхронизации:
- В AD создаем пользователя и синхронизируем Базу пользователей с MFAS:
а) создаем тестового пользователя и указываем номер телефона:
б) Сохраняем, нажимаем кнопку «Test..» во вкладке Users. Вводим учетные данные пользователя:
в) На указанный телефон получаем звонок, нажимаем «#». Об успешном завершении теста свидетельствует сообщение:
Также проверить авторизацию можно через SMS. Для этого, в настройках клиента, необходимо указать способ авторизации Text message – One-Way – OTP. В данном случае MFAS запросит OTP, который в виде SMS придет Вам на телефон.
Для того, что бы связать пользователя с мобильным устройством, на котором установлен Azure Authenticator, понадобится развернуть и настроить User Portal (Инструкция по установке и настройке User Portal).
Так же необходимо дополнительно установить и настроить Mobile Portal:
а) Переходим в директорию C:\Program Files\Multi-Factor Authentication Server
б) Выбираем необходимую версию и устанавливаем.
в) После установки редактируем файл:
С:\Inetpub\wwwroot\MultiFactorAuthMobileAppWebService\Web.conf
Находим параметры:
WEB_SERVICE_SDK_AUTHENTICATION_USERNAME
WEB_SERVICE_SDK_AUTHENTICATION_PASSWORD
И меняем значения аналогично параметрам User Portal.
Также в разделе pfup, параметр <valuе>http://localhost:4898/PfWsSdk.asmx </valuе> изменяем по аналогии с User Portal — <valuе>https://EXTERNALFQDN/MultiFactorAuthWebServiceSDK/PfWsSdk.asmx </valuе>. В нашем случае «EXTERNALFQDN» — это mfa.servilon.com
Стоит отметить, что для работы User Portal необходимо:
– Запись во внешней DNS зоне, которая будет указывать на User Portal.
– Доверительные отношения с сервером. В идеале — это «белый» сертификат выписанный для «EXTERNALFQDN».
- После установки и настройки, для корректной работы User Portal, вводим URL на портал во вкладке «User Portal» и, если авторизация для доменных пользователей, указываем Primary authentication – Windows Domain.
- Во вкладке Mobile App вводим URL Mobile App Web Service и устанавливаем галочку Enable OATH tokens, если хотим использовать мобильное устройство как Software token.
Принцип работы APP:
- В режиме Token
- В стандартном режиме без PIN
- В режиме Token
- После того как портал настроен, для привязки мобильного устройства, переходим по ссылке User Portal, в данном случае https://mfa.servilon.com/multifactorauth
Во время первого входа необходимо заполнить форму секретных вопросов, после чего пользователь получит полноценный доступ к порталу.
- В меню Activate Mobile App переходим в Generate Activation Code. Генерируем новый код активации и в результате получаем:
На мобильном устройстве должно быть установлено приложение Azure Authenticator (ссылки для iOS, Android и Windows Mobile).
Запускаем приложение – нажимаем + и считываем QR код. В результате учетная запись подвязывается к мобильному устройству:
Проверка на сервере:
Теперь можно поэкспериментировать с различными режимами аутентификации и посмотреть, в чем же отличие режима Standard от «OATH token».
Настройка Radius
Для аутентификации пользователей AnyConnect Cisco ASA может использовать сторонний Radius сервер. Для этого на ASA необходимо настроить AAA Server, а на MFAS настроить Radius клиент:


Настройка CISCO ASA
Так как используется доменная аутентификация, ASA должна иметь доверительные отношения с доменом. А также рекомендуется использовать «белый» сертификат для VPN gateway. В нашем случае – vpn.servilon.co
На ASA рекомендуем настроить AnyConnect VPN gateway с локальной аутентификацией. Убедиться, что подключение работает, после чего приступить к настройке аутентификации через Radius.
После чего настраиваем RADIUS. Переходим на Configuration / Remote Access VPN / AAA/Local Users / AAA Server Groups и создаем группу:

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

Тестируем связку с RADIUS сервером:

При успешном тесте, на ранее настроенном «AnyConnect Connection Profiles» меняем аутентификацию с локальной на новую группу:

Настройка профиля:
- Сменить таймаут:
- Указать FQDN для Anyconnect gateway.
Для того, чтобы протестировать подключение с аутентификацией в стандартном режиме и режиме OATH token, подключаемся к FQDN и вводим доменные учетные данные:

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

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

После проверки второго фактора происходит аутентификация пользователя. Аутентификация успешна:

В данной статье рассмотрен пример настройки двухфакторной аутентификации пользователей для приложения Cisco AnyConnect, но данная схема может быть реализована для любых сервисов, поддерживающих аутентификацию посредством протокола Radius.
C уважением коллектив компании Servilon