Как настроить 802.1X EAP-TLS на macOS

Вопрос или проблема

Мне нужно научиться настраивать macOS для использования аутентификации EAP-TLS без использования MDM.

В сети у меня только одно устройство Mac, которым пользуется владелец. Я не хочу использовать стороннее программное обеспечение.

Мне просто нужно узнать, как импортировать сертификаты и как настроить беспроводное соединение EAP-TLS вручную.

Моя сеть поддерживает только Windows, использует AD CS для создания сертификатов и настройки станций через политику. Поскольку это Mac, я буду делать это вручную.

Предыстория: такие настройки должны быть сконфигурированы с помощью “Профиля конфигурации” — по сути, это XML-файл с настройками в определенном формате и расширением .mobileconfig. Обычно вы бы зарегистрировали устройство в MDM-сервисе, и он отправил бы конфигурационные профили через Интернет, но вы также можете просто поместить файл непосредственно на Mac (или iPhone, или iPad) и установить его вручную.

У меня нет возможности должным образом протестировать это, но я думаю, что следующая процедура сработает. Для начала вам понадобится приложение Apple Configurator, клиентский сертификат, который вы хотите использовать (обычно это файл .p12 или .pfx, т.е. включающий закрытый ключ), и сертификат сервера аутентификации (файл .crt или .cer, не включая закрытый ключ). Если вы уже установили эти сертификаты в цепочку ключей Mac, возможно, вам придется удалить их (с помощью утилиты Keychain Access), чтобы избежать конфликта. Я не думаю, что это вызовет проблему, но так как я не могу это протестировать… возможно, лучше всего просто удалить их для безопасности.

Вам также понадобится программа для редактирования XML-файлов, чтобы подправить профиль перед его установкой. Обычно для этого подходят текстовые редакторы, ориентированные на программирование (т.е. что-то, что не “помогает” добавлять в файл ненужное форматирование, или не расстраивается из-за странного расширения “.mobileconfig”). Unix-редакторы командной строки, такие как nano и vi, являются хорошими вариантами. Если вы предпочтете графический интерфейс, я рекомендую BBEdit — даже в демо-режиме, он отлично подходит для таких задач (но возьмите версию для скачивания с сайта, не из App Store, так как в последней есть некоторые ограничения по условиям безопасности App Store).

Для начала запустите Apple Configurator. Большая часть его интерфейса посвящена управлению iPhone и подобными устройствами, по сути, выступая локальным только MDM. Игнорируйте все это. Из меню “Файл” выберите “Создать профиль”.

Вы увидите окно с множеством различных категорий настроек конфигурации в левой боковой панели. Вам понадобятся всего три из них: Общие (это действительно свойства самого профиля), Сертификаты и Wi-Fi.

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

Выберите Сертификаты в боковой панели, затем нажмите кнопку Настроить в правой панели. Это должно вызвать диалоговое окно “Открыть файл”. Откройте оба сертификата: клиентский и серверный. Если вы не можете выбрать оба сразу, откройте один, затем нажмите кнопку “+” в правом верхнем углу панели и добавьте второй. Если клиентский сертификат защищен паролем, под ним будет поле для ввода пароля; лучше оставить его пустым (он запросит вас при установке профиля).

Выберите Wi-Fi в боковой панели и нажмите Настроить. Введите SSID (имя сети), внесите другие соответствующие изменения, затем в меню “Тип безопасности” выберите соответствующий вариант Enterprise. Под ним появится раздел “Настройки предприятия” с вкладками “Протоколы” и “Доверие”.

На вкладке Протоколы выберите тип TLS EAP, и под ним появится опция “Сертификат идентичности”. Выберите клиентский сертификат в выпадающем меню.

Переключитесь на вкладку “Доверие”, и в разделе “Доверенные сертификаты” установите флажок напротив серверного сертификата. Я не думаю, что вам нужно что-то вводить под “Доверенные имена серверных сертификатов”.

Примечание: в боковой панели рядом с разделом Сертификаты должен быть красный “1”, потому что пароль клиентского сертификата не введен. Это не проблема. Если там большее число или красные числа рядом с другими секциями конфигурации, это означает, что чего-то не хватает и вам следует вернуться и проверить. Он укажет на отсутствующие настройки красными стрелками.

На этом этапе профиль конфигурации должен быть готов настолько, насколько это может сделать Apple Configurator. Выберите меню Файл > Сохранить, сохраните файл где угодно (заметьте: расширение .mobileconfig будет скрыто по умолчанию, но оно там). Он может пожаловаться, что есть ошибка, и это может не сработать (снова из-за отсутствующего пароля), но скажите ему сохранить в любом случае.

На этом этапе из профиля отсутствует важная вещь: область действия. В macOS конфигурационные профили могут применяться либо только к одному пользователю, либо ко всей системе. Apple Configurator предназначен для настройки устройств iOS и tvOS, которые не имеют такого различия, поэтому в нем нет способа указать это. В macOS по умолчанию это будет применяться к области пользователя, но из вашего описания следует, что вы хотите применить это к области системы (всему компьютеру). Поэтому вам нужно отредактировать файл.

Откройте файл .mobileconfig в выбранном вами редакторе и добавьте <key>PayloadScope</key><string>System</string> на верхнем уровне. Это должно выглядеть примерно так:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
        <key>PayloadScope</key>
        <string>System</string>
        <key>ConsentText</key>
        ...

[РЕДАКТИРОВАНО:] Похоже, вам также нужно указать, чтобы конфигурация Wi-Fi применялась на уровне системы, а не только во время входа пользователей в систему. Это предполагает нахождение части XML-файла, содержащей эту часть конфигурации. Самый простой способ — найти ключ SSID_STR (и его строковое значение), затем добавить новую запись <key>SetupModes</key><array><string>System</string></array> прямо под ним. Это должно выглядеть примерно так:

        ...
        <key>SSID_STR</key>
        <string>Some Wi-Fi Name Here</string>
        <key>SetupModes</key>
        <array>
            <string>System</string>
        </array>
    </dict>
    ...

(Примечание: когда я проверял это, элемент SSID_STR был последним в dict настроек для Wi-Fi, поэтому сразу под ним был тег закрытия dict. У вас он может быть в другом порядке, в этом случае ниже будут более key записи. Это не проблема, просто то же самое в другом порядке.)

Теперь профиль конфигурации готов. Откройте Настройки системы (в меню Apple). Секция Профили может не отображаться по умолчанию, поэтому вам нужно либо выбрать её из меню Виды, либо использовать поле Поиск, чтобы найти её. В любом случае, выберите настройки Профилей.

Под списком установленных профилей (который, вероятно, будет пустым), нажмите кнопку “+”, и выберите созданный вами конфигурационный профиль. Я покажу вам суммарную информацию о том, что содержит профиль, и дам вам несколько возможностей отказаться от установки. Нажмите Продолжить/Установить/и т.д. столько раз, сколько нужно. В какой-то момент система должна запросить у вас этот отсутствующий пароль к клиентскому сертификату, а также пароль локальной учетной записи администратора; введите их и продолжите.

Когда система закончится с запросами, профиль должен быть указан под “Устройство” в списке установленных профилей (если он под “Пользователь”, изменение области действия не сработало; удалите его с помощью кнопки “-“, проверьте вашу правку и попробуйте снова). Если он не подключается к сети Wi-Fi сразу, возможно, вам нужно перезагрузить Mac, чтобы новые настройки полностью вступили в силу.

Кстати, я думаю, что на самом деле есть способ заставить Mac получить свой собственный клиентский сертификат от службы сертификатов Active Directory и автоматически применить его к настройке Wi-Fi. Но я не уверен, как именно это настроить, и для одного Mac (которому вы уже создали клиентский сертификат) вряд ли стоит беспокоиться об этом.

Я не думаю, что ваш сценарий EAP-TLS возможен без стороннего программного обеспечения.

Это может быть реализуемо, если ваш маршрутизатор/контроллер Wi-Fi выполняет роль сервера аутентификации и если этот встроенный сервер аутентификации выполняет роль PKI и может проверять сертификат, предоставленный во время сеанса EAP.

В реализации EAP есть 3 компонента:

  1. Supplicant: Это устройство или пользователь, пытающийся получить доступ к сети. Он инициирует процесс аутентификации.

  2. Authenticator: Это сетевое устройство (например, коммутатор или точка доступа), которое инициирует аутентификацию.

  3. Authentication Server: Это сервер, ответственный за проверку учетных данных пользователя или сертификата, предоставляемого/через supplicant.

Такая настройка обычно предназначена для корпоративных сетей (не уверен, является ли это вашим случаем). Вероятно, вам понадобится серверная решение для управления этим сценарием.

.

Ответ или решение

Настройка аутентификации по протоколу EAP-TLS в macOS без использования программного обеспечения для управления мобильными устройствами (MDM) является серьезной задачей, особенно если ваша сеть в основном поддерживает устройства на базе Windows и использует Active Directory Certificate Services (AD CS) для создания и управления сертификатами. Однако при соблюдении правильной последовательности действий эту задачу можно выполнить вручную.

Теория

EAP-TLS (Extensible Authentication Protocol – Transport Layer Security) — это метод аутентификации, использующий TLS для обеспечения безопасности связи между клиентом (в данном случае Mac) и сервером аутентификации. В этой схеме задействованы три основных компонента:

  1. Supplicant (заявитель): Устройство или пользователь, который пытается получить доступ к сети. В вашем случае это Mac.

  2. Authenticator (аутентификатор): Сетевое устройство, например, беспроводная точка доступа, которое требует и передает информацию для аутентификации.

  3. Authentication Server (сервер аутентификации): Сервер, который подтверждает подлинность пользователиw, используя предоставленный сертификат.

Адаптация системы macOS для работы в среде, ориентированной на Windows, требует знания о том, как импортировать и управлять сертификатами, а также как правильно создать и установить профиль конфигурации.

Пример

Начнем с подготовки необходимых инструментов и файлов:

  1. Инструменты и сертификаты: У вас должны быть в наличии Apple Configurator, клиентский сертификат (.p12 или .pfx файл с закрытым ключом) и сертификат сервера аутентификации (.crt или .cer файл).

  2. Редактор XML: Для редактирования профилей конфигурации в формате XML можно использовать текстовые редакторы, не добавляющие лишнюю информацию в файлы. Например, BBEdit или текстовые редакторы командной строки, такие как nano или vi.

Применение

  1. Импорт сертификатов: Если сертификаты уже установлены в цепь ключей macOS, возможно, стоит их предварительно удалить через утилиту Доступ к связке ключей, чтобы избежать конфликтов, хотя этого и не должно происходить.

  2. Создание профиля конфигурации:

    • Запустите Apple Configurator и создайте новый профиль через меню File > New Profile.
    • В разделе General укажите имя профиля, идентификатор и организацию.
    • В разделе Certificates добавьте клиентский и серверный сертификаты, указав при необходимости пароль для клиента (лучше оставить поле пустым для ввода позже).
  3. Настройка Wi-Fi:

    • В разделе Wi-Fi введите SSID вашей сети и выберите тип безопасности, поддерживающий Enterprise.
    • В подменю Enterprise Settings выберите EAP-TLS и укажите клиентский сертификат.
    • На вкладке Trust отметьте серверный сертификат как доверенный.
  4. Редактирование профиля:

    • Сохраните профиль конфигурации в формате .mobileconfig. Если программа предупредит об ошибке из-за отсутствующего пароля, проигнорируйте это предупреждение.
    • Откройте файл в редакторе и добавьте <key>PayloadScope</key><string>System</string> в верхнюю часть файла для применения профиля на уровне системы.
    • Кроме того, добавьте <key>SetupModes</key><array><string>System</string></array> под ключом <SSID_STR> для применения конфигурации Wi-Fi на системном уровне, а не только на уровне пользователя.
  5. Установка профиля конфигурации:

    • Откройте System Settings (Системные настройки) на Mac и перейдите в раздел Profiles.
    • Установите созданный конфигурационный профиль, следуя инструкциям. Введите пароли, если потребуется.
  6. Проверка подключения: Если подключение к сети Wi-Fi не установлено сразу, перезагрузите компьютер для применения настроек.

Если правильно следовать всем шагам, ваш Mac должен успешно авторизоваться в сети с поддержкой EAP-TLS. Хотя настройка вручную может быть сложной задачей, она позволяет интегрировать устройство macOS в существующую Windows-инфраструктуру без использования стороннего программного обеспечения.

Оцените материал
Добавить комментарий

Капча загружается...