Описание 

В данной инструкции описано, как выполнить настройку аутентификации по протоколу EAP-TLS с использованием "машинного" сертификата компьютера, подключенного к домену MS Active Directory.

В рамках инструкции описывается:

1) Добавление в NAICE сертификатов, необходимых для работы EAP-TLS.

2) Настройка подключения к MS AD, а также добавление MS AD в качестве внешнего источника пользовательских учетных данных.

3) Настройка необходимых для EAP-TLS авторизации сущностей, с учетом требуемых для использования машинных сертификатов изменений.

4) Настройка сетевого подключения ПК-клиента на примере ОС Windows 10.

Требования и ограничения

Общие требования к сертификатам

  1. Работа с сертификатами, использующими ГОСТ шифрование, не поддерживается.
  2. NAICE не имеет встроенного средства управления сертификатами. Выпуск и управление жизненным циклом сертификатов возлагается на стороннее ПО (ЦС Windows Server).

Требования к сертификату, используемому сервисом NAICE-RADIUS

  1. Сертификат, используемый сервисом, должен иметь формат PEM или CRT без включения ключа шифрования в сертификат сервера.
  2. Использование DER-кодировки не поддержано.
  3. Использование сертификатов в контейнере PKCS не поддержано.
  4. В пароле к приватному ключу не допускается использование символов: $, ', ", `, знаки скобок и пробел.
  5. Возможно использование только одного сертификата сервисом NAICE-RADIUS. 
  6. Сертификат, используемый NAICE-RADIUS, должен содержать атрибуты:
    1. Subject: CN;
    2. X509v3 Key Usage: Digital Signature, Key Encipherment;
    3. X509v3 Extended Key Usage: TLS Web Server Authentication, TLS Web Client Authentication.
  7. Сертификат, используемый пользователем, должен содержать атрибуты:
    1. Subject: CN;
    2. X509v3 Key Usage: Digital Signature, Key Encipherment;
    3. X509v3 Extended Key Usage: TLS Web Client Authentication.
Подробно весь процесс настройки EAP-TLS авторизации, а также описание процесса создания сертификатов описаны в основной инструкции: v1.0_4.7 Настройка EAP-TLS аутентификации. Пожалуйста, ознакомьтесь с ней перед выполнением следующих шагов.

Требования к Active Directory

DNS-сервер, который будет использоваться хостом с установленным NAICE должен обеспечивать:

Как правило используется DNS-сервер, входящий в состав домена.

Все IP-адреса, которые могут возвращаться как адреса домена или контроллеров домена должны быть доступны с хоста на котором установлен NAICE.

Список портов для взаимодействия с Active Directory:

ПротоколПортНазначениеПримечания
UDP53DNSСервер, отвечающий за разрешение доменных имен.
TCP389LDAPДля выполнения поиска данных о пользователях и группах в домене.
TCP3268LDAPМожно использовать вместо порта 389, если нет леса деревьев.
TCP49152-65535RPC Dynamic Port RangeДля выполнения аутентификации пользователей по протоколу netlogon (MS-NRPC).


Подробнее о требованиях и работе с Active Directory можно узнать в инструкции v1.0_4.1 Настройка интеграции с Active Directory.

Установка сертификатов

Установка сертификатов выполняется плейбуком Ansible. Для корректной работы требуется файлы сертификата расположить на хосте, с которого будет выполняться плейбук Ansible в папке ansible/roles/docker/files/eap-tls.

Требуется три файла:

Далее приведен пример с расположением файлов в на хосте выполнения плейбуков Ansible:

$ ls -lh ansible/roles/docker/files/eap-tls
-rw-rw-r-- 1 root root 1,4K ноя 19 15:44 trusted_server.crt
-rw-rw-r-- 1 root root 1,4K ноя 22 05:20 trusted_server_chain.crt
-rw------- 1 root root 1,9K ноя 22 05:19 trusted_server.k

Файлы могут иметь произвольное наименование.

Настройка переменных для копирования сертификатов 

После расположения файлов на хосте, требуется в файле "group_vars/all.yml" указать значения переменных:

# параметры для авторизации по протоколу EAP-TLS
# параметры сертификатов
# для включения установки сертификатов протокола EAP-TLS необходимо расположить файлы сертификатов сервера в папке ansible/roles/docker/files/eap-tls
radius_eap_tls_cert_dir_copy: true   # включить копирование сертификатов из директории ansible/roles/docker/files/eap-tls
radius_eap_tls_certs_ca_cert_file: trusted_server.crt   # имя файла корневого (CA) сертификата
radius_eap_tls_certs_private_key_file: trusted_server.k   # имя файла приватного ключа сертификата сервера
radius_eap_tls_certs_private_key_password:  # пароль к файлу приватного ключа сертификата сервера, оставьте пустым, если файл приватного ключа не запаролен
radius_eap_tls_certs_certificate_file: trusted_server_chain.crt   # имя файла серверного сертификата

Указать при необходимости параметры взаимодействия с OCSP-сервером (опционально):

# настройки проверки статуса отозванных сертификатов по протоколу OCSP
radius_eap_tls_ocsp_enable: 'false' # Включение проверки статуса отзыва сертификата по протоколу OCSP
radius_eap_tls_ocsp_override_url: 'false' # Использовать URL сервиса OCSP из сертификата
radius_eap_tls_ocsp_url: 'http://127.0.0.1/ocsp' # URL для обращения к сервису OCSP
radius_eap_tls_ocsp_softfail: 'false' # Мягкая проверка доступа к серверу проверки OSCP, если сервер недоступен, процесс не завершится, а продолжится
radius_eap_tls_ocsp_timeout: 0 # Таймаут обращения к серверу OSCP
radius_eap_tls_ocsp_use_nonce: 'true' # Позволяет включить одноразовый код в запрос - nonce, который может быть включен в соответствующий ответ


Работа с OCSP-сервером поддержана только по протоколу HTTP с реализацией MS Windows Server!

С описанием каждого параметра можно ознакомиться в основной инструкции v1.0_4.7 Настройка EAP-TLS аутентификации.

Настройка NAICE 

Добавление сетевого устройства

Необходимо:

  1. Настроить профиль для сетевого устройства либо выбрать один из профилей доступных по умолчанию.
  2. Добавить сетевое устройство в NAICE и назначить ему профиль.

В инструкции будет использоваться встроенный профиль "Eltex-MES". Для настройки своего профиля можно воспользоваться встроенной документацией: v1.0_5. Встроенная документация.

Для работы авторизации 802.1x необходимо соответствующим образом сконфигурировать порты сетевого коммутатора, для этого необходимо обратиться к инструкции производителя.

Для настройки сетевого устройства в NAICE необходимо открыть раздел Администрирование → Сетевые ресурсы → Устройства и нажать (слева в верхней части страницы). Откроется окно добавления сетевого устройства:

Заполните следующие поля:

Нажать Сохранить после заполнения настроек.

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

Подробно весь процесс настройки подключения к Active Directory описан в статье v1.0_4.1 Настройка интеграции с Active Directory, но в текущей инструкции потребуются лишь некоторые шаги, рассмотренные ниже.

Создание источника идентификации

Для работы "машинной" авторизации при интеграции с MS AD нельзя использовать в настройке внешнего источника идентификации схему "ACTIVE_DIRECTORY"!

В этом случае используется схема "CUSTOM"!

Открыть раздел Администрирование → Управление идентификацией → Внешние источники идентификации и нажать . Откроется окно добавления внешнего источника идентификаций:


Настройка структурно разделена на блоки.

Блок "Схема"

Блок "Подключение"

Блок "Структура каталога"

При необходимости ограничить поиск определенными подразделениями можно указать их в строке поиска, например: ou=naice,dc=example,dc=org . Если подразделения является вложенным для другого подразделения необходимо перечислить их все до корня домена, начиная с требуемого подразделения, например: ou=test,ou=naice,dc=example,dc=org .

После заполнения настроек необходимо нажать кнопку "Проверить связь с сервером". Если настройки корректны, появится сообщение:


Нажать кнопку Добавить.

Добавить источник идентификаций можно независимо от успешности проверки связи с сервером.

Более подробно о настраиваемых параметрах можно узнать во встроенной документации .

Добавление групп

Добавление групп не является обязательным и требуется только если планируется использовать их в условиях политик авторизации.

После добавления источника идентификаций кнопка Добавить смениться на кнопку Далее. Можно нажать её, что бы перейти в раздел Группы или нажать наверху страницы на 2 Группы и добавить группы, которые предполагается использовать в политиках авторизации:


Нажать кнопку Получить данные и выбрать группы, которые требуется добавить. В данном примере добавляем группу Гости домена.

При необходимости найти определенную группу надо в поле Фильтр ввести имя группы. При необходимости можно добавить "*" в начале или конце названия группы, что позволит выполнить поиск по словосочетанию.


После выбора необходимых групп нажать кнопку Сохранить.

Добавление атрибутов объектов

Добавление атрибутов не является обязательным шагом, но может потребоваться в случае настройки доступа по одному из атрибутов объектов. Например, существует возможность выдавать пользователю VLAN или ACL, получая их значение из какого-либо атрибута объекта в MS AD.

С данным блоком настроек можно ознакомиться в общей инструкции по интеграции с Active Directory: v1.0_4.1 Настройка интеграции с Active Directory.

Настройка EAP-TLS авторизации

Создание цепочки идентификаций с использованием ранее созданного источника идентификации

Открыть раздел Администрирование → Управление идентификацией → Цепочки идентификации и нажать кнопку :


Необходимо:



Атрибут "Subject - Common Name" указан в качестве примера. Это не единственный атрибут, который можно использовать в рамках авторизации. Главное требование к атрибуту - однозначное соответствие значения единственному объекту в домене.

        Issuer: C=RU, L=Moscow, OU=adm.test.loc, CN=Administration, emailAddress=adm@test.loc
        Validity
            Not Before: Jun 23 11:13:30 2025 GMT
            Not After : Jun 23 11:13:30 2027 GMT
        Subject: C=RU, tester@test.loc  <--------- Уникальный атрибут сертификата, определяющий принадлежность к ПК
        Subject Public Key Info:
            Public Key Algorithm: rsaEncryption
                Public-Key: (2048 bit)


После создания цепочки идентификации с использованием ранее созданного источника нажать кнопку Добавить.

Настройка списка разрешенных протоколов

Настройка возможности использовать протокол EAP-TLS выполняется в разделе Политики → Элементы → Разрешенные протоколы. В списке разрешенных протоколов по умолчанию Default protocols поддержка протокола уже включена. Если создается новый список доступных протоколов, необходимо включить поддержку EAP-TLS:


Настройка набора политик авторизации/аутентификации

Необходимо перейти в раздел Политики → Наборы политик и нажать значок добавления нового набора политик:

Заполнить:

Кликнуть Условия, в открывшемся редакторе заполнить:

Далее необходимо подтвердить выбор кнопкой Использовать. После чего откроется предыдущее окно создания набора политик, но с уже заполненным полем Условия.

Затем необходимо кликнуть Сохранить, и перейти к настройке политики значком ">>"

Откроется окно настройки политики:

Здесь необходимо выбрать настроенную ранее цепочку идентификации, а затем в поле Профили авторизации выбрать PermitAccess, далее нажать Сохранить.

В инструкции рассмотрена настройка базового минимального набора политик для работы авторизации, подробнее ознакомиться с настройкой политик можно во встроенной документации v1.0_5. Встроенная документация.

Настройка сетевого подключения на примере клиента Windows 10

Предполагается, что ПК-клиенты уже подключены к домену, а также имеют сертификаты машинной авторизации и сертификат ЦС, добавленные в Сертификаты компьютера.

Для настройки сетевого подключения потребуется перейти Пуск → Параметры → Сеть и Интернет → Ethernet → Настройка параметров адаптера. В открывшемся окне выбрать адаптер, дважды нажать на него левой кнопкой мыши и перейти в окно свойств. Перейти во вкладку Проверка подлинности:

Нажать кнопку Параметры справа от метода проверки подлинности, в открывшемся окне:

Нажать ОK.

На вкладке Проверка подлинности нажать в нижней части на кнопку Дополнительные параметры, в открывшемся окне:

Повторно в двух окнах подряд нажать ОК, закрыв вкладку свойств подключения.

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


Проверка успешности подключения

Пример успешной авторизации в разделе Мониторинг →  RADIUS:

Информация при выборе успешной сессии авторизации: