Изначально стандарт IEEE 802.1X разрабатывался для контролируемого доступа к проводным сетям. В настоящее время его можно применять и в беспроводных локальных сетях, где ему постепенно отводится все более важная роль. В данной статье рассматривается использование протокола 802.1X для контроля доступа и в качестве расширенной функции безопасности в WLAN, а кроме того, особое внимание уделяется его взаимодействию с RADIUS, EAP и сертификатами.

Ввиду того, что число атак на корпоративные сети ИТ постоянно увеличивается, системным администраторам приходится постоянно заботиться об улучшении защиты сетевого доступа. Помимо контроля трафика данных посредством таких устройств, как брандмауэры и системы предотвращения/обнаружения вторжений (Intrusion Prevention/Detection), необходимо выполнять проверку пользователей, пытающихся получить доступ к сети. На помощь приходит стандарт на протокол IEEE 802.1X, изначально разрабатывавшийся для контроля доступа через коммутаторы локальной сети и принятый еще в 2001 г. В комбинации с сервером RADIUS он позволяет осуществлять так называемую аутентификацию на базе портов. В настоящее время этот стандарт приобретает все большую популярность в среде WLAN.

Идея создания протокола 802.1X выдвинута организациями, которым нужно было контролировать доступ к публичным сетям (университеты, госучреждения, библиотеки и т.д.). Решение должно было быть недорогим и простым в реализации, и при этом необходимо было сохранить как имеющуюся сетевую инфраструктуру, так и распространенные протоколы. Технология виртуальных частных сетей (Virtual Private Networks, VPN) хоть и удовлетворяла некоторым требованиям, но не подходила в качестве универсального решения из-за высокой ресурсоемкости и сложной настройки. Концепция 802.1X стала результатом совместной работы компаний 3Com, HP и Microsoft, а в июне 2001 г. протокол был принят как стандарт IEEE.

Изначально данная модель предназначалась для применения только в коммутаторах (802.1D), и лишь позднее добавилось расширение для стандарта WLAN 802.11.

МНОГОЧИСЛЕННЫЕ ПОЛЕЗНЫЕ ФУНКЦИИ 802.1X

Стандарт IEEE 802.1X представляет собой важное развитие концепции безопасности для сетей и позволяет осуществлять идентификацию пользователей уже на порту доступа к сети. С его помощью можно реализовать следующие функции:

  • контроль доступа (ориентированная на пользователей система правил);
  • ведение отчетности (биллинг и учет);
  • распределение пропускной способности (качество сервиса для каждого пользователя);
  • создание сетей с персональными профилями пользователей (User Personalized Network, UPN).

Благодаря функции однократной регистрации (Single Sign-on) пользователи могут авторизоваться с помощью одной первичной аутентификации сразу в нескольких системах и приложениях: на серверах коммутируемого доступа, брандмауэрах, в виртуальных частных (Virtual Private Network, VPN) или беспроводных локальных сетях. При этом аутентификация пользователя осуществляется единожды на центральном сервере RADIUS.

РОЛЬ RADIUS: СЦЕНАРИИ AAA

Все провайдеры сталкиваются с серьезной проблемой. К примеру, они предоставляют множеству пользователей доступ в Internet из разных мест, поэтому для обеспечения безопасности, чтобы исключить злоупотребление серверными службами, необходимо тщательно проверять, кто получает такой доступ.

Кроме того, для учета времени пребывания пользователей в сети и расчета стоимости услуг могут потребоваться специальные механизмы, а значит, и мощная система, которая позволила бы централизованно решать задачи аутентификации, авторизации и ведения учета (Authentification, Autorisation, Accounting, AAA).

Решение всех перечисленных задач обеспечивает служба удаленной аутентификации пользователей коммутируемого доступа (Remote Authentication Dial-in User Service, RADIUS), которая описана в RFC 2865 и использует для коммуникации порт UDP 1812. Сервер сетевого доступа (Network Access Server, NAS) выступает в качестве клиента сервера RADIUS. Последний, кроме прочего, может служить посредником для других серверов RADIUS или различных серверов аутентификации.

Коммуникация между клиентом и сервером RADIUS защищается следующим образом: оба партнера могут аутентифицировать друг друга с помощью «общего секрета» (Shared Secret) и обоюдно шифровать передачу данных. RADIUS поддерживает множество способов аутентификации: PAP, CHAP, EAP или регистрацию UNIX. Кроме того, RADIUS может обрабатывать и передавать множество расширяемых атрибутов для каждого пользователя (см. Рисунок 1).

В настоящее время на рынке представлены самые разные серверы RADIUS с поддержкой 802.1X/EAP — от сложных инструментов для командной строки до дружелюбных к пользователям серверов с собственными графическими интерфейсами настройки. Это может быть программный сервер (Windows 2000, 2003, 2008 или Linux, а также решения независимых поставщиков) или сервер, интегрированный в сетевое оборудование (к примеру, в маршрутизаторы, точки доступа или коммутаторы).

РАСШИРЯЕМЫЙ ПРОТОКОЛ АУТЕНТИФИКАЦИИ (EAP)

Расширяемый протокол аутентификации (Extensible Authentification Protocol, EAP) был разработан для протокола Point-to-Point Protocol (PPP) и описан в RFC 2284 и 2716. С помощью EAP два партнера по коммуникации могут выбрать наиболее подходящий для них метод аутентификации. Благодаря реализации в виде открытого программного интерфейса (Application Programming Interface, API) EAP смогут использовать протоколы аутентификации, которые будут разработаны позднее.

С помощью простого алгоритма запросов и ответов EAP описывает обмен данными между пользователем и сервером аутентификации. При этом можно выбирать любые механизмы аутентификации, к примеру, Kerberos или сертификаты. EAP применяется либо в сочетании с PPP, либо в качестве протокольной среды (Protocol Framework) для обмена данными об идентификации в других протоколах, к примеру, в рамках IEEE 802.1X. В последнем случае, при использовании EAP поверх 802.1х, аутентификационные данные передаются посредством Extensible Authentication Protocol over LAN (EAPoL), а с беспроводной сетью WLAN, соответственно, посредством EAPoW.

ФУНКЦИОНИРОВАНИЕ EAP

Как функционирует EAP? Протокол предлагает пользователю пройти процедуру аутентификации. Эта информация сначала передается порту, или «аутентификатору». Последний, получив нужные данные, отправляет их серверу AAA, обычно серверу RADIUS. На основе заданных профилей пользователей сервер RADIUS осуществляет аутентификацию, то есть принимает решение относительно предоставления доступа к запрашиваемым сервисам. В некоторых случаях сервер RADIUS передает данные дальше — как правило, службе каталогов (сервер LDAP или каталогов).

В случае неудачи аутентификатор получает соответствующую информацию, на основании которой порт блокируется (переводится в режим «аутентификация вкл./порт выкл.») или остается в стандартном состоянии («аутентификация вкл./порт вкл. с правилами по умолчанию»). В обоих случаях пользователь не получает доступа к запрошенным сервисам. Если аутентификация прошла успешно, то сообщение об этом, передаваемое сервером RADIUS обратно на коммутатор или точку доступа, снабжается обозначением «Успех RADIUS/EAP», после чего аутентификатор сразу же открывает нужный порт для неограниченной передачи данных.

EAP-TLS

Еще один вариант — аутентификация посредством взаимных сертификатов EAP-TLS. Протокол безопасности транспортного уровня (Transport Layer Security, EAP-TLS) представляет собой комбинацию EAP и SSL. Он предусматривает взаимную аутентификацию сервера и клиента на транспортном уровне с помощью сертификатов. В настоящее время имеется ряд клиентов с поддержкой EAP-TLS для Linux (к примеру, Open1x), MacOS X в версии 10.3 (Panther) и выше, а также Microsoft Windows (начиная с обновленной Windows 2000 или с базовой Windows XP).

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

ПРОЕКТ OPEN1X

Проект Open1x (http://open1x.sourceforge.net) предлагает собственную реализацию 802.1X и нацелен на поддержку множества систем. Кроме того, некоторые сетевые компоненты позволяют осуществлять аутентификацию на базе Web. В качестве положительного аспекта EAP-TLS можно выделить его интеграцию в Microsoft Windows, однако необходимая взаимная аутентификация на базе сертификатов является аргументом против этого метода.

EAP-TTLS

И последний из рассматриваемых здесь инструментов — аутентификация EAP-TTLS (на основе имени пользователя/пароля и сертификата сервера). Протокол Tunneled Transport Layer Security (EAP-TTLS) дополняет EAP-TLS одной очень практичной функцией: с помощью сертификата сервера динамически создается защищенный туннель TLS между клиентом WLAN и сервером аутентификации, и в нем пользователь сможет идентифицироваться на сервере аутентификации посредством имени пользователя и пароля. В результате сертификат пользователя не понадобится. Как и в случае аутентификации SSL (TLS) через Internet, для взаимной аутентификации пользователей и серверов требуются лишь сертификаты со стороны серверов. Таким образом, механизм EAP-TTLS проще в обращении, чем EAP-TLS, поскольку отпадает необходимость в наличии сертификатов со стороны пользователя.

Экхарт Трабер — пресс-секретарь Lancom Systems.


© ITP Verlag


Рисунок 1. Аутентификация пользователей EAP с помощью 802.1X при доступе из сети WLAN к локальной сети с файловым сервером.