Предварительная настройка
Интеграция с Active Directory может использоваться:
- в сценариях RADIUS/802.1x, чему посвящено текущее руководство
- в сценариях гостевой авторизации - v1.1_4.7 Настройка Captive Portal
- в сценариях TACACS+ - v1.1_4.9 Настройка TACACS+ аутентификации/авторизации
- в сценариях входа в WEB NAICE - v1.1_4.1.3 Настройка входа в систему через внешний источник
Требования к Active Directory
Требования и ограничения при взаимодействии с источником Active Directory можно просмотреть во встроенной документации. Для этого необходимо на странице Пользователи и устройства → Управление идентификацией → Внешние источники идентификации нажать в меню слева внизу на кнопку : страница со встроенной документации откроется в отдельном разделе.
Требования к учетным данным Active Directory, которые будут использоваться NAICE для взаимодействия с доменом
- Требуется создать учетную запись пользователя, который будет использоваться NAICE для взаимодействия с Active Directory. Данная учетная запись должна обеспечивать:
- Возможность поиска в Active Directory.
- Возможность получать информацию о всех атрибутах пользователей и группах домена.
В настройках пользователя необходимо отключить опцию "
Требовать смену пароля при первом подключении" (включена по умолчанию).
- Требуется создать учетную запись компьютера, которая будет использоваться для взаимодействия с Active Directory. Данная учетная запись должна иметь пароль. Задать пароль компьютера на сервере с MS Active Directory можно командой в оболочке
PowerShell, входящей в состав Active Directory, запущенной с правами администратора:и два раза ввести пароль в окне терминала. Если требуется указать пароль явно в команде:Set-ADAccountPassword -Identity Computer-Name$ -Reset
Set-ADAccountPassword -Identity Computer-name$ -Reset -NewPassword (ConvertTo-SecureString -AsPlainText "password" -Force)
- Имя компьютера необходимо указывать без доменной части, с окончанием на "
$". - Пароль должен отвечать требованиям сложности, настроенным в MS AD.
- Имя компьютера необходимо указывать без доменной части, с окончанием на "
Настройка NAICE
Подробная информация о настройках для каждого раздела содержится во встроенной документации, которую можно просмотреть, нажав кнопку в нижней части навигационного меню.
Добавление сетевого устройства
Необходимо:
- Настроить сетевое устройство для взаимодействие с NAICE по протоколу RADIUS в соответствии с инструкцией производителя.
- Добавить сетевое устройство и его профиль в NAICE.
Открыть раздел Пользователи и устройства → Сетевые ресурсы → Устройства и нажать (слева в верхней части страницы). Откроется окно добавления сетевого устройства:
Нажать Добавить после заполнения настроек.
Создание источника идентификации
Открыть раздел Пользователи и устройства → Управление идентификацией → Внешние источники идентификации и нажать . Откроется окно добавления внешнего источника идентификаций:
Настройка структурно разделена на блоки.
Имя- произвольное наименование источника идентификаций.- Описание - произвольное описание источника идентификаций.
- Включить LDAPS - использовать защищённое соединение с LDAP-сервером по протоколу LDAPS (LDAP over SSL/TLS)
- Доверять неизвестным источникам (доступно только при включении опции "Включить LDAPS") - разрешить системе NAICE принимать и использовать сертификаты, выданные неизвестными центрами сертификации (CA).
Для корректной и безопасной работы LDAPS необходимо добавить в систему сертификаты источника идентификации. Подробнее см. раздел «Доверенные сертификаты» во встроенной документации NAICE.
Блок "Схема"
Схема- "ACTIVE_DIRECTORY".
Схема "ACTIVE_DIRECTORY" имеет предустановленную структуру, которая не может быть изменена.
Блок "Подключение"
Имя домена- короткое имя домена, в котором будет выполняться аутентификация. Без "." и конечной части. Поле доступно только при выборе схемы "ACTIVE_DIRECTORY".Имя компьютера- имя компьютера для, без доменной части. Компьютер должен быть предварительно добавлен администратором в Active Directory. Поле доступно только при выборе схемы "ACTIVE_DIRECTORY".Пароль компьютера- пароль, который был задан компьютеру администратором после добавления компьютера. Поле доступно только при выборе схемы "ACTIVE_DIRECTORY".Пароль компьютера в Active Directory задается администратором после создания компьютера с использованием PowerShell. Подробнее "как задать пароль компьютера".
Admin dn- имя пользователя, который будет использоваться для обращения в Active Directory. Пользователь должен быть предварительно добавлен администратором в Active Directory.Admin password- пароль пользователя.FQDN- полное имя домена, в котором будет выполняться аутентификация пользователей, напримерtest.loc. Так же можно указать предпочтительный контроллер домена, который будет использоваться для обращений, напримерsrv1.test.loc.Port- порт подключения к контроллеру домена по протоколу LDAP. Как правило, используется порт 389. При включении опции «Включить LDAPS» в процессе создания источника порт автоматически изменится на 636, так как он используется протоколом LDAPS. Если значение порта было задано вручную ранее, автоматическая замена выполнена не будет.
Блок "Структура каталога"
Subject search base- строка поиска атрибутов пользователей в Active Directory по протоколу LDAP, напримерdc=test,dc=loc.Group search base- строка поиска групп в Active Directory по протоколу LDAP, напримерdc=test,dc=loc.
При необходимости ограничить поиск определенными подразделениями можно указать их в строке поиска, например: ou=naice,dc=example,dc=org . Если подразделения является вложенным для другого подразделения необходимо перечислить их все до корня домена, начиная с требуемого подразделения, например: ou=test,ou=naice,dc=example,dc=org .
После заполнения настроек необходимо нажать кнопку "Проверить связь с сервером". Если настройки корректны, появится сообщение:
Нажать кнопку Добавить.
Добавить источник идентификаций можно независимо от успешности проверки связи с сервером.
Более подробно о настраиваемых параметрах можно узнать во встроенной документации .
Добавление групп
Добавление групп не является обязательным и требуется только если планируется использовать их в условиях политик авторизации.
После добавления источника идентификаций кнопка Добавить смениться на кнопку Далее. Можно нажать её, чтобы перейти в раздел Группы или нажать наверху страницы на Группы и добавить группы, которые предполагается использовать в политиках авторизации:
Нажать кнопку Получить данные и выбрать группы, которые требуется добавить. В данном примере добавлена группа Гости домена.
При необходимости найти определенную группу необходимо в поле Фильтр ввести имя группы. При необходимости можно добавить "*" в начале или конце названия группы, что позволит выполнить поиск по частичному совпадению.
После выбора необходимых групп нажать кнопку Сохранить.
Добавление атрибутов пользователей
Добавление атрибутов пользователей не является обязательным и требуется только если планируется использовать их в профилях авторизации или в условиях политик авторизации.
Атрибуты пользователей можно использовать для выдачи значении определенных параметров получая их значения из Active Directory. Далее рассматривается добавление атрибута Active Directory physicalDeliveryOfficeName который содержит значение, которое будут использоваться в качестве cVLAN. Следует иметь ввиду, что можно использовать любые атрибуты, которые содержат требуемые значения, но сам атрибут должен быть один и тот же для всех пользователей.
Перейти в раздел Атрибуты и добавить атрибут, значение которого будет использоваться для выдачи cVLAN. Следует иметь ввиду, что атрибуты, которые не имеют значений, при поиске в Active Dirtectory не возвращаются. При получении списка доступных атрибутов требуется обязательно задать фильтр с указанием имени пользователя, атрибуты которого точно содержат требуемые значения. Рекомендуется использовать фильтры: userPrincipalName=<UPN имя пользователя> или sAMAccountName=<логин пользователя>. Для пользователя в приведенном ниже примере в атрибуте Active Directory Комната (physicalDeliveryOfficeName) задано значение 1000, которое будет использоваться в качестве cVLAN:
После выбора необходимых атрибутов нажать кнопку Сохранить.
Нажав справа от добавленного атрибута кнопку , можно изменить поле Имя на другое более понятное, так как именно оно будет отображаться при работе с LDAP-словарем. В поле Значение по умолчанию указать номер VLAN, который будет использоваться для выдачи в случае, если он не задан в атрибутах пользователя в Active Directory. Значение полей Тип и Внутреннее наименование не меняются:
После этого сохранить новое значение, нажав кнопку справа от атрибута строки с параметрами атрибута.
Создание цепочки идентификаций с использованием ранее созданного источника идентификации
Открыть раздел Пользователи и устройства → Управление идентификацией → Цепочки идентификации и нажать кнопку :
После создания цепочки идентификации с использованием ранее созданного источника нажать кнопку Добавить.
Создание профиля авторизации с использованием ранее созданного атрибута
Открыть раздел Доступ к сети → Элементы политик → Профили авторизации и нажать кнопку . Откроется окно создания профиля авторизации:
Необходимо ввести:
Имя- название профиляПрофиль устройства- крайне важно выбрать профиль сетевого устройства тот же, что используется в настройках сетевого устройства, с которого будет выполняться авторизация клиента.
В блоке "Общие задачи" необходимо включить галочку настройки VLAN, после этого нажать на кнопку выбора атрибута справа . В раскрывшемся окне выбрать ранее созданный атрибут cVLAN:
Если выбор VLAN не активен, значит либо не выбран профиль сетевого устройства, либо в выбранном профиле сетевого устройства в блоке "Разрешения" не включена настройка Настроить VLAN.
И сохранить профиль авторизации, нажав кнопку Добавить:
Настройка набора политик
В разделе Доступ к сети → Политики RADIUS из коробки настроено два набора политик: Test policy set, служащий для демонстрации как могут быть настроены наборы политик, и Default, определяющий поведение в случае если входящий RADIUS-запрос не подходит ни под одно условие вышестоящих наборов политик. Таким образом набор политик Test policy set может быть удален или отредактирован.
Необходимо изменить Условие набора политик на подходящее (например, по равенству RADIUS-атрибута NAS-IP-address в запросе адресу ранее добавленного сетевого устройства), а затем перейти в детальное редактирование набора политик, нажав справа от него:
Если в наборах политик не выполнялись настройки, то все RADIUS-запросы будут обрабатываться в политике по умолчанию Default, которая всегда будет последней и не может быть удалена. Данный набор политик предполагает отказ в авторизации, но данное поведение также можно изменить.
Провалившись в набор политик, в блоке "Политика аутентификации" изменить настройку Цепочки идентификации для правила по умолчанию Default на ранее созданную цепочку Active Directory 1:
Далее, в блоке "Политика авторизации" нажать кнопку в шапке таблицы и в появившейся новом правиле политики авторизации в колонке Условия нажать кнопку . После этого:
- В модальном окне "Редактор условий" нажать в поле
Атрибут. - В открывшемся окне "Выбор атрибута для условия" нажать на для отображения только атрибутов словарей типа LDAP,
- Выбрать атрибут
ExternalGroupsиз словаряAD. Окно закроется, в полеАтрибутбудет выбрано "AD·ExternalGroups". - Выбрать
Оператор"Равно". - Нажать на поле
Атрибут/значениеи выбрать ранее импортированную из Active Directory группу. - Нажать кнопку Использовать внизу справа редактора условий.
В настройке Профили авторизации выбрать ранее созданный профиль:
После этого станет активна кнопка Сохранить. Нажать на неё и сохранить настройки политики.
На этом минимальная настройка, необходимая для авторизации клиентов с использованием источника идентификации Active Directory, выполнена. Для успешной авторизации клиенту потребуется находиться в указанной группе Active Directory.
Проверка подключения
Подробнее настройка клиентского конечного устройства для подключения описана в v1.1_8. Настройка подключения клиента.
Выполнение аутентификации пользователя в Active Directory возможна только по протоколам MSCHAPv2, EAP-PEAP-MSCHAPv2 и EAP-TLS. Аутентификация с использованием других протоколов, в том числе EAP-PEAP-GTC, не поддерживается!
Машинная аутентификация поддержана только по протоколу EAP-TLS, см. v1.1_4.6.1 Настройка "машинной" авторизации EAP-TLS (по сертификату компьютера) при интеграции с Active Directory.
Подключить клиентское устройство и после авторизации перейти в раздел Мониторинг → RADIUS → Пользовательские сессии:
Для подробного просмотра информации о сессии необходимо в колонке "Подробнее" нажать кнопку :
Настройка ротации пароля учетной записи компьютера
При необходимости может быть включена настройка ротации УЗ компьютера. По умолчанию данный функционал отключен.
Настройка ротации с использованием плейбуков ansible
За его включение отвечают переменные в плейбуке ansible в файле group_vars/all.yml. Переменные различаются для однохостовой установки и установки с резервированием.
Для однохостовой установки:
ursus_netlogon_change_pass_cron: '-'
Для установки с резервированием:
ursus_netlogon_change_pass_cron_node1: '-' ursus_netlogon_change_pass_cron_node2: '-'
Значение по умолчанию '-' отключает ротацию пароля.
Интервал замены пароля определяется cron-выражением в формате JAVA Spring, например:
ursus_netlogon_change_pass_cron: '0 10 2 1-31/7 * *' # каждый седьмой день с 1 по 31 число месяца в 02:10
При использовании установки с резервированием необходимо указать различное не совпадающее время смены пароля! Смена пароля одновременно на двух инстансах NAICE приведёт к неработоспособности интеграции MS AD, т.к. сохранённый в БД пароль компьютера и реально настроенный не совпадёт после замены!
ursus_netlogon_change_pass_cron_node1: '0 10 2 1-31/7 * *' # каждый седьмой день с 1 по 31 число месяца в 02:10 ursus_netlogon_change_pass_cron_node2: '0 20 2 1-31/7 * *' # каждый седьмой день с 1 по 31 число месяца в 02:20
При выполнении ротации пароля новый пароль генерируется автоматически с использованием букв английского алфавита в верхнем и нижнем регистре, цифр и спецсимволов. Длина пароля определяется в переменной:
ursus_netlogon_change_pass_length: 12
Допустимая длина генерируемого пароля от 12 до 200 символов. Сложность пароля не настраивается.
После завершения настройки необходимо повторно выполнить плейбук установки.
Для однохостовой установки:
ansible-playbook install-naice.yml
Для установки с резервированием:
ansible-playbook reservation-naice-services.yml -i inventory/hosts-cluster.yml
В ходе установки будет выполнен рестарт сервисов NAICE, что приведёт кратковременному (до 5 минут) перерыву сервиса.
В случае неправильного указания cron-выражения сервис naice-ursus не сможет запуститься, что приведёт к неработоспособности входа в GUI системы!
Ручная настройка ротации с изменением переменных окружения в файле .env
Периодичность ротации пароля компьютера определяется в файле переменных окружения .env, который расположен в папке установки NAICE (по умолчанию /etc/docker-naice).
Переменная не различается для однохостовой установки и установки с резервированием.
Перейти в папку установки NAICE (пример для папки используемой по умолчанию):
cd /etc/docker-naice
открыть на редактирование файл .env (пример приведён с использованием редактора nano, можно использовать другие редакторы):
sudo nano .env
Найти и отредактировать переменные:
URSUS_NETLOGON_CHANGE_COMPUTER_PASS_CRON: 0 10 2 1-31/7 * * # каждый седьмой день с 1 по 31 число месяца в 02:10, по умолчанию '-' отключено. URSUS_NETLOGON_CHANGE_COMPUTER_PASS_LENGTH: 12 # длина пароля от 12 до 200 символов, по умолчанию 12.
Сохранить изменения и выйти из редактора.
Выполнить перезапуск сервиса naice-ursus. Так же будет выполнен перезапуск зависимых сервисов:
sudo docker compose down naice-ursus && sudo docker compose up -d
Если используется установка с резервированием - выполнить последовательно действия описанные выше на каждом инстансе NAICE.
При использовании установки с резервированием необходимо указать различное не совпадающее время смены пароля! Смена пароля одновременно на двух инстансах NAICE приведёт к неработоспособности интеграции MS AD, т.к. сохранённый в БД пароль компьютера и реально настроенный не совпадёт после замены!
В случае неправильного указания cron-выражения сервис naice-ursus не сможет запуститься, что приведёт к неработоспособности входа в GUI системы!
















