802.1x协议是基于Client/Server的访问控制和认证协议。它可以限制未经授权的用户/设备通过接入端口(access port)访问LAN/WLAN。802.1x协议起源于802.11协议,后者是IEEE的无线局域网协议,制订802.1x协议的初衷是为了解决无线局域网用户的接入认证问题。IEEE802LAN协议定义的局域网并不提供接入认证,只要用户能接入局域网控制设备(如LANS witch),就可以访问局域网中的设备或资源。这在早期企业网有线LAN应用环境下并不存在明显的安全隐患。 目前国内很多大学的校园网安装了基于802.1X认证协议的设备,但是包括华为、实达、锐捷、中兴、星空急速等在内的几家公司全都不提供802.1X客户端的Linux版本,而且各家都在标准802.1X协议之外扩展自己的私有认证协议,用户无法使用Windows或Linux自带的标准802.1X客户端登录,给广大校园网络用户和Linux爱好者带来了极大的不便。 802.1x工作过程: (1.当用户有上网需求时打开802.1X客户端程序,输入已经申请、登记过的用户名和口令,发起连接请求。此时,客户端程序将发出请求认证的报文给交换机,开始启动一次认证过程。 (2.交换机收到请求认证的数据帧后,将发出一个请求帧要求用户的客户端程序将输入的用户名送上来。 (3.客户端程序响应交换机发出的请求,将用户名信息通过数据帧送给交换机。交换机将客户端送上来的数据帧经过封包处理后送给认证服务器进行处理。 (4.认证服务器收到交换机转发上来的用户名信息后,将该信息与数据库中的用户名表相比对,找到该用户名对应的口令信息,用随机生成的一个加密字对它进行加密处理,同时也将此加密字传送给交换机,由交换机传给客户端程序。 (5.客户端程序收到由交换机传来的加密字后,用该加密字对口令部分进行加密处理(此种加密算法通常是不可逆的),并通过交换机传给认证服务器。 (6.认证服务器将送上来的加密后的口令信息和其自己经过加密运算后的口令信息进行对比,如果相同,则认为该用户为合法用户,反馈认证通过的消息,并向交换机发出打开端口的指令,允许用户的业务流通过端口访问网络。否则,反馈认证失败的消息,并保持交换机端口的关闭状态,只允许认证信息数据通过而不允许业务数据通过。
参考资料: 802.1X标准文档:
|