Дерево страниц
Перейти к концу метаданных
Переход к началу метаданных

Особенности настройки проводного подключения для выполнения 802.1x авторизации

При подключении проводной клиент как правило требует, чтобы возможность использовать авторизацию 802.1x была включена в настройках его сетевого подключения. Без этого он не пытается пройти авторизацию!

Windows 10

Нажимаем правой кнопкой внизу справа в баре на подключение и выбираем "Open Network & Internet settings".

В открывшемся окне переходим в настройки "Ethernet" и нажимаем справа "Change adapter options".

В новом открывшемся окне нажимаем правой кнопкой на сетевой интерфейс, через который подключаемся к коммутатору, и выбираем "Properties".

 Если не отображается вкладка Authentication (Аутентификация)

Вкладка не отображается, если не включена служба "Wired AutoConfig" (Проводная автонастройка). В этом случае необходимо открыть оснастку "Services" ("Службы") Windows и запустить соответствующую службу и включить ее автозапуск:

В открывшемся окне переходим во вкладку "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":

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"),  и в этом случае потребуется переключить управление.

Может требоваться перезагрузка компьютера после изменения настроек.

  • Нет меток