Настройка 802.1X: аутентификация в проводной сети
Настройка 802.1X: аутентификация в проводной сети
Воткнуть кабель в розетку и получить доступ к корпоративной сети — звучит как нормальная ситуация, но это серьёзная уязвимость. Протокол 802.1X решает эту проблему, требуя аутентификации от каждого устройства перед предоставлением доступа к сети. Разберём, как это работает и как настроить с нуля.
Зачем нужен 802.1X
Без 802.1X любой человек, получивший физический доступ к патч-панели или розетке, может подключить ноутбук или хаб и оказаться внутри вашей сети. 802.1X создаёт контроль на уровне порта коммутатора:
- Только аутентифицированные устройства получают доступ
- Можно автоматически помещать устройства в нужный VLAN
- Все попытки подключения логируются
- Работает для проводных и беспроводных сетей
Компоненты системы
Архитектура 802.1X состоит из трёх элементов:
- Supplicant — клиентское устройство (ноутбук, телефон)
- Authenticator — коммутатор или точка доступа
- Authentication Server — RADIUS-сервер (обычно FreeRADIUS)
Процесс: supplicant подключается к порту → коммутатор (authenticator) запрашивает учётные данные через EAP → данные передаются на RADIUS → RADIUS принимает решение → коммутатор открывает или закрывает порт.
Установка и настройка FreeRADIUS
apt install freeradius freeradius-utils
Добавьте клиента (коммутатор) в /etc/freeradius/3.0/clients.conf:
client switch-core {
ipaddr = 192.168.1.254
secret = StrongSharedSecret123
shortname = core-switch
}
Добавьте тестового пользователя в /etc/freeradius/3.0/users:
testuser Cleartext-Password := "testpass"
Tunnel-Type = VLAN,
Tunnel-Medium-Type = IEEE-802,
Tunnel-Private-Group-Id = "100"
Запустите и проверьте:
systemctl enable --now freeradius
radtest testuser testpass 127.0.0.1 0 testing123
Ответ Access-Accept означает что RADIUS работает корректно.
Supplicant на клиенте (Linux)
Установите wpa_supplicant (он работает и для проводных сетей):
apt install wpasupplicant
Конфиг /etc/wpa_supplicant/wired.conf:
network={
key_mgmt=IEEE8021X
eap=PEAP
identity="testuser"
password="testpass"
phase2="auth=MSCHAPV2"
}
Запуск: wpa_supplicant -i eth0 -c /etc/wpa_supplicant/wired.conf.
На Windows 802.1X настраивается через свойства сетевого адаптера → вкладка «Проверка подлинности».
Настройка коммутатора (Cisco)
aaa new-model
aaa authentication dot1x default group radius
aaa authorization network default group radius
radius server FREERADIUS
address ipv4 192.168.1.10 auth-port 1812 acct-port 1813
key StrongSharedSecret123
dot1x system-auth-control
interface GigabitEthernet0/1
switchport mode access
dot1x port-control auto
MAB Fallback: для устройств без supplicant
Принтеры, IP-камеры, телефоны VoIP не поддерживают 802.1X. Для них используется MAC Authentication Bypass (MAB) — коммутатор отправляет MAC-адрес устройства как логин на RADIUS:
interface GigabitEthernet0/2
dot1x port-control auto
mab
authentication order dot1x mab
authentication fallback MAB
В FreeRADIUS добавьте MAC-адрес в базу устройств.
Dynamic VLAN Assignment
Главная фишка 802.1X — автоматическое назначение VLAN на основе учётных данных. FreeRADIUS возвращает атрибуты VLAN в ответе, коммутатор применяет их к порту:
# В /etc/freeradius/3.0/users:
printer01 Cleartext-Password := "00:11:22:33:44:55"
Tunnel-Type = VLAN,
Tunnel-Medium-Type = IEEE-802,
Tunnel-Private-Group-Id = "200"
Разные пользователи и устройства автоматически попадают в свои VLAN — без ручной настройки каждого порта.
Тестирование
# Тест аутентификации с клиента
eapol_test -c /etc/wpa_supplicant/wired.conf -a 192.168.1.10 -p 1812 -s StrongSharedSecret123
# Логи FreeRADIUS в debug-режиме
freeradius -X
Внедряйте 802.1X постепенно: сначала в режиме monitor (только логирование, без блокировки), затем переводите порты в enforce-режим.
Наконец-то нормальная статья про 802.1X на русском, большинство материалов либо слишком поверхностные либо только про Wi-Fi. Особенно полезен раздел про MAB — про него часто забывают когда планируют внедрение.