- Начало работы
- Интеграция
- HTTP API
- OpenID Connect
- RADIUS протокол
- RADIUS адаптер
- LDAP адаптер
- Портал самообслуживания
- MULTIFACTOR Directory Sync
- Windows Logon
- Регистрация пользователей
- .NET Core
- 1с-Bitrix24
- 1с-плагин двухфакторной аутентификации
- ADFS
- ASP.NET
- Ansible AWX
- Atlassian Cloud
- BearPass
- Check Point VPN
- Cisco ASA VPN
- Citrix Gateway
- FortiGate VPN
- HRBOX
- Huawei Cloud
- Huawei VPN
- Ideco UTM
- Keycloak
- Let's Encrypt Windows Server
- Linux logon (GUI)
- Linux SSH
- Linux SUDO
- Microsoft Entra ID
- MikroTik L2TP VPN
- NGate VPN
- Network Policy Server (NPS)
- Nextcloud
- OpenVPN
- OpenVPN + AD
- OpenVPN Access Server
- OpenVPN pfSense
- Outlook Web Access (OWA)
- Passwork
- RD Gateway (RDGW)
- Redmine
- UserGate VPN
- VMware Horizon Cloud
- VMware Horizon View
- VMware vCloud Director
- VMware vSphere
- Vault
- ViPNET
- Windows VPN
- Yandex.Cloud
- Yandex 360
- Zabbix
- АйТи-Бастион
- Континент 4 VPN
- МТС Линк (бывш. webinar.ru)
- WordPress
- С-Терра VPN
- Точка доступа Wi-Fi
- ФПСУ-IP/Клиент
Ldap proxy сервер для Windows
MULTIFACTOR Ldap Adapter — программный компонент, LDAP proxy сервер для Windows.
Компонент доступен вместе с исходным кодом, распространяется бесплатно. Актуальная версия находится на GitHub: код и сборка (архив release.zip).
Лицензия
Обратите внимание на лицензию. Она не даёт вам право вносить изменения в исходный код Компонента и создавать производные продукты на его основе. Исходный код предоставляется в ознакомительных целях.
Требования для установки компонента
- Компонент устанавливается на любой Windows сервер начиная с версии 2008 R2;
- Минимальные требования для сервера: 2 CPU, 4 GB RAM, 40 GB HDD (обеспечивают работу ОС и адаптера для 100 одновременных подключений — примерно 1500 пользователей);
- На сервере должны быть открыты TCP порты 389 (LDAP) и 636 (LDAPS) для приема запросов от клиентов;
- Серверу с установленным компонентом необходим доступ к хосту api.multifactor.ru по TCP порту 443 (TLS) напрямую или через HTTP proxy;
- Для взаимодействия с Active Directory, компоненту нужен доступ к серверу домена по TCP порту 389 (LDAP) или 636 (LDAPS);
- Для записи журналов в Syslog, необходим доступ к Syslog серверу.
Обратите внимание
Для Windows Server версии младше 2016 необходимо установить Microsoft .NET Framework 4.6.2.
Параметры компонента
Параметры работы компонента хранятся в секции <appSettings>
файла MultiFactor.Ldap.Adapter.exe.config
в формате XML. Не заменяйте файл целиком, так как в нем содержится техническая информация, необходимая для корректного запуска адаптера.
Общие параметры
<!-- Адрес API Мультифактора --> <add key="multifactor-api-url" value="https://api.multifactor.ru"/> <!-- Опционально. Адрес прокси для отправки запросов в мультифактор --> <!-- <add key="multifactor-api-proxy" value="http://proxy:3128"/> --> <!-- Время ожидания ответа от API мультифактора, по умолчанию 65 секунд. Формат hh:mm:ss --> <add key="multifactor-api-timeout" value="00:01:05"/> <!-- Параметр NAS-Identifier для подключения к API Мультифактора - из личного кабинета --> <add key="multifactor-nas-identifier" value=""/> <!-- Параметр Shared Secret для подключения к API Мультифактора - из личного кабинета --> <add key="multifactor-shared-secret" value=""/> <!-- Уровень логирования: Debug, Information, Warning, Error --> <add key="logging-level" value="Debug"/> <!-- Пароль x509 сертификата для TLS, указывается если пароль есть --> <!-- <add key="certificate-password" value=""/> --> <!-- Адрес LDAP/LDAPS каталога, например ldaps://domain.local;ldaps://domain.local2 через точку с запятой можно указать несколько адресов --> <add key="ldap-server" value="ldaps://domain.local;ldaps://domain.local2"/> <!-- IP клиента, для которого применяется клиентский конфиг --> <add key="ldap-client-ip" value=""/> <!-- В зависимости от варианта, не нужный закомментить или удалить из конфига --> <!-- Адрес и порт (TCP) по которому адаптер будет принимать запросы по протоколу LDAP --> <!-- Если указать адрес 0.0.0.0, то адаптер будет слушать все сетевые интерфейсы --> <add key="adapter-ldap-endpoint" value="0.0.0.0:389"/> <!-- Адрес и порт (TCP) по которому адаптер будет принимать запросы по зашифрованному протоколу LDAPS --> <!-- Если указать адрес 0.0.0.0, то адаптер будет слушать все сетевые интерфейсы --> <add key="adapter-ldaps-endpoint" value="0.0.0.0:636"/> <!-- Задержка перед ответом в случае неправильных входных данных. Значение в секундах --> <add key="invalid-credential-delay" value="3"/> <!-- Список сервисных учетных записей (Bind DN), которым не требуется второй фактор, перечисленные через точку с запятой --> <add key="ldap-service-accounts" value="CN=Service Acc,OU=Users,DC=domain,DC=local"/> <!-- OU сервисных учетных записей (Bind DN), которым не требуется второй фактор --> <add key="ldap-service-accounts-ou" value="OU=Service Accounts"/> <!-- Разрешать доступ только пользователям из указанной группы (не проверяется, если удалить настройку) --> <add key="active-directory-group" value="MyApp Users"/> <!-- Запрашивать второй фактор только у пользователей из указанной группы (второй фактор требуется всем, если удалить настройку) --> <add key="active-directory-2fa-group" value="MyApp 2FA Users"/> <!-- Не запрашивать второй фактор у пользователей из указанной группы (включая, если пользователь находится в группе active-directory-2fa-group) --> <add key="active-directory-2fa-bypass-group" value="Bypass 2FA Users"/> <!-- Загружать вложенные группы пользователя (true/false) --> <add key="load-active-directory-nested-groups" value="true"/> <!-- Опционально. Формат ldap identity. В зависимости от варианта, не нужный закомментить или удалить из конфига --> <!-- <add key="transform-ldap-identity" value="None"/> --> <!-- Время ожидания ответа от LDAP каталога, по умолчанию 30 секунд. Формат hh:mm:ss --> <add key="ldap-bind-timeout" value="00:00:30"/> <!-- Опционально. Имя сервиса в Windows --> <!-- <add key="service-unit-name" value=""/> --> <!-- Опционально. Отображаемое имя сервиса --> <!-- <add key="service-display-name" value=""/> --> <!-- Использовать TLS (true/false). Если syslog передаёт искаженные символы, нужно установить false --> <add key="syslog-use-tls" value="true"/> </configuration>
Дополнительные настройки безопасности и конфиденциальности.
<!-- Отключить передачу адаптером email пользователей на сервер MULTIFACTOR --> <add key="privacy-mode" value="Full"/>
Защита от сбоев
В случае недоступности (по любой причине) API Мультифактора, адаптер может работать в одном из двух вариантов:
- Пропускать без второго фактора (по умолчанию)
- Отказывать в доступе
Для настройки используется следующий параметр:
<!-- true: пропускать, false: запрещать --> <add key="bypass-second-factor-when-api-unreachable" value="true"/>
Запуск компонента
Компонент может работать в консольном режиме или в качестве службы Windows. Для запуска в консольном режиме достаточно запустить приложение.
Для установки в качестве Windows Service выполните команду с ключом /i
от имени Администратора
MultiFactor.Ldap.Adapter.exe /i
Компонент устанавливается в режиме автоматического запуска от имени Network Service
.
Для удаления Windows Service выполните команду с ключом /u
от имени Администратора
MultiFactor.Ldap.Adapter.exe /u
Журналы
Журналы работы компонента находятся в папке Logs
. Если их нет, удостоверьтесь, что папка доступна для записи пользователю Network Service
.
Syslog
Для записи журналов в Syslog сервер или SIEM систему, добавьте в конфигурацию следующие параметры:
<!--адрес и порт сервера, протокол может быть udp или tcp--> <add key="syslog-server" value="udp://syslog-server:514"/> <!--формат журнала: RFC3164 или RFC5424--> <add key="syslog-format" value="RFC5424"/> <!--категория: User, Auth, Auth2, Local0 .. Local7--> <add key="syslog-facility" value="Auth"/> <!--название приложения (tag)--> <add key="syslog-app-name" value="multifactor-ldap"/>
Если syslog передаёт искаженные символы, нужно поменять следующую настройку на false (по умолчанию true):
<add key="syslog-use-tls" value="false" />
Сертификат для TLS шифрования
Если включена схема LDAPS, адаптер при первом запуске создаст самоподписанный SSL сертификат и сохранит его в папке Tls в формате pfx без пароля. Этот сертификат будет использоваться для аутентификации сервера и шифрования трафика. Вы можете заменить его на ваш сертификат при необходимости.
Вопросы и ответы
В: Можно указать несколько групп AD для контроля доступа и условного включения второго фактора?
О: Да, перечислите их через точку с запятой.
В: Как ускорить проверку групп в Active Directory?
О: По умолчанию адаптер проверяет в том числе вложенные группы, то есть пользователь может состоять в группе или состоять в группе, которая состоит в группе, которую проверяет адаптер. Если запрос занимает более 100 миллисекунд, вы можете отключить проверку вложенности следующей настройкой:
<add key="load-active-directory-nested-groups" value="false"/>