基于802.1x的校园网用户身份认证设计与实现

2012-10-16 10:09吴贤平
制造业自动化 2012年9期
关键词:帐号用户名校园网

吴贤平

(温州大学,温州 325035)

0 引言

由于传统认证(Authentication,又称鉴别)方式对校园网中用户数据包繁琐的处理造成了网络传输瓶颈,而通过增加其他网络设备来解决传输瓶颈势必造成网络成本的提升,因此无法满足用户对网络安全性、高效性和低成本的要求。IEEE 802.1x通过对认证方式和认证体系结构进行优化,有效地解决了传统PPPoE和Web/Portal认证方式带来的问题,消除了网络瓶颈,减轻了网络封装开销,降低了建网成本,从而成为当前校园网选型的一个热点。

1 IEEE802.1x技术简介

1.1 IEEE802.1x协议的工作机制

802.1 x作为一个认证协议,在实现的过程中有很多重要的工作机制[1,2](如图1所示)。

图1 IEEE 802.1x协议的工作机制

认证的发起可以由用户主动发起,也可以由认证系统发起。当认证系统探测到未经过认证的用户使用网络,就会主动发起认证;用户端则可以通过客户端软件向认证系统发送EAPOL-Start报文发起认证。

1.2 IEEE802.1x协议的体系结构

图2 802.1x协议的体系结构

IEEE 802.1x协议的体系结构包括三个重要的部分:Supplicant System客户端、Authenticator System认证系统、Authentication Server System认证服务器。图2描述了三者之间的关系以及互相之间的通信。

客户端系统一般为一个用户终端系统,该终端系统通常要安装一个客户端软件,用户通过启动这个客户端软件发起802.1x协议的认证过程。为支持基于端口的接入控制,客户端系统需支持EAPOL(Extensible Authentication Protocol Over LAN)协议[3,4]。

2 三种认证方式的比较

常见的宽带接入用户认证方式主要有三种:PPPoE、Web/Portal、802.1x。

1)PPPoE认证方法采用安装在端局BNAS或支持PPPoE的交换机, 负责终结由用户PC发起的PPPoE进程, 并在BNAS后面连接认证服务器和计费服务器。用户登录时,BNAS将用户名和密码传送至认证服务器, 验证通过后, 用户接入网络并开始计费。PPPoE认证操作简单且用户较容易接受,能够很好地实现用户计费、在线检测和速率控制等功能。但PPP协议与以太网技术存在本质上的差异, 需要被再次封装到以太网的帧里, 存在封装效率问题。

2)Web/Portal认证是一种业务类型的认证, 通过启动一个Web页面输入用户名和密码, 实现身份认证。该认证方式无需特殊的客户端软件, 降低了网络维护工程量; 无需多层数据封装, 保证效率。但Web认证基于应用层协议, 建网成本高, 易用性不够好, 开放性不够好, 没有统一标准。

3)802.1x认证的特点: 协议为两层协议, 对设备的整体性能要求不高, 但要求认证系统内的所有设备都必须支持802.1x协议, 用户需要安装客户端软件; 对组播业务的支持性很好, 易于支持多业务和新兴流媒体业务; 可以映射不同的用户认证等级到不同的VLAN; 不需要进行协议间的多层封装; 认证与业务分离, 用户通过认证后, 系统对后续的数据包无特殊处理, 有效地解决了网络“瓶颈”。

3 802.1x协议的改进

3.1 基于改进方案的客户端的设计

客户端在逻辑结构上分为两部分:第一部分是底层的协议实现,第二部分是与用户交互的界面设计。底层部分参照802.1x协议设计,并进行相应的修改,最终生成一个动态链接库方便上层调用[6]。下面就数据包封装、数据包发送和功能设计等进行详细说明。

3.1.1 数据包封装

用户接入认证的客户端主要完成对二层数据帧的封装以及发送,并响应NAS的数据帧。设计的客户端程序修改原有认证过程中第三步(如图1)的数据帧EAP-Response/Identity,在其中加入认证需要的用户IP和MAC地址,即在响应NAS发送EAP-Request/Identity的时候。修改后的数据帧如图3所示。

图3 修改后的EAP-Response数据帧结构

3.1.2 数据包发送

数据包发送功能利用了Winpcap(Windows packet capture)提供的免费接口来实现底层数据包的收发工作,Winpcap是windows平台下一个免费、公共的网络访问系统。开发Winpcap这个项目的目的在于为win32应用程序提供访问网络底层的能力。它提供了以下的各项功能:

1)捕获原始数据包,包括在共享网络上各主机发送/接收的以及相互之间交换的数据包;

2)在数据包发往应用程序之前,按照自定义的规则将某些特殊的数据包过滤掉:

3)在网络上发送原始的数据包;

4)收集网络通信过程中的统计信息。

Winpcap提供了一系列的API,我们可以通过这些API在没有任何另外中间层参与的情况下实现Ethernet网络报文的截取。

3.2 FreeRadius功能设计

在应用开源的项目FreeRadius时,考虑实际需要,添加如下功能:

3.2.1 分阶段认证功能

在FreeRadius中实现了分阶段认证,第一阶段的主机认证(IP和MAC)在数据库中做认证,第二阶段的用户信息认证(用户名和密码)也在数据库中做认证。

3.2.2 日志导出功能

在用户通过认证后,FreeRadius中实现了把用户连接后的日志信息记录到数据库中,包括用户登录时间、下线时间、用户IP和MAC地址、用户连接的NAS地址等信息。

3.2.3 单一用户登录功能

当用户连接而没有发出下线请求,同时相同的用户名(在另一台计算机上)再次登录时,会提示出错信息。这样可以设定相同用户名可以同时登录的数目,防止帐号盗用。

3.2.4 帐号到期功能

分配帐号时,会预先设置帐号到期时间,过期后用户将不能再登录。这样可以设定用户帐号使用的有效日期。

4 基于802.1x协议改进后的技术实现

4.1 FreeRadius服务器的部署

FreeRadius是开源的免费使用的RADIUS服务器。FreeRadius已经具有了商业化RADIUS大部分的功能。FreeRadius支持LDAP、MySQL、PostgreSQL和Oracle数据库;它还支持多种加密类型,如EAP-MD5、EAP-TTLS和Cisco LEAP。本文中RADIUS服务器正是采用了FreeRadius 1.1.7,并在此基础上做出修改。

4.2 其他服务器等部署情况

数据库服务器采用oracle9.2.0.1,认证时可以用于存储用户的帐号信息和计算机认证信息。用户帐号数据库服务器保存所有用户上网的用户名和密码,不但对安全性要求很高,而且对于日后的网络日常使用、管理和维护有很大的影响。因此,将数据库服务器部署在网络中心,并且与认证计费服务器Radius分开,再由核心交换机的ACL功能允许认证计费服务器Radius访问它,从而进一步提高后台数据的安全性。

Web服务器用于客户端软件的升级,采用Apache Server作为升级服务器。在Web服务器上使用双网卡。内网网卡与数据服务器连接,交换数据。外网网卡接入校园网服务器区,提供给校园网系统通过TCP/IP可以访问的Web服务器。测试用的客户端操作系统为WinXP。

测试用的NAS为华为的S系列的S3300交换机。

4.3 测试用例

为了测试客户端和服务器是否能正常工作,以及是否实现了预期的功能,设计了一些实际中出现的一些情况来加以测试,测试如下。

1)用户A用计算机C上网时,利用用户A的帐号、密码和计算机C的IP和MAC地址进行认证,当两个认证都通过,才能够接入网络;另外一个用户B也可以利用自己的帐号在计算机C上网,此时认证的则是B的用户名和密码,以及计算机C的IP和MAC地址。A也可以在校园网内任何一台IP和MAC设置正确的计算机上利用自己的帐号上网。测试目的:检测用户信息认证和主机认证是否能分开进行,以及认证信息在整个校园网中的统一性。

2)用户A用计算机C上网时,同时用户B用计算机D上网,但是B盗用A的帐户,则此时会给出错误提示。测试目的:检测用户帐号重登录数,即默认情况下设置用户帐号只能登录一次。

3)用户A用计算机C上网时,当超过预期帐号的合法日期后,就会提示出错。测试目的:检测用户帐号有效日期的正确性,即用户只能在帐号合法日期内进行认证。

4)用户A用计算机C上网时,可以连接 WEB服务器来检测是否有新版本的客户端程序,如果有则进行升级,升级后仍旧可以正常访问网络资源。测试目的:检测WEB服务器是否正常工作,以及客户端升级是否正常。

5)上述过程在另一台NAS上也能够达到预期的目的。

5 结束语

改进后的802.1x认证技术能够比较好地解决现阶段所面临的用户身份认证和应用终端的安全性问题,而且改进后的协议也能进一步增强网络安全性,达到了设计要求和实现目的。但正如大家所共知的,任何一项技术都不可能解决目前所面临的全部问题。因此,仅仅依靠802.1x这项技术来解决校园身份管理系统中的用户身份认证和应用终端所面临的所有安全问题是不现实的。只有多项技术和相关的管理规定有机结合,才能构建一个真正安全、可靠的网络环境。

[1]许亦镜.802.1x协议在校园网中的应用[J].闽江学院学报,2008,(2):13.

[2]韩荣珍.深入剖析802.1x协议[J].计算机安全,2008,(11):25.

[3]严小英,温川.基于802.1x网络的一卡通实现[J].中国教育网络,2008,(5):36.

[4]何江.基于802.1x的校园网认证系统研究与实现[D].山西: 太原理工大学, 2003.

[5]张毅,高东怀,许卫中,等.校园网网络用户安全身份认证体系分析[J].医疗卫生装备, 2008,(4):23.

猜你喜欢
帐号用户名校园网
《护士进修杂志》投稿程序
《护士进修杂志》投稿程序
数字化校园网建设及运行的几点思考
《护士进修杂志》投稿程序
试论最大匹配算法在校园网信息提取中的应用
基于VRRP和MSTP协议实现校园网高可靠性
机智的快递员
NAT技术在校园网中的应用