Протокол 802.1x предусматривает три метода управления работой порта: обязательное одобрение аутентификации, обязательное отклонение аутентификации и запуск аутентификации.
Обязательное одобрение аутентификации означает, что порт уже прошел аутентификацию. Порту больше не требуется аутентификация, и все пользователи могут осуществлять контроль доступа к данным через порт. Метод аутентификации определяется портом по умолчанию.
Обязательное отклонение аутентификации означает, что аутентификация порта не проходит независимо от того, какой метод применяется. Ни один пользователь не может осуществлять контроль доступа к данным через порт.
Запуск аутентификации 802.1x означает, что порт должен использовать протокол аутентификации 802.1x. Аутентификация 802.1x будет применяться к пользователям, имеющим доступ к порту. Только пользователи, прошедшие аутентификацию, могут осуществлять контроль доступа к данным через порт. После запуска аутентификации 802.1x необходимо настроить метод аутентификации AAA.
Для начала работы с 802.1x выполните следующую команду для включения функции:
| Команда | Назначение |
|---|---|
dot1x enable |
Включение функции 802.1x. |
Выполните следующую команду для запуска аутентификации 802.1x:
| Команда | Назначение |
|---|---|
dot1x port-control auto |
Настройка режима управления портом с использованием протокола 802.1x. |
aaa authentication dot1x {default |list name} method |
Настройте также AAA-аутентификацию для 802.1x |
В режиме конфигурации порта можно выбрать один из следующих вариантов
управления 802.1x:
| Команда | Назначение |
|---|---|
dot1x port-control auto1 |
Запустите метод аутентификации 802.1x на порту. |
dot1x port-control force-authorized |
Утвердите обязательную аутентификацию порта. |
dot1x port-control force-unauthorized |
Отклоните обязательную аутентификацию порта. |
Стандарт 802.1x изначально предусматривает аутентификацию для одного хоста на порт, что означает, что на одном порту может одновременно проходить аутентификацию только один пользователь. Другие пользователи не могут пройти аутентификацию и получить доступ, пока предыдущий пользователь не завершит аутентификацию и доступ. Если через порт подключается несколько устройств (например, при использовании коммутаторов, не поддерживающих 802.1x), необходимо включить режим множественной аутентификации, чтобы обеспечить доступ всем пользователям.
После активации режима множественной аутентификации коммутатор будет проводить отдельную аутентификацию для каждого хоста, используя его MAC-адрес в качестве идентификатора. Однако количество одновременно аутентифицированных устройств будет ограничено размером таблицы MAC-адресов коммутатора.
Для включения режима множественной аутентификации выполните следующую команду в режиме конфигурации интерфейса:
| Команда | Назначение |
|---|---|
dot1x authentication multiple-hosts |
Включение режима аутентификации нескольких хостов по 802.1x. |
После первоначальной успешной аутентификации клиент периодически проходит повторную проверку, что позволяет убедиться в его легитимности. Для этого необходимо включить функцию переаутентификации, после чего 802.1x будет регулярно отправлять запросы на повторную аутентификацию.
Для настройки функции переаутентификации используйте следующие команды:
| Команда | Назначение |
|---|---|
dot1x re-authentication |
Включение функции переаутентификации. |
dot1x timeout re-authperiod time |
Установка интервала между запросами на переаутентификацию. |
dot1x reauth-max time |
Задание максимального количества попыток переаутентификации при неудаче. |
Во время процесса аутентификации по 802.1x к клиенту отправляются сообщения, частота которых может влиять на успешность обмена данными. При необходимости эту частоту можно настроить, чтобы обеспечить своевременную реакцию клиента.
Для настройки интервала передачи сообщений используйте следующую команду:
| Команда | Назначение |
|---|---|
dot1x timeout tx-period time |
Установка частоты передачи сообщений 802.1x. |
Для повышения безопасности доступа можно привязать конкретного пользователя к определённому порту. Это означает, что только заданный пользователь сможет получить доступ через этот порт после успешной аутентификации.
Для активации функции привязки пользователя выполните следующую команду в режиме конфигурации интерфейса:
| Команда | Назначение |
|---|---|
dot1x user-permit username |
Настройка привязки пользователя к порту. |
Аутентификация по 802.1x может выполняться различными методами на разных портах. По умолчанию применяется стандартный метод.
Для задания метода аутентификации на конкретном порту выполните в режиме конфигурации интерфейса следующую команду:
| Команда | Назначение |
|---|---|
dot1x authentication method name |
Настройка метода аутентификации 802.1x |
Можно задать тип аутентификации для порта, который определяет, будет ли AAA использовать протокол Chap или EAP. При аутентификации EAP доступны режимы md5-challenge и eap-tls. При выборе Chap вызов (challenge) генерируется локально, а при использовании EAP - на сервере аутентификации. Каждый порт поддерживает только один тип аутентификации. Значение, заданное в глобальной конфигурации, применяется по умолчанию. После установки типа для порта он будет использовать этот тип до явного сброса настроек командой no.
Особенно стоит отметить, что EAP-TLS использует электронный сертификат в качестве подтверждения подлинности и соответствует протоколу TLS, что обеспечивает высокий уровень безопасности.
Запустите следующую команду в режиме глобальной конфигурации, чтобы настроить тип аутентификации:
| Команда | Назначение |
|---|---|
dot1x authen-type {chap | eap} |
Выбор между аутентификацией chap и eap. |
Также выполните следующую команду в режиме настройки интерфейса:
| Команда | Назначение |
|---|---|
dot1x authentication type {chap | eap} |
Задание типа аутентификации для конкретного порта (может совпадать с глобальным значением). |
Аутентификация и учёт по 802.1x могут выполняться одновременно. Механизм работы следующий: после успешной аутентификации проверяется, включён ли учёт на порту. Если функция учёта активирована, через AAA-интерфейс отправляется запрос на учёт, а при получении положительного ответа от модуля AAA осуществляется передача данных.
Учет может выполняться различными методами, заданными в модуле AAA (подробнее - в разделе конфигурации AAA).
После запуска учёта 802.1x периодически отправляет серверу обновляющие сообщения через AAA-интерфейс для получения корректной информации. В зависимости от настроек AAA, решение о передаче обновлений принимает модуль AAA.
При этом обязательно необходимо включить функцию переаутентификации, чтобы коммутатор мог обнаружить сбои в работе supplicant.
Выполните следующие команды в режиме конфигурации интерфейса, чтобы включить учет dot1x и настроить метод учета:
| Команда | Назначение |
|---|---|
dot1x accounting enable |
Включение функции учёта 802.1x. |
dot1x accounting method method name |
Настройка метода учёта (значение по умолчанию – default). |
Guest-VLAN предоставляет определённые права доступа (например, для загрузки клиентского ПО) на портах, если клиент не отвечает. В качестве Guest-VLAN можно использовать любой настроенный VLAN в системе. Если заданный Guest-VLAN не соответствует требованиям, порты не смогут функционировать в этом режиме.
Примечание: При неудачной аутентификации доступ не предоставляется.
Запустите следующую команду в глобальном режиме, чтобы включить гостевую VLAN:
| Команда | Назначение |
|---|---|
dot1x guest-vlan |
Включите гостевую VLAN на всех портах. |
Если первоначальное значение guest-VLAN id для порта равно 0, функция Guest-VLAN не будет работать, даже если она включена глобальном режиме. Для корректной работы необходимо в режиме конфигурации порта задать идентификатор Guest-VLAN:
Запустите следующую команду в режиме настройки порта, чтобы настроить идентификатор гостевой VLAN (guest-VLAN id):
| Команда | Назначение |
|---|---|
dot1x guest-VLAN vlan-id |
Включите гостевую VLAN на всех портах. |
Чтобы предотвратить использование supplicant с несколькими сетевыми адаптерами (что может способствовать появлению агентов), в режиме конфигурации порта выполните следующую команду:
| Команда | Назначение |
|---|---|
dot1x forbid multi-network-adapter |
Запрет использования supplicant с более чем одним сетевым адаптером. |
Выполните следующую команду, чтобы возобновить всю глобальную конфигурацию до конфигурации по умолчанию:
| Команда | Назначение |
|---|---|
dot1x default |
Возврат всей глобальной конфигурации 802.1x к настройкам по умолчанию. |
Для контроля параметров и состояния аутентификации 802.1x, а также для определения необходимых изменений, выполните в режиме управления следующую команду:
| Команда | Назначение |
|---|---|
show dot1x interface intf-id |
Отслеживайте конфигурацию и состояние аутентификации 802.1x. |

Хост A подключён к порту G0/10 коммутатора. Хост B подключён к порту G0/12. IP-адрес сервера RADIUS: 192.168.20.2, ключ сервера: TST. Порт G0/10 использует удалённую аутентификацию через RADIUS с привязкой пользователя, а порт G0/12 - локальную аутентификацию типа EAP с включённой поддержкой множественных хостов.
Глобальная конфигурация
!
username switch password 0 TST
username TST password 0 TST
!
aaa authentication dot1x TST-G0/10 radius
aaa authentication dot1x TST-G0/12 local
!
interface VLAN1
ip address 192.168.20.24 255.255.255.0
!
radius-server host 192.168.20.2 auth-port 1812 acct-port 1813
radius-server key TST
Конфигурация порта G0/10
!
interface GigabitEthernet0/10
dot1x port-control auto
dot1x authentication method TST-G0/10
dot1x user-permit radius-TST
Конфигурация порта G0/12
!
interface GigabitEthernet0/12
dot1x multiple-hosts
dot1x port-control auto
dot1x authentication method TST-G0/12
dot1x authentication type eap