Особенности настройки проводного подключения для выполнения 802.1x авторизации
При подключении проводной клиент как правило требует, чтобы возможность использовать авторизацию 802.1x была включена в настройках его сетевого подключения. Без этого он не пытается пройти авторизацию!
Windows 10
Нажимаем правой кнопкой внизу справа в баре на подключение и выбираем "Open Network & Internet settings".
В открывшемся окне переходим в настройки "Ethernet" и нажимаем справа "Change adapter options".
В новом открывшемся окне нажимаем правой кнопкой на сетевой интерфейс, через который подключаемся к коммутатору, и выбираем "Properties".
В открывшемся окне переходим во вкладку "Authentication", и включаем:
- Enable IEEE 802.1x authentication
- Choose a network authentication method: Microsoft: Protected EAP (PEAP)
- Remember my credentials for this connection each time I'm logged on
- Fallback to unauthorized network access
нажимаем кнопку "Additional Settings".
В открывшемся окне выбираем "Specify authentication mode": "User authentication" и нажимаем "Replace credentials".
В открывшемся окне вводим имя пользователя / пароль и нажимаем "OK":
Windows 11
Нажимаем правой кнопкой внизу справа в баре на значок подключения и выбираем "Параметры сети и Интернета" - откроется страница:
В открывшемся окне переходим в настройки "Ethernet":
и нажимаем кнопку "Изменить" для "Параметры проверки подлинности":
В открывшемся окне включаем настройку "Включить проверку подлинности IEEE 802.1X".
Затем нажимаем "Изменить конфигурацию":
Выбираем:
- "Метод EAP": защищенные EAP (PEAP);
- "Метод проверки подлинности": защищенный пароль (EAP-MSCHAP v2).
Нажимаем "Сохранить".
Возвращаемся в "Параметры" - "Сеть и Интернет" и переходим в раздел "Дополнительные сетевые параметры":
Разворачиваем раздел "Ethernet":
и нажимаем кнопку "Изменить" параметра "Другие параметры адаптера".
Откроется окно "Ethernet: свойства", перейдем во вкладку "Проверка подлинности":
Включаем галочку "Включить проверку подлинности IEEE 802.1X".
Нажимаем кнопку "Параметры" справа от окна выбора метода проверки подлинности (должен быть выбран "Microsoft: защищенный EAP (PEAP)"):
- "Подтверждать удостоверение сервера с помощью проверки сертификата" - отключить, (если оставить настройку включенной - в ходе аутентификации надо будет согласится с предъявленным сертификатом RADIUS, либо заранее добавить CA сертификат, которым подписан сертификат сервера).
- "Подключаться к следующим серверам": отключить.
- "Включить удостоверение конфиденциальности": отключить.
Справа от метода проверки подлинности (должен быть выбран "защищенный пароль (EAP-MSCHAP v2)" нажимаем кнопку "Настроить":
В открывшемся окне снимаем галочку с настройки "Использовать автоматически имя входа и пароль из Windows (и имя домена, если существует)". Нажимаем "OK". Нажимаем "OK" в окне "Свойства защищенного EAP".
Вернувшись в окно "Проверка подлинности" нажимаем на кнопку "Дополнительные параметры":
Включаем настройку "Указать режим проверки подлинности", выбираем в выпадающем меню "Проверка подлинности пользователя". Нажимаем ставшую доступной кнопку "Сохранить учетные данные":
Вводим учетные данные: логин (без домена) и пароль. Нажимаем "OK".
Нажимаем "OK" в окне "Параметры 802.1X" и нажимаем "OK" в окне "Ethernet: свойства".
После этого может потребоваться отключить/включить кабель ПК, либо перезагрузить компьютер для выполнения аутентификации пользователя.
Ubuntu
В качестве приложения для управления сетевыми соединениями необходимо использовать утилиту "NetworkManager"
NetworkManager
Проверка состояния NetworkManager
Проверяем, управляет ли сетевыми интерфейсами "NetworkManager":
nmcli device
Интерфейсы, управление которыми выполняет "NetworkManager" вывод выглядит:
nmcli device DEVICE TYPE STATE CONNECTION enp3s0 ethernet connected enp3s0 enp2s0.1000 vlan connected enp2s0.1000 enp2s0 ethernet connected enp2s0
Интерфейсы, которые не управляются выглядят так (в колонке "STATE" указано "unmanaged"):
nmcli device DEVICE TYPE STATE CONNECTION eth0 ethernet unmanaged -- eth1 ethernet unmanaged -- lo loopback unmanaged --
Если при выполнении команды вывод:
nmcli: command not found
означает, что "NetworkManager" не установлен в системе.
Установка NetworkManager
Установить "NetworkManager" командой:
sudo apt update && sudo apt install network-manager
В файле настроек:
/usr/lib/NetworkManager/conf.d/10-globally-managed-devices.conf
Добавить исключения для интерфейсов, которыми необходимо управлять через "NetworkManager", добавив исключение в формате "except:<имя интерфейса>". Пример файла, после того как были добавлены исключения для интерфейсов "enp2s0" и "enp3s0":
[keyfile] unmanaged-devices=*,except:type:wifi,except:type:gsm,except:type:cdma,except:enp2s0,except:enp3s0
В файле конфигурации "netplane" "/etc/netplan/01-network-manager-all.yaml" изменить настройку "renderer" на "NetworkManager" для интерфейсов, управление котором необходимо переключить на "NetworkManager":
network: version: 2 renderer: NetworkManager ethernets: enp3s0:
Применить настройки:
sudo netplan try
Запустить "NetworkManager" и включить его автозапуск:
systemctl enable NetworkManager systemctl restart NetworkManager
Выполнить команды:
nmcli device DEVICE TYPE STATE CONNECTION enp3s0 ethernet connected enp3s0 enp2s0 ethernet connected enp2s0 nmcli connection NAME UUID TYPE DEVICE enp3s0 12f98b70-4d3e-4789-ba2f-6c11cb17d386 ethernet enp3s0 enp2s0 09f7c55e-505f-436b-9f62-af48a4a36414 ethernet enp2s0
и убедится, что интерфейсы управляются "NetworkManager".
Создание подключения с использованием утилиты nmcli
Просмотреть список настроенных интерфейсов:
nmcli connection NAME UUID TYPE DEVICE Ethernet connection 1 5f6d5547-dc11-4acf-95d2-03ff67551fa9 ethernet enp3s0
При необходимости удалить настройки интерфейса (DEVICE), для которого будет выполняться настройка:
sudo nmcli connection delete 'Ethernet connection 1'
Повторно создать интерфейс, с необходимыми настройками авторизации:
sudo nmcli connection add type ethernet ifname enp3s0 con-name '8021x' \ ipv4.method auto \ 802-1x.eap peap \ 802-1x.phase2-auth mschapv2 \ 802-1x.identity <логин пользователя> \ 802-1x.password <пароль пользователя> \ 802-1x.system-ca-certs yes
При успешном создании подключения появится лог:
Connection '8021x' (1a268eaa-247b-4d46-b6e6-b24ce28105ca) successfully added.
после чего будет выполнена попытка подключиться используя авторизацию 802.1x.
Управление подключением с помощью утилиты nmcli
Для исправления ошибочных настроек необходимо выполнить:
sudo nmcli connection modify '8021x' \ ipv4.method auto \ 802-1x.eap peap \ 802-1x.phase2-auth mschapv2 \ 802-1x.identity <логин пользователя> \ 802-1x.password <пароль пользователя> \ 802-1x.system-ca-certs yes
При необходимости можно указать любой произвольный параметр, который необходимо исправить.
После чего выключить/включить интерфейс:
sudo nmcli connection down '8021x' && sudo nmcli connection up '8021x' Connection '8021x' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/56) Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/57)
При необходимости можно войти в интерактивный режим конфигурирования интерфейса:
sudo nmcli connection edit 8021x
В открывшемся окне ввести команду "print":
nmcli> print
что бы просмотреть все настройки сетевого интерфейса.
Для того что бы изменить настройку необходимо использовать команду "set" для соответствующей настройки:
nmcli> set 802-1x.identity <логин пользователя> nmcli> set 802-1x.password <пароль>
Для сохранения настроек выполнить команду ''save":
nmcli> save Connection '8021x' (f3a8029a-16ef-4a9f-a8f9-eee528b89fb0) successfully updated.
После чего выключить/включить интерфейс:
sudo nmcli connection down '8021x' && sudo nmcli connection up '8021x' Connection '8021x' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/56) Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/57)
Просмотр логов о выполнении подключения
Можно просмотреть логи в файле "/var/log/syslog":
sudo cat /var/log/syslog | grep -i networkmanager
Так же в случае неудачного подключения:
sudo nmcli connection down '8021x' && sudo nmcli connection up '8021x' Connection '8021x' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/54) Error: Connection activation failed: Secrets were required, but not provided Hint: use 'journalctl -xe NM_CONNECTION=f3a8029a-16ef-4a9f-a8f9-eee528b89fb0 + NM_DEVICE=enp3s0' to get more details
Можно просмотреть лог подключения используя утилиту "journalctl", которую необходимо запускать с правами "sudo":
sudo journalctl -xe NM_CONNECTION=f3a8029a-16ef-4a9f-a8f9-eee528b89fb0 + NM_DEVICE=enp3s0
Ubuntu 22 - настройка через GUI
Предварительно необходимо убедится в cli интерфейсе системы, что "NetworkManager" может управлять сетевым интерфейсом!
Открыть "NetworkManager" можно через меню, поиск или нажав на соответствующую иконку в панели управления подключениями в статус баре:
И выбрать пункт "Edit Connections...":
Выбираем нужное сетевое подключение и нажимаем внизу на шестеренку.
Если список интерфейсов не отображается или редактирование недоступно - вероятнее всего "NetworkManager" не управляет интерфейсами.
В открывшемся окне выбираем вкладку "802.1X security":
В поле Authentication выбираем "Protected EAP (PEAP)":
- Authentication: Protected EAP (PEAP)
- CA certificate: выбираем сертификат CA, которым подписан сертифкат RADIUS-сервера (надо предварительно загрузить на клиента). Если не хотим проверять сертитификат сервера - надо ключить настройку No CA certificate is required.
- PEAP version: Automatic
- Inner authentication: MSCHAPv2
- Username: имя пользователя
- Password: пароль пользователя
Нажимаем "Save".
Как правило полученные настройки могут не применяться сразу - потребуется отключить / включить интерфейс.
Так же "NetworkManager" может вообще не управлять сетевыми подключениями (вместо него это может делать, например, "systemd-networkd.service"), и в этом случае потребуется переключить управление.
Может требоваться перезагрузка компьютера после изменения настроек.