Контроль доступа к сети 802.1X: FreeRADIUS, коммутаторы и Wi-Fi

Розетка в переговорной, свободный порт коммутатора, незапертая комната с сетевым оборудованием: в большинстве офисов достаточно воткнуть кабель, чтобы оказаться во внутренней сети. 802.1X закрывает эту дыру: порт не пропускает ничего, кроме проверки, а устройство получает доступ только после успешной аутентификации. Ниже как это устроено, выбор метода, настройка FreeRADIUS и коммутатора, что делать с принтерами и камерами, которые 802.1X не умеют, и как внедрять так, чтобы не остановить работу офиса.
Подробности про Wi-Fi: безопасная настройка Wi-Fi. Гостей в эту схему не включают, им отдельная сеть: гостевой Wi-Fi. Общие зоны сети: сегментация сети.
Как это работает
Три участника. Устройство (supplicant) предъявляет учётные данные или сертификат. Коммутатор или точка доступа (authenticator) держит порт закрытым и передаёт запрос на сервер. Сервер RADIUS проверяет данные, обращаясь к каталогу пользователей, и отвечает коммутатору: пустить, куда именно (в какой VLAN) или отказать. Всё это идёт по протоколу EAP.
Шаг 1. Выберите метод аутентификации
| Метод | Что предъявляет устройство | Плюсы и минусы |
|---|---|---|
| EAP-TLS | Сертификат устройства или пользователя | Самый надёжный: нет паролей, которые можно украсть и подобрать. Требует своего удостоверяющего центра и выдачи сертификатов, обычно через домен или MDM |
| PEAP-MSCHAPv2 | Логин и пароль из Active Directory | Проще внедрить. Минус: пароли, а значит фишинг; обязательно настройте проверку сертификата сервера на клиентах, иначе устройство отдаст пароль подставной точке |
| MAC-адрес (MAB) | Ничего, только адрес сетевой карты | Не защита, а способ различать известные устройства без поддержки 802.1X; адрес подделывается |
Для начала разумно PEAP с учётными записями домена, а затем переход на EAP-TLS для корпоративных ноутбуков. Если у вас есть домен Windows, сертификаты можно выдавать автоматически через групповые политики: GPO и Ansible.
Шаг 2. Сервер FreeRADIUS
sudo apt install freeradius
sudo freeradius -CX | tail -n 5 # проверка конфигурации
Ожидаемо: последняя строка проверки сообщает «Configuration appears to be OK». Добавьте коммутатор в список клиентов, файл /etc/freeradius/3.0/clients.conf:
client sw-office-01 {
ipaddr = 192.0.2.21
secret = ОБЩИЙ_СЕКРЕТ_ДЛЯ_ЭТОГО_КОММУТАТОРА
shortname = sw-office-01
}
Секрет выдавайте свой для каждого коммутатора, длинный и случайный; он нужен только для связи с RADIUS. Для первой проверки заведите тестового пользователя с назначением VLAN в файле /etc/freeradius/3.0/mods-config/files/authorize:
testuser Cleartext-Password := "ВРЕМЕННЫЙ_ПАРОЛЬ"
Tunnel-Type = VLAN,
Tunnel-Medium-Type = IEEE-802,
Tunnel-Private-Group-Id = "30"
sudo systemctl restart freeradius
radtest testuser ВРЕМЕННЫЙ_ПАРОЛЬ 127.0.0.1 0 ТЕСТОВЫЙ_СЕКРЕТ_ЛОКАЛЬНЫЙ
Ожидаемо: ответ Access-Accept с атрибутами VLAN. Если ответ Access-Reject, запустите сервер в режиме отладки (sudo freeradius -X) и смотрите, на каком шаге отказ. В рабочей среде пользователей берут не из файла, а из каталога: для Active Directory настраивают связь через winbind и ntlm_auth или используют сертификаты (EAP-TLS) с собственным удостоверяющим центром. Тестовую учётную запись после проверки удалите.
Шаг 3. Порт коммутатора и точка доступа
Настройка зависит от производителя; ниже пример в синтаксисе, типичном для коммутаторов с Cisco-подобной консолью. Для других производителей используйте разделы «802.1X» или «port-based authentication» в документации.
aaa new-model
radius server RAD1
address ipv4 192.0.2.60 auth-port 1812 acct-port 1813
key ОБЩИЙ_СЕКРЕТ_ДЛЯ_ЭТОГО_КОММУТАТОРА
aaa authentication dot1x default group radius
aaa authorization network default group radius
dot1x system-auth-control
interface GigabitEthernet1/0/5
switchport mode access
authentication port-control auto
dot1x pae authenticator
spanning-tree portfast
На точке доступа Wi-Fi включают режим WPA2-Enterprise или WPA3-Enterprise и указывают тот же сервер RADIUS. Ожидаемо: подключённый кабель устройство без 802.1X не получает доступа; устройство с настроенным клиентом получает адрес в нужном VLAN. Порты, куда подключены другие коммутаторы, точки доступа и серверы, исключают из контроля или настраивают отдельно: иначе вы отрежете инфраструктуру.
Шаг 4. Принтеры, камеры, телефоны
Не каждое устройство умеет 802.1X. Для таких оставляют проверку по MAC-адресу (MAB) с жёсткими ограничениями. Это именно компенсирующая мера: адрес подделать легко, поэтому доверие к такому устройству минимальное.
| Мера | Как выглядит |
|---|---|
| Список известных устройств | MAC-адреса принтеров и камер хранятся в реестре активов и в базе RADIUS, неизвестные не пускаются |
| Отдельный VLAN | Устройства без 802.1X попадают в свой VLAN «периферия», доступ только к нужным серверам (печать, видеорегистратор) |
| Ограничение портов | Принтеру нужен порт печати на сервер печати, но не весь интернет и не соседний VLAN: правила экрана |
| Журнал и оповещение | Новый MAC в сети или смена MAC на порту — повод проверить, не подменили ли устройство |
Список таких устройств входит в реестр активов: без него вы не узнаете, что появилось что-то новое.
Шаг 5. Как внедрять, чтобы не остановить офис
- Сначала режим наблюдения: порты остаются открытыми (
authentication open), но вся информация об аутентификации пишется в журнал. Две-три недели смотрите, какие устройства проходят, какие нет. - Разберите непрошедшие: у кого нет клиента, у кого сертификат не выдан, какие устройства нужно занести в список MAB.
- Включите защиту на пилотном этаже или отделе. Держите запасной способ: порт управления коммутатором без 802.1X и консольный доступ.
- Определите поведение при недоступности сервера RADIUS. Закрытая политика (никого не пускать) безопаснее, но остановит офис; для обычных портов используют «критический VLAN» с ограниченным доступом на время сбоя.
- Поставьте два сервера RADIUS: один выйдет из строя, и 802.1X станет единой точкой отказа для всей сети.
Журнал и мониторинг
Каждая попытка подключения оставляет запись: успех, отказ, имя или адрес устройства, порт. FreeRADIUS пишет в /var/log/freeradius/radius.log и в детальный журнал. Попытки неавторизованного подключения нужно видеть, а не искать после инцидента:
sudo grep -E "Login incorrect|Rejected" /var/log/freeradius/radius.log | tail -n 20
Ожидаемо: строки с именем пользователя и адресом коммутатора. Отправляйте эти журналы в SIEM и настройте оповещение на серию отказов и на незнакомые адреса MAC: журналы сетевых средств в Wazuh.
Какие артефакты хранить
| Что хранить | Что показывает |
|---|---|
| Настройки 802.1X: фрагменты конфигурации коммутаторов, точек доступа и FreeRADIUS | Контроль доступа включён для проводных и беспроводных подключений |
| Журнал сессий подключения за последний месяц | События аутентификации записываются |
| Список устройств без 802.1X и принятые меры (VLAN, правила экрана) | Компенсирующие меры для исключений есть |
| Оповещения о попытках неавторизованного подключения | Мониторинг работает |
Диагностика
| Симптом | Причина и что делать |
|---|---|
| Ноутбук не получает доступ, хотя учётка верна | Нет доверия к сертификату сервера на клиенте или не включён клиент 802.1X. Проверьте в режиме отладки freeradius -X |
| Принтер потерял связь после включения | Он не прошёл MAB. Занесите MAC в список и поместите в VLAN периферии |
| Порты между коммутаторами «упали» | Включили проверку на uplink. Исключите такие порты |
| После сбоя RADIUS встала вся сеть | Нет второго сервера или критического VLAN. Добавьте их |
| Подключить свои устройства «временно» просят постоянно | Нет процедуры. Опишите: заявка, срок, отдельный VLAN, запись в реестре активов |
Где это в модели зрелости
Материал относится к направлению «Сетевая безопасность» (хаб: сетевая безопасность, карта: карта зрелости). На втором уровне для проводных, беспроводных и удалённых подключений используются средства контроля доступа к корпоративной сети по протоколу 802.1X, где это возможно, для остальных устройств есть компенсирующие меры, журналируются события и ведётся мониторинг попыток неавторизованного подключения. Проверка соответствия устройств политикам при удалённом подключении (четвёртый уровень) строится на тех же сервисах.
Как проверить
- На тестовом порту устройство без настроек 802.1X не получает адрес в рабочем VLAN.
- Устройство с настроенным клиентом получает адрес в VLAN, назначенном RADIUS.
- Для принтера из списка доступ работает только на нужные серверы и порты.
- В журнале RADIUS видны успешные и неуспешные попытки с именем устройства и портом.
- При отключении основного сервера RADIUS сеть продолжает работать (второй сервер или критический VLAN).
Источники
- FreeRADIUS, документация: freeradius.org/documentation.
- IEEE 802.1X, аутентификация портов: 1.ieee802.org.
- CIS Control 12, управление сетевой инфраструктурой: cisecurity.org/controls.


















