User Tools

Site Tools


авторизация_в_сети_wi-fi_на_сертификатах

Авторизация в сети Wi-Fi на сертификатах

Предварительные требования

Здесь описаны требования, реализация которых необходима для работы. Реализация данных требований выходит за рамки этой инструкции.

1) Развёрнутый и работающий NPS-сервер. Сервер NPS должен быть авторизован и зарегистрирован в Active Directory.

2) Для реализации авторизации по сертификатам - нам требуется внедрённый PKI и настроенная генерация сертификатов для компьютеров (я предполагаю, что у компьютеров уже есть валидные сертификаты рабочих станций). Также, сервер NPS должен иметь действующий сертификат, изданный шаблоном типа RAS and IAS server.

3) В Active Directory создана группа для авторизации компьютеров или пользователей Wi-Fi.

Настройка NPS

1) Заводим клиента RADIUS. Это может быть точка достуа или контроллер (в данном примере в качестве клиента будет выступать CAPSMAN Mikrotik). Вводим адрес, общий секрет и другие параметры, если требуются.

2) Создаём новую политику запросов на подключение.

:!: Никаких дополнительных настроек, не показанных на скриншотах - не требуется.

3) Создаём сетевую политику. Данная политика будет определять - каким группам пользователей или компьютеров можно подключаться к сети. Группа, использованная на примере - это группа Active Directory, содержащая аккаунты компьютеров - именно ей будет разрешен доступ (если у компьютера есть валидный сертификат).

:!: Никаких дополнительных настроек, не показанных на скриншотах - не требуется.

4) На всякий случай включим логирование событий RADIUS, чтобы в event-лог стали записываться события, связанные с NPS (логи будут появляться в разделе system).

 auditpol /set /subcategory:"Network Policy Server" /success:enable /failure:enable

Настройка клиента RADIUS на примере CAPSMAN

Предположим, что клиентом RADIUS, который будет запрашивать право на подключение - будет выступать контроллер точек досутпа - Mikrotik CAPSMAN.

1) Подключаемся к нему через Winbox, заходим в раздел RADIUS и добавляем наш NPS. Указываем адрес сервера, source-адрес, с которого Mikrotik будет подключаться, порт и другие параметры.

2) Выставляем в разделе CAPSMAN следующие параметры безопасности.

3) Прибиваем эти параметры к конфигурации беспроводной сети в разделе CAPSMANConfigurations.

Логи запросов к RADIUS можно почитать в разделе logs. Возможно, нам потребуется расширить уровень логгирования для событий, связанных с RADIUS.

Настройка клиентов Windows 11

1) Если на нашем компьютере уже есть изданный сертификат, а УЦ PKI добавлены в доверенные, то можно переходить к настройке беспроводного подключения. Для этого воспользуемся мастером добавления подключения Wi-Fi вручную (апплет старой панели управления).

2) Вводим SSID сети, в параметрах выбираем WPA2-Personal.

3) В настройке дальнейших параметров - имеет смысл оринтироваться на скриншоты ниже. Здесь важно выбрать тип безопасности, правильный режим проверки подлинности (в примере мы авторизовываем компьютеры, а не пользователей), отметить корневой УЦ нашего PKI, выбрать метод проверки подлинности “Microsoft: Смарт-карта”, указать имя RADIUS-сервера, к которому мы собираемся подключаться.

4) Если требуется по любой причине отредактировать уже созданный профиль Wi-Fi сети - нам поможет программа ManageWirelessNetworks от NirSoft, т.к. в новом интерфейсе Windows 11 невозможно отредактировать все параметры. ManageWirelessNetworks выведет все созданные профили Wi-Fi и позволит отредактировать нужные (Edit Wireless Network) в старом диалоговом окне.

Программа доступна по ссылке: https://www.nirsoft.net/utils/manage_wireless_networks.html

Распространение параметров сети для Windows через GPO

Чтобы настроить распространение параметров сети для клиентов - нам необходимо скопировать настройки, которые мы сделали вручную в профиль, доступный в настройке GPO.

Создание конфигурации и настройка политики происходит в разделе: Computer configuration → Windows Settings → Security Settings → Wireless Network (IEEE 802.11) Policies.

Для WPA2 Enterprise тип конфигурации должен быть “инфраструктурный”, а шифрование всегда AES-CCMP (другие типы шифрования используются для WPA2 Personal).

Пример создания работающей конфигурации через GPO.

Решение возможных проблем

После первичной настройки подключение завелось не сразу. На компьютере-клиенте возникала ошибка типа failure в журнале логов security приблизительно следующего содержания:

Additional Information:
 Reason Code: Explicit Eap failure received (0x50005)
 Error Code: 0x40420110
 EAP Reason Code: 0x40420110
 EAP Root Cause String: Network authentication failed due to a problem with the user account
EAP Error Code: 0x40420110

Проблема решилась после добавления сертификата из шаблона RAS and IAS server NPS-сервера в раздел personal хранилища сертификатов компьютера (изначально он был добавлен только для службы Network Policy Server).

:!: Гипотеза про причины проблемы - требует проверки.

Авторизация в Wi-Fi сети на Ubuntu

Для авторизации на основе членства в группе Windows компьютеров - машину с Linux Ubuntu требуется ввести в домен и добавить в группу компьютеров AD, имеющую право на оподключение в RADIUS.

Ей также потребуется сертификат, запрошенный вручную из PKI (можно запросить через кастомный шаблон рабочих станций, разрешающий экспорт закрытого ключа. Разделить ключи можно при помощи OpenSSL из файла PFX).

Так как Linux пытается подключаться от пользователя, и про аккаунты компьютеров AD он ничего не знает, нам потребуется сертификат, содержащий заполненный user principal name (UPN). Его можно указать вручную в запросе к УЦ. Нам также нужно заполнить соответствующий аттрибут в AD. Пример значения аттрибута user principal name:

 COMP1@domain.local

Посмотреть значение этого аттрибута можно либо в свойствах объекта в консоли AD:users and computers, либо командой PS:

 Get-ADComputer -Identity COMP1 | fl

В Ubuntu при подключении к сети нам требуется указать безопасность WPA2 Enterprise, аутентификацию TLS, identity, равный UPN, который мы сделали в сертификате, сертификат корневого центра нашего PKI, а также открытый и закрытый ключи сертификата компьютера, сгенерированного для Linux-машины. Пример настроек:

:!: Даже если приватный ключ не защищен паролем, Ubuntu будет его запрашивать. В этом случае можно ввести любой пароль и всё будет работать.

Авторизация в Wi-Fi сети на MacOS

Для авторизации на основе членства в группе Windows компьютеров - машину с MacOS требуется ввести в домен и добавить в группу компьютеров AD, имеющую право на подключение в RADIUS.

Ей также потребуется сертификат, запрошенный вручную из PKI (можно запросить через кастомный шаблон рабочих станций, разрешающий экспорт закрытого ключа). Mac OS умеет работать с файлами PFX, сторонних средств не требуется.

Как и в случае с Linux Ubuntu, нам потребуется сертификат, содержащий заполненный user principal name (UPN). Его можно указать вручную в запросе к УЦ. Нам также нужно заполнить соответствующий аттрибут в AD (см. раздел с Ubuntu).

:!: Главное затруднение в случае с MacOS состоит в том, что для добавления настроек WPA2 Enterprise подключения на современных версиях MacOS - встроенных средств нет (предполагается использование MDM системы). Если мы попробуем подключиться к WPA2 Enterprise сети без установленной конфигурации - мы получим запрос имени пользователя и пароля, что нас не утсраивает, т.к. мы хотим использовать сертификат машины.

Существуют, впрочем, утилиты, генерирующие конфигурационный файл и работающие в том числе под Windows. Пример такой утилиты - iMazing Profile Editor, который доступен по ссылке.

https://imazing.com/profile-editor/download/windows

В полях создаваемого профиля заполняем SSID сети, тип шифрования WPA2, тип EAP - TLS, выставляем в username имя машины - вместо имени пользователя, игнорируя запросы на пароль и предупреждения утилиты о том, что обязательные поля не заполнены. Также вводим возможные имена NPS сервера\серверов, выбираем источник данных для входа - Active Directory и заполняем UUID значением нашего UPN. Не ясно - влияет ли это на конфигурацию в конечном счёте, но это работает. Все остальные поля конфигурации можно не заполнять и переходить к экспорту конфигурации, которая будет сохранена в файл с расширением *.mobileconfig.

Пример настройки iMazing Profile Editor на скриншотах.

Теперь необходимо скопировать конфиг и установить *.mobileconfig на MacOS. При попытке установить профиль настроек - получим предупреждение о том, что добавляемый профиль нужно вручную просмотреть в системных настройках.

Идём в системные настройки и ищем пункт профили. В списке профилей обнаружится наш новый профиль, который необходимо установить. Установка потребует подтверждения и ввода пароля локального администратора.

Также, нам необходимо установить сертификат корневого УЦ в центры сертификации MacOS и проставить доверие. Пример:

Возможно, в центры сертификации также нужно добавить издающий УЦ.

Сертификат, сгенерированный для рабочей станции на Mac - в раздел вход связки ключей ОС. Это можно сделать, использовав пункт меню файлдобавить связку ключей и введя пароль от PFX.

:!: Важно установить сертификат именно в этот раздел, поскольку, если мы установим сертификат в раздел система - MacOS будет каждый раз требовать пароль локального администратора при подключении к сети wi-fi.

После установки профиля, если всё сделано верно - сеть, вместо пароля пользователя для аутентификации - предложит выбрать сертификат (при этом, поля для ввода имени учётной записи и пароля всё равно будут видимыми, но их можно оставить пустыми - главное указать сертификат компьютера), после чего рабочая станция успешно подключится к сети WPA2 Enterprise.

авторизация_в_сети_wi-fi_на_сертификатах.txt · Last modified: 2024/11/01 10:23 by jp