Настройка двухфакторной аутентификации при входе в Windows
MULTIFACTOR Logon — программный компонент, экран входа в операционную систему Windows. Работает как при локальном входе в операционную систему, так и при подключении через удалённый рабочий стол.
Компонент в виде установочного файла (ver. 1.3.0.1) распространяется бесплатно.
Все версии
- 22.02.2023 - MultifactorLogonSetup.exe (ver. 1.3.0.1)
Исправлена ошибка в работе параметра Network Bypass List.
- 13.02.2023 - MultifactorLogonSetup.exe (ver. 1.3.0)
Добавлена возможность смены пароля при возникновении соответствующего требования.
- 08.02.2023 - MultifactorLogonSetup.exe (ver. 1.2.9)
Новый параметр
Use DOMAIN\user format
(/includedomain). Если включен, то логин доменных пользователей передается на сервер в формате DOMAIN\username. - 11.11.2022 - MultifactorLogonSetup.exe (ver. 1.2.8.1)
Исправлена ошибка с работой параметра
SkipUsers
для доменных пользователей. - 27.10.2022 - MultifactorLogonSetup.exe (ver. 1.2.8.0)
Обновление инсталлятора. Исправлена некорректная обработка последних символов закрывающей фигурной скобки
}
в параметрах/whitelist
и/rdpwhitelist
при установке через CLI. - 16.09.2022 - MultifactorLogonSetup.exe (ver. 1.2.8.0)
Новый параметр SkipUsers (/skipusers) - список пользователей, для которых проверка второго фактора будет пропускаться.
- 05.09.2022 - MultifactorLogonSetup.exe (ver. 1.2.7.1)
- Теперь конфигуратор можно запустить только от имени администратора, иначе выводится предупреждение и конфигуратор закрывается;
- Добавлен параметр инсталлятора /debuglog=true. - 01.08.2022 - MultifactorLogonSetup.exe (ver. 1.2.7)
- 26.07.2022 - MultifactorLogonSetup.exe (ver. 1.2.6.4)
- 21.07.2022 - MultifactorLogonSetup.exe (ver. 1.2.6.3)
- 20.07.2022 - MultifactorLogonSetup.exe (ver. 1.2.6.2)
- 13.07.2022 - MultifactorLogonSetup.exe (ver. 1.2.5.2)
- 11.07.2022 - MultifactorLogonSetup.exe (ver. 1.2.5.1)
- 06.07.2022 - MultifactorLogonSetup.exe (ver. 1.2.5)
- 06.07.2022 - MultifactorLogonSetup.exe (ver. 1.2.4)
- 07.06.2022 - MultifactorLogonSetup.exe (ver. 1.2.3)
- 25.05.2022 - MultifactorLogonSetup.exe (ver. 1.2.2)
- 13.05.2022 - MultifactorLogonSetup.exe (ver. 1.2.1)
- 25.04.2022 - MultifactorLogonSetup.exe (ver. 1.2.0)
- 21.04.2022 - MultifactorLogonSetup.exe (ver. 1.1.5)
- 09.03.2022 - MultifactorLogonSetup.exe (ver. 1.1.0)
Данная статья описывает настройку входа на рабочую станцию или сервер на основе операционной системы Windows с логином и паролем и вторым фактором с использованием установленного в вашей сети RADIUS адаптера, либо через облачный сервер radius.multifactor.ru.
Как правило, локальный и удалённый вход на рабочую станцию защищён только логином и паролем. В современных операционных системах добавляются новые методы аутентификации, такие как сочетание логина с PIN кодом, графическим ключом, хранилищем сертификата или биометрическим датчиком. Такая конфигурация реализует только один фактор проверки подлинности и уязвима настолько, насколько надежно защищён первый фактор на клиентском устройстве. Перехват аутентификационных данных можно осуществить, например, при их передаче по незащищённым каналам связи или путём наблюдения за оператором в момент их ввода.
Использование второго фактора не усложняет процесс подключения для пользователя, значительно сокращая риск неправомерного доступа.
Возможные способы аутентификации:
Мобильное приложение MultiFactor
Telegram
Аппаратные OTP токены
Приложения OTP: Google Authenticator или Яндекс.Ключ
СМС
Доступна настройка второго фактора в режиме диалога с пользователем.
Требования для установки компонента
- Десктопная ОС Windows 7 или выше (64 бит);
- Серверная ОС Windows Server 2012 или выше (64 бит);
- Открытый исходящий порт 1812 UDP для отправки запросов по RADIUS протоколу;
- Сетевой доступ к radius.multifactor.ru или RADIUS адаптеру, установленному в локальной сети;
- Свежая версия Microsoft Visual C++ Redistributable.
Принцип работы
- Компонент устанавливается на целевую операционную систему, заменяя стандартный метод входа;
- Проверка логина-пароля пользователя происходит стандартными методами операционной системы;
- Проверка второго фактора происходит по RADIUS протоколу либо через установленный в вашей сети RADIUS адаптер, либо через облачный сервер radius.multifactor.ru;
- Пользователь подтверждает полученный запрос на подключение или вводит сгенерированный одноразовый код в форму входа и подключается к рабочему месту.
Поддерживаемые типы учётных записей
- Локальные пользователи
- Пользователи Active Directory
- Учётные записи Microsoft
<computername>\<username>
.\<username>
При входе с локальной учётной записью логин пользователя будет передан на RADIUS сервер в формате <username>@<pcname>
.
<username>
<domain>\<username>
<username>@<upnsuffix>
microsoftaccount\<username>
Дополнительные возможности и ограничения
- Поддерживает аутентификацию через несколько RADIUS серверов, используя Status-Server (12) запрос для мониторинга доступности;
- Позволяет конфигурировать доступные для пользователя методы аутентификации;
Ограничения при работе через radius.multifactor.ru
- Не принимает кириллические имена учётных записей при работе через radius.multifactor.ru;
- Настройка второго фактора в режиме диалога с пользователем не работает при использовании radius.multifactor.ru.
Не завершайте сессию текущего пользователя до тех пор, пока не убедитесь, что всё корректно настроено и работает.
Настройка MULTIFACTOR
- Зайдите в административную панель, далее в раздел "Ресурсы" и создайте новый ресурс типа "ОС / Сервер" - "Windows";
- Заполните "Название", "Адрес" и "Язык" по вашему усмотрению, установите переключатель в "Запретить доступ" в разделе "При подключении без настроенного второго фактора";
- После создания вам будут доступны два параметра: NAS Identifier и Shared Secret, они потребуются для следующего шага.
- Если планируете размещать сервер RADIUS в локальной сети, установите и настройте RADIUS адаптер. Переименуйте файл шаблона
Clients/winlogon.config.template
вClients/winlogon.config
и настройте его следующим образом:
<!-- Идентифицировать клиентов по заданному RADIUS артибуту NAS-Identifier -->
<add key="radius-client-nas-identifier" value="windows"/>
<!-- Shared secret общий для WinLogon и адаптера -->
<add key="radius-shared-secret" value="SHARED_SECRET"/>
<!-- Где проверять первый фактор: None (не проверять) -->
<add key="first-factor-authentication-source" value="None"/>
<!-- Multifactor API -->
<add key="multifactor-nas-identifier" value="NAS Identifier из личного кабинета MULTIFACTOR"/>
<add key="multifactor-shared-secret" value="Shared Secret из личного кабинета MULTIFACTOR"/>
<!-- Дополнительные настройки для Windows-версии RADIUS адаптера -->
<!-- Active Directory domain -->
<!-- <add key="active-directory-domain" value="domain.local"/> -->
<!-- Разрешить доступ только пользователям группы AD -->
<!-- <add key="active-directory-group" value="VPN Users"/> -->
<!-- Проверять второй фактор только у пользователей из группы AD -->
<!-- <add key="active-directory-2fa-group" value="2FA Users"/> -->
Если вы планируете использовать облачный сервер radius.multifactor.ru, пропустите этот шаг.
На рабочей станции установите приложение
MultifactorLogonSetup.exe
. После завершения установки будет запущен конфигуратор. Если вы сняли галочку "Run Config" во время завершения установки, запустите конфигураторmfLogonConfig.exe
от имени администратора в папке с установленным компонентом.На вкладке General:
Hosts — укажите ip или имена хостов с настроенными адаптерами;
Port — порт настроенного адаптера, должен быть одинаковых для всех хостов;
Timeout(sec.) — таймаут запроса доступа (30);
Retransmit count — количество попыток запроса доступа (2);
Shared Secret — Указывайте значение в зависимости от типа развертывания:
- Локальный RADIUS адаптер c настроенной идентификацией клиентов: укажите значение, заданное в параметре radius-shared-secret в клиентском файле конфигурации./Clients/winlogon.config
<add key="radius-shared-secret" value="SHARED_SECRET"/>
- Локальный RADIUS адаптер без идентификации клиентов: укажите значение, заданное в параметре radius-shared-secret в корневом файле конфигурации.MultiFactor.Radius.Adapter.exe.config
<add key="radius-shared-secret" value="SHARED_SECRET"/>
- Облачный radius.multifactor.ru: укажите Shared Secret (п.3) из ресурса WinLogon в панели администратора Multifactor.
- Локальный RADIUS адаптер c настроенной идентификацией клиентов: укажите значение, заданное в параметре radius-shared-secret в клиентском файле конфигурации.
Nas Identifier — используется для идентификации клиента. Указанное значение передается в запросе доступа на RADIUS сервер в RADIUS-атрибуте NAS-Identifier. Указывайте значение в зависимости от типа развертывания:
- Локальный RADIUS адаптер c настроенной идентификацией клиентов: укажите значение, заданное в параметре radius-client-nas-identifier в клиентском файле конфигурации./Clients/winlogon.config
<add key="radius-client-nas-identifier" value="windows"/>
- Локальный RADIUS адаптер без идентификации клиентов: оставьте пустым;
- Облачный radius.multifactor.ru: укажите NAS Identifier (п.3) из ресурса WinLogon в панели администратора Multifactor.
- Локальный RADIUS адаптер c настроенной идентификацией клиентов: укажите значение, заданное в параметре radius-client-nas-identifier в клиентском файле конфигурации.
Network Bypass List — подключения по RDP из указанных подсетей будут осуществляться без запроса второго фактора. Пример значения:
10.10.*,192.168.1.0/24,127.0.0.1-127.0.0.5
Domain — укажите домен ActiveDirectory для его автоподстановки в поле "Логин" на экране блокировки и на локальном экране входа;
Use Host as StationId — если включено – передавать имя хоста клиента вместо IP клиента при подключении через RDP (влияет также на текст в запросе доступа в мобильном приложении и Telegram-боте MULTIFACTOR);
Sign In Filter — если включено, в качестве методов входа разрешены только методы из белого списка (вкладка White Lists);
Bypass — если включено, проверка второго фактора будет пропущена при недоступности всех RADIUS серверов. Доступность определяется отправкой RADIUS запроса
Status-Server
в момент подключения. Запрос осуществялется последовательно на каждый RADIUS сервер из списка Hosts с таймаутом 2 секунды и количеством ретрансмитов запроса – 2;Debug Log — если включено, в папке с установленным компонентом создается файл
debuglog.txt
с отладочной информацией;SkipUsers — список пользователей, для которых проверка второго фактора будет пропускаться:
- Пользователей необходимо указывать через запятую без пробелов;
- Локальные пользователи указываются в формате:
.\username
; - Доменные пользователи указываются без домена в формате:
username
; - Microsoft-пользователи указываются с полным названием аккаунта.
Поддерживаются служебные имена:
local_users
— все локальные пользователи;domain_users
— все доменные пользователи;microsoft_users
— все Microsoft пользователи.Use DOMAIN\user format — если опция включена, то логин доменных пользователей будет передаваться на сервер в формате DOMAIN\username.
На вкладке WhiteLists:
- Если включен параметр Sign In Filter, задайте разрешенные методы для локального входа и подключения через RDP.
Протестируйте конфигурацию, нажав на кнопку Check Settings на вкладке General. Если связность с RADIUS серверами настроена корректно, тест должен вернуть OK для каждого сервера в списке Hosts.
В Административной панели создайте пользователя, с которым будете использовать второй фактор, и вышлите ему ссылку на настройку второго фактора на почту.
Настройте второй фактор для пользователя.
Система готова к использованию.
Проверка
Не блокируя и не выходя из текущей сессии пользователя, подключитесь под пользователем, которому настроили второй фактор.
Если выбран способ подтверждения с одноразовым кодом, пользователь введет его в отдельном поле.
Если выбран способ подтверждения с пушем, MULTIFACTOR пришлёт пуш выбранным методом, а компонент будет ожидать подтверждения или отказа от пользователя.
Загрузка в безопасном режиме
По умолчанию, компонент Windows Logon не блокирует вход при загрузке системы в безопасном режиме. Вы можете настроить принудительный запрос второго фактора при загрузке в безопасном режиме, внеся изменения в системный реестр:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\Credential Providers]
"ProhibitFallbacks"=dword:1
Убедитесь, что:
- Машина подключена к сети через LAN (WiFi не подключится в безопасном режиме);
- RADIUS Адаптер не установлен локально на одной машине с Windows Logon. В безопасном режиме служба адаптера не будет запущена.
Протестируйте конфигурацию в режиме Bypass, чтобы не потерять доступ к системе в случае неверной настройки.
Если что-то не работает
Последовательно проверьте, что вы ничего не упустили:
- Установлена свежая версия Microsoft Visual C++ Redistributable;
- С рабочей станции открыт доступ по UDP порту 1812 на адреса вашего RADIUS адаптера или radius.multifactor.ru;
- Операционная система имеет 64 битную разрядность;
- Параметры Nas Identifier и Shared Secret указаны корректно;
- Пользователю настроен хотя бы один второй фактор;
- Проверьте журнал "Запросы доступа" в Личном кабинете;
- Проверьте события в системном журнале Windows от источника MultifactorLogon и LogonUI;
- Доступ без второго фактора доступен при загрузке в безопасном режиме.
Обновление
Удалите "Multifactor Logon" из списка установленного в операционной системе ПО. Установите компонент заново.
Удаление компонента
Удалите "Multifactor Logon" из списка установленного в операционной системе ПО.