IEEE802.1x
是IEEE2001年6月通过的基于端口访问控制的接入管理协议标准。
IEEE802
系列LAN标准是目前居于主导地位的局域网络标准,传统的IEEE802协议定义的局域网不提供接入认证,只要用户能接入局域网控制设备,如传统的LanSwitch,用户就可以访问局域网中的设备或资源,这是一个安全隐患。
IEEE802.1x
是一种基于端口的网络接入控制技术,在 LAN 设备的物理接入级对接入设备进行认证和控制,此处的物理接入级指的是 LanSwitch设备的端口。连接在该类端口上的用户设备如果能通过认证,就可以访问 LAN 内的资源;如果不能通过认证,则无法访问 LAN 内的资源,相当于物理上断开连接。
下面首先让我们了解一下IEEE802.1x端口访问控制协议的体系结构。
5.1
.
IEEE802.1x
体系介绍
虽然IEEE802.1x定义了基于端口的网络接入控制协议,但是需要注意的是该协议仅适用于接入设备与接入端口间点到点的连接方式,其中端口可以是物理端口,也可以是逻辑端口。典型的应用方式有:LanSwitch 的一个物理端口仅连接一个 End Station,这是基于物理端口的; IEEE 802.11定义的无线 LAN 接入方式是基于逻辑端口的。
IEEE802.1x
的体系结构中包括三个部分:
Supplicant System
,用户接入设备;
Authenticator System
,接入控制单元;
Authentication Sever System
,认证服务器。
在用户接入层设备(如LanSwitch)实现 IEEE802.1x的认证系统部分,即Authenticator;IEEE802.1x的客户端一般安装在用户PC中,典型的为Windows XP操作系统自带的客户端; IEEE802.1x的认证服务器系统一般驻留在运营商的AAA中心。
Supplicant
与Authenticator间运行IEEE802.1x定义的EAPOL协议;Authenticator 与 Authentication Sever 间同样运行 EAP 协议,EAP 帧中封装了认证数据,将该协议承载在其他高层次协议中,如 Radius,以便穿越复杂的网络到达认证服务器。
Authenticator
每个物理端口内部有受控端口(Controlled Port)和非受控端口(unControlled Port)等逻辑划分。非受控端口始终处于双向连通状态,主要用来传递 EAPOL 协议帧,可保证随时接收Supplicant发出的认证EAPOL报文。受控端口只有在认证通过的状态下才打开,用于传递网络资源和服务。
5.2
.
IEEE802.1x
认证过程简介
IEEE802.1x的认证过程
1.
当用户有上网需求时打开
802.1X
客户端程序,输入用户名和口令,发起连接请求。此时客户端程序将发出
请求认证
的报文给交换机,启动一次认证过程。
2.
交换机在收到请求认证的数据帧后,将发出一个
EAP-Request/Identitybaowe
请求帧要求客户端程序发送用户输入的
用户名
。
3.
客户端程序响应交换机的请求,将包含用户名信息的一个
EAP-Response/Identity
送给交换机,交换机将客户端送来的数据帧经过封包处理后生成
RADIUS Access-Request
报文送给认证服务器进行处理。
4.
认证服务器收到交换机转发上来的用户名信息后,将该信息与数据库中的用户名表相比对,找到该用户名对应的口令信息,用随机生成的一个加密字
Challenge
对它进行加密处理(
MD5
),通过接入设备将
RADIUS Access-Challenge
报文发送给客户端,其中包含有
EAP-Request/MD5-Challenge
。
5.
客户端收到
EAP-Request/MD5-Challenge
报文后,用该加密字对口令部分进行加密处理(
MD5
)给交换机发送在
EAP-Response/MD5-Challenge
回应,交换机将
Challenge
,
Challenged Password
和用户名一起送到
RADIUS
服务器进行认证。
6.
认证服务器将送上来的加密后的口令信息和其自己经过加密运算后的口令信息进行对比,判断用户是否合法,然后回应认证成功
/
失败报文到接入设备。如果认证成功,则向交换机发出打开端口的指令,允许用户的业务流通过端口访问网络。否则,保持交换机端口的关闭状态,只允许认证信息数据通过。
5.3
.
IEEE802.1x
配置
IOS
全局配置命令:
aaa new-model /*
启用aaa
aaa authentication dot1x default group radius /*
配置dot1x认证列表
dot1x system-auth-control /
全局启用802.1x
radius-server host 192.168.0.167 auth-port 1812 key q1w2e3r4 /*
认证服务器信息
接口配置命令:
dot1x port-control auto /*
接口启用802.1x