基于802.1x协议的认证网络的设计与实现
2011-06-09储久良
邱 亮,储久良
(1.南京师范大学泰州学院 教育技术中心,江苏 泰州 225300;2.南京理工大学泰州科技学院 现代教育技术中心,江苏 泰州 225300)
高校校园网一般由服务器区、办公区、教学区、宿舍区、家属区组成,其中学生宿舍网络在运行和管理上有着它不同的特点与要求,为了做到对宿舍网络接入用户进行有效地认证和安全管理,我们对宿舍区使用了802.1x技术,它的优点是认证效率高、安全性高。计费方面,我们选择了H3C的Cams计费系统。文中介绍了802.1x认证环境下,H3C的交换机和Cams认证计费系统的配置与部署方案。
1 IEEE 802.1x协议介绍
IEEE 802.1x全称为 “基于端口的访问控制协议(Port based Network Access Control Protocol)”。 它提供了一种基于物理端口的网络接入控制技术,通过将交换机的物理端口标记为“受控”和“不受控”两种逻辑端口,对接入用户进行访问控制,从而实现网络的安全认证。
1.1 802.1x的体系结构
802.1 x认证体系为典型的Client/Server结构,包括3个组成部分:客户端(Client)、设备端(Device)和认证服务器(Server)。 如图 1 所示[1]。
1)客户端通常为一个用户终端设备,用户可以通过启动客户端软件发起802.1x认证。客户端必须支持EAPOL(Extensible Authentication Protocol over LAN,局域网上的可扩展认证协议)。
2)设备端通常为支持802.1X协议的网络设备,它为客户端提供接入局域网的端口,该端口可以是物理端口,也可以是逻辑端口。
3)认证服务器用于实现对用户进行认证、授权和计费,通常为 RADIUS(Remote Authentication Dial-In User Service,远程认证拨号用户服务)服务器。
图1 802.1x认证系统的体系结构Fig.1 System architecture of 802.1x certification
1.2 802.1x的认证过程
802.1 x的认证分为如下8个步骤[2]:
1)用户运行802.1x客户端程序,输入已经申请、登记过的用户名和密码,发起连接请求,此时,客户端程序将发出请求认证的报文给设备端,开始启动认证过程;
2)设备端收到客户端发来的认证请求后,将向客户端发出一个新的请求,要求用户客户端程序发送输入的用户名;
3)客户端程序响应设备端发出的请求,将用户名信息发送给设备端。设备端将客户端发送的数据经过封包处理后(RADIUS报文)送给认证服务器进行处理;
4)RADIUS服务器收到设备端转发的用户名信息后,将该信息与数据库中的用户名表对比,找到该用户名对应的密码信息,用随机生成的一个加密字对它进行加密处理,同时也将此加密字发送给设备端,由设备端转发给客户端程序;
5)客户端程序收到由设备端传来的加密字后,用该加密字对密码部分进行加密处理 (此种加密算法通常是不可逆的),并通过设备端传给认证服务器;
6)RADIUS服务器将收到的已加密的密码信息和本地经过加密运算后的密码信息进行对比,如果相同,则认为该用户为合法用户,反馈认证通过的消息;
7)设备端收到认证通过消息后将端口改为授权状态,允许用户通过端口访问网络。在此期间,设备端会向客户端定期发送握手报文,对用户的在线情况进行监测。缺省情况下,两次握手请求报文都得不到客户端应答,设备端就会让用户下线,防止用户因为异常原因下线而设备无法感知;
8)客户端也可以发送请求给设备端,主动要求下线。设备端把端口状态从授权状态改变成未授权状态。
2 802.1x协议的组网设计
按照不同的组网方式,802.1x认证可以采用集中式组网、分布式组网两种形式。二者的区别在于认证系统实现的位置不同。其中802.1x分布式组网是把802.1x认证系统端放在网络位置较低的多个交换机设备上,这些交换机作为接入层边缘设备。认证报文送给边缘设备,进行802.1x认证处理。这种组网方式的优点在于,它采用中/高端设备与低端设备认证相结合的方式,可满足复杂网络环境的认证。认证任务分配到众多的设备上,减轻了中心设备的负荷[3]。一般高校宿舍网络都采用分布式组网方式。如图2所示。
图2 802.1x分布式组网图Fig.2 Diagram of 802.1x distributed network
2.1 相关设备的配置
1)设备端以H3C E352交换机为例,E352作为接入层交换机使用。具体配置如下:
2)认证服务器以H3C-Cams认证计费系统为例。将所有参与802.1x认证的接入交换机添加到Cams系统的接入设备选项中,并指定此交换机的密钥、端口、协议类型等信息与接入交换机上Radius的配置信息一致。如图3所示。
图3 Cams系统接入设备配置图Fig.3 Access device configuration diagram of cams
3)DHCP服务的建立有两种方式:第一种,可以采用架设DHCP服务器,在汇聚交换机上设置DHCP中继的方法实现自动获取IP功能;第二种如果汇聚交换机支持建立DHCP服务,并且在性能满足的情况下,可以直接在汇聚交换机上启用DHCP服务来实现。笔者建议使用第二种方式,因为其节省资源且管理方便。另外在接入层交换机上启用DHCPSnooping和ARP检测功能,可以有效防范ARP病毒的攻击。
2.2 快速部署功能的实现
根据以上配置已基本实现802.1x的认证过程,用户使用客户端软件发出认证请求,如果账号信息通过认证服务器的认证,即可访问互联网资源。但用户在802.1x认证成功之前(包括认证失败)如何方便地下载客户端软件,如何及时地了解最新的校园网络服务信息,就需要利用快速部署功能来实现。
快速部署可以实现如下功能[4]:
1)终端用户在未成功认证之前只能访问一个特定的IP地址段。该IP地址段中可以配置一个或多个特定服务器,用于提供客户端的下载升级或者动态地址分配等服务。
2)终端用户在未成功认证之前,如果使用IE浏览器访问网络时,设备会将用户访问的URL强制重定向到管理员预先配置好的服务页面,用户可以通过该服务页面进行客户端的下载、安装工作。通常情况下,高校宿舍网络一般将服务页面设置为用户自助服务页面,通过此页面用户不但可以下载最新客户端,也可以实现用户预注册、认证计费信息查询、找回密码、修改MAC地址等功能。此功能帮助IT人员省时省力省心,提高了工作效率。
快速部署功能的交换机配置如下:
2.3 性能优化及安全配置
1)当网络接入设备性能不佳或认证并发用户过多时,接入交换机与客户端偶尔会失去联系,导致用户意外掉线。默认情况下接入交换机和在线用户两次握手请求失败后,即认定用户已下线[5]。此情况我们可以通过增加接入交换机与用户客户端之间握手报文发送的周期和次数,以保证用户网络的稳定性。详见交换机配置。
2)为防止用户使用代理服务器连接网络,可以在接入交换机上配置代理检测功能,当检测到用户使用代理服务器时,强制用户下线或URL跳转。为防止非法的802.1x客户端连接,可以设置客户端软件版本检测功能,配合Cams认证系统的检查功能,限制版本不正确的客户端连接认证服务器。为防止用户使用破解客户端跳过认证,可以设置对握手报文进行加密,配合Cams认证系统的防客户端破解功能,限制破解客户端连接。如图4、图5所示。
图4 认证客户端配置图Fig.4 Certification client configuration
图5 客户端防破解配置图Fig.5 Anti-crack for client configuration
交换机配置如下:
2.4 认证计费系统的相关配置
1)客户端版本升级与定制功能,通过H3C iNode管理中心定制802.1x客户端软件,可以根据网络环境自定义客户端的功能模块、配置选项、安装方式等,并创建自定义安装包或升级包。安装包可以做到用户即装即用,无需再做任何配置。升级包可以添加到Cams的客户端升级管理列表中,当用户完成认证后,系统将对低与升级版本的客户端进行自动升级操作[6]。如图6、图7所示。
图6 iNode客户端管理中心图Fig.6 Management center diagram of iNode client
图7 Cams客户端升级管理配置图Fig.7 Client upgrade management configuration of Cams
2)802.1x认证通常采用绑定账号和客户机MAC地址的方法来限制多台客户机使用同一账号的情况,Cams系统在用户第一次成功认证后会自动学习用户的MAC地址,但当用户更换或维修电脑后,就需要重新绑定MAC地址信息才能通过认证,这时可以通过Cams的自助服务平台修改MAC地址的绑定信息,并且系统可以设置限定用户一年之内可以自助修改的次数,此功能帮助IT人员减少了大量的工作量。如图8所示。
图8 自助修改MAC绑定信息页面图Fig.8 Self-help modify MAC binding information page
3)为方便用户自助修改MAC地址绑定信息,笔者利用Delphi开发了一款小软件,可以查看当前网络适配器的信息,可以检测有线网卡的配置是否符合校园网的接入条件,可以修复常见的网络配置错误,使宿舍网络用户更加轻松的接入校园网络。作为自助操作的辅助工具,不仅为用户提供了方便,也为IT管理人员节省了大量的工作量。如图9所示。
图9 自助操作辅助工具截图Fig.9 Self-service operation tools screenshot
3 结束语
802.1 x协议有效地解决了传统PPPOE和Portal协议存在的安全性问题,同时实现了对用户的计费、监控等扩展功能。校园网用户可以根据客户端提示进行故障排除等操作,管理员也可以通过认证管理平台对用户进行统一管理。在校园网的建设和维护方面都降低了大量成本。目前,在认证计费和客户端配置方面还有很多需要完善的地方,这将是下一步工作的重点。
[1]IEEE Std 802.1x,.IEEE Standard for Local and metropolitan area networks Port-Based Network Access Control[EB/OL].(2004).[2011-09-02]http://www.docin.com/p-115043645.htm l.
[2]H3C公司.802.1x技术介绍 [EB/OL]. (2010-12-20)http://www.h3c.com.cn/Products___Technology/Technology/Security_Encrypt/Other_technology/Technology_recommend/200812/624138_30003_0.htm#_Toc227664914.
[3]基于802.1x认证技术的应用分析[EB/OL].(2011-08-27)http://wenku.baidu.com/view/b969f04ce518964bcf847c88.htm l.
[4]范晓宁,刘伟科,林泽东.基于802.1x的校园网认证计费系统的设计与实现[J].计算机安全,2007:5-6.FAN Xiao-ning,LIU Wei-ke,LIN Ze-dong.The design and realization of campus network authentication charging system based on 802.1x[J].Computer Security,2007(7):5-6.
[5]H3C公司.安全配置指导[EB/OL].[2011-09-12].http://www.h3c.com.cn/Service/Document_Center/IP_Network_Product/Switches/S5120/S5120-EI/Configure/Operation_Manual/H3C_S5120-EI_CG-Release_2208-6W100/08/201101/707065_30005_0.htm.
[6]H3C公司.Cams认证计费系统用户手册[EB/OL].(2009-12)[2011-09-01].http://kms.h3c.com/kms/respository133680,html.