Extensible Authentication Protocol (EAP) - протокол созданный для аутентификации и определяет транспорт и методы использования identity credentials.
EAP инкапсулирует usernames, passwords, certificates, tokens, one-time password (OTPs), которые клиент отсылает для аутентификации.
EAP стал общим стандартом для различных authentication protocols, в том числе и для EAP over LAN: IEEE 802.1X - стандарт для port-based network access control.
EAP over LAN (802.1X)
IEEE 802.1X (или Dot1x) является стандартом для port-based network access control для local area and metropolitan area networks.
802.1X работает с тремя основными компонентами:
- Supplicant - это ПО на стороне endpoint, которое взаимодействует с EAP на layer2. Это ПО отвечает на запросы Authenticator и отдаёт identity credentials.
- Authenticator - это сетевое устройство, контролирующее физический доступ к сети на основе аутентификации endpoint. Authenticator - это посредник, который общается с Supplicant на уровне Layer2 EAP, и затем инкапсулирует эту инфу в RADIUS и отправляет на Authentication Server. Примеры Authenticator - это LAN Switch и Wireless LAN Controller (WLC). Cisco ISE может выступать в качестве Authenticator по отношению к Network Access Device (NAD)
- Authentication Server - это сервер, выполняющий Authentication of Client и возвращает на Authenticator результат (accept/deny). Cisco ISE - пример Authentication Server
Ещё раз подчеркнём: Authenticator работает лишь как посредник. Сама операция Authentication происходит между Supplicant и Authentication Server.
Switch или WLC не имеет никакого отношения ни к EAP Type, ни к Credentials. Authenticator тупо берет EAP Frame, инкапсулирует его в RADIUS и отсылает его на Authentication Server.
EAP Types
Существует множество различных EAP Types, каждое из которых имеет свои преимущества и недостатки.
EAP Type определяет authentication mechanism, который будет работать с EAP.
EAP Types могут быть разделены на две категории:
- Native EAP types
- Tunneled EAP types
Tunneled EAP types попросту использует Native EAP types внутри туннеля Transport Layer Security (TLS), который поднимается между supplicant и authenticator.
Native EAP Types (Nontunneled EAP)
- EAP-MD5 - использует алгоритм digest и транформирует credentials в HASH. Хеш отсылается на сервер где сравнивается с локальной версией.
EAP-MD5 не имеет механизма для обратной аутентификации, т.к. клиент не может проверить сервер.
EAP-MD5 часто применяется на IP phones.
- EAP-TLS - тип EAP который использует TLS для безопасной передачи identity. Это похоже на SSL. когда поднимается безопасное соединение между web браузером и вебсайтом.
EAP-TLS использует сертификаты X.509, и поддерживает mutual authentication. Клиент должен доверять сертификату сервера и наоборот.
EAP-TLS считается сильным алгоритмом, поскольку клиент должен знать пароль + иметь на руках свой private key: один перехват пароля злоумышленникам ничего не даст.
- EAP-MSCHAPv2 - EAP type в котором credentials высылаются зашифрованными внутри сессии MSCHAPv2. Позволяет передать username, password, computer name и т.д. на сервер RADIUS, который в свою очередь выполняет аутентификацию в AD.
Cisco ISE не поддерживает EAP-MSCHAPv2 как native EAP, - только как tunneled EAP.
- EAP-GTC - EAP-Generic Token Card (GTC) был разработан Cisco как альтернатива MSCHAPv2.
Cisco ISE не поддерживает EAP-GTC как native EAP, - только как tunneled EAP.
Tunneled EAP Types
Мы рассмотрели native EAP types, которые немедленно отсылают Credentials.
Важно понимать, что Tunneled EAP Types сначала формируют туннель, и только после этого отсылают Credentials.
- PEAP - Protected EAP (PEAP) - изначально был предложен Microsoft, и стал наиболее популярным в мире методом. PEAP формирует туннель (который можно зашифровать через TLS) между client и server, с использованием сертификатов x.509. После того, как туннель был сформирован (Outer tunnel), PEAP использует внутри другой EAP type как “inner method".
- EAP-MSCHAPv2 - используя данный inner method, credentials отсылаются на сервер внутри сессии MSCHAPv2. Это наиболее универсальный метод, поскольку позволяет передавать на сервер не только имя и пароль, но и computer name и т.д.
- EAP-GTC - Метод создан Cisco как альтернатива для MSCHAPv2.
- EAP-TLS - хотя и редко используется, но PEAP поддерживает EAP-TLS как inner method
- EAP-FAST - Flexible Authentication via Secure Tunnel (FAST) - похож на PEAP. FAST был создан Cisco как альтернатива для PEAP, но поддерживающий быструю аутентификацию для поддержки быстрой wireless roaming. Точно также FAST формимирует TLS outer tunnel, и передаёт через него credentials. FAST отличается от PEAP тем, что использует protected access credentials (PACs), которые работают подобно кешу или “cookie” позволяя быстро повторно аутентифициорваться.
С tunneled EAPs существуют понятия inner identities и outer identities.
inner identity - это собственно user credentials, которые отсылаются внутри native EAP protocol.
outer identity - это identity, которые используются между supplicant и authentication для TLS tunnel setup.
Добавить комментарий