皮宗辉
喀什师范学院网络中心 新疆 844006
经过十几年发展,国内高校校园网络迅速发展壮大,网络应用服务非常广泛。校园网在高校教学,科研和管理等各项工作中发挥着重要作用,同时校园网有限的信息资源面临非法用户的访问,计算机病毒、蠕虫、黑客入侵以及木马控制等网络安全问题使校园网面临严重的安全形势。
802.1 X,全称是Port-Based Networks Access Control,即基于端口的网络访问控制。802.1x协议作为局域网端口的接入控制机制在以太网中被广泛应用,主要解决以太网内认证和安全方面的问题。
802.1 x协议是一种典型的基于client/server体系结构,包括三个实体:Supplicant System(客户端),Authenticator System(设备端),Authentication Server System(认证服务器)。
IEEE 802.1x认证系统利用EAP协议承载交换信息在客户端、设备端和认证服务器之间进行信息传递(如图 1所示)。
图1 802.1x认证系统的工作机制
在客户端PAE与设备端PAE之间,EAP协议报文使用EAPOL封装格式,直接承载于LAN环境中。 在设备端PAE与RADIUS服务器之间,EAP协议报文可以使用EAPOl封装格式,承载于RADIUS协议中;也可以由设备端PAE进行终结,而在设备端PAE与RADIUS服务器之间传送包含PAP协议或CHAP协议属性的报文。
AAA(Authentication、Authorization、Accounting)是认证、授权、计费的简称,运行于 NAS上的客户端程序,它提供了一个网络接入用户身份验证,授权和记账三种安全机制进行配置的一致框架。
AAA协议实现了网络系统对网络授权用户的访问网络资源的实际情况作了准确的、全面的记录。一定程度上有效地保障了合法用户的权益,又能保障网络系统安全可靠地运行。RADIUS协议是目前应用最广泛的AAA标准。
认证计费系统模块功能层次结构图如图2所示。
图2 认证计费系统模块功能层次结构图
认证计费管理系统主要分三个模块:认证模块、计费模块、用户管理模块,系统的主要功能包括:认证模块实施802.1x+Radius的网络用户接入身份认证,用户通过用户名和密码登录后获得访问权限;计费模块用于对数据库中的原始计费信息进行统计汇总,生成用户的计费账单;管理模块包括对用户管理,用户账单管理,计费策略管理和用户自服务管理的功能。
(1) 认证模块采用Linux操作系统下基于Radius协议的AAA服务器,安装Freeradius认证计费软件用mysql数据库系统作为后台数据库,存放认证计费的数据如:管理员密码表,用户个人信息表,上网原始数据记录表等。
(2) 计费模块提供包月、按时长、按流量三种计费方式,用户可根据自己的实际情况,自由选择最利于自己的计费方式缴纳网络费用。
用户费用信息主要包含在数据库中的 radacct表中。radacct表中记录了用户的上线时间(AcctStratTime)、下线时间(AcctStopTime)、连接时间(AcctSessionTime)、本次连接流入字节数(AcctInputOctets)、本次连接流出字节数(AcctOutputOctets)等信息。根据这些原始数据实现对用户网费进行计费,例如:
按流量计费策略计算为:用户总网络费用=用户实用网络总流量*单价/(元/小时);其中:用户实用网络总流量==上行流量之和+下行流量之和,并按四舍五入保留到小数点后2位数。
(3) 用户管理模块系统实现开户、注销用户、查询用户信息、修改用户信息等用户管理的功能,以及查询用户账单和上网记录的功能。同时提供用户自服务功能,用户登录自服务系统后,可以修改自身用户信息以及查询网络费用账单、上网记录清单等服务。
管理模块开发环境为:开发工具:php ,javascript,数据库:mysql ,Web服务器:apache,系统环境:linux。
系统管理员具有系统管理的最高权限,可以进行用户管理、账单查询、计费策略管理。具体来讲包括用户的开户、修改用户信息、注销用户、查询用户账单和用户上网的详细记录,对用户的计费策略进行修改。
开户界面如图3所示。
新开用户时,需检查用户名不能重名而且用户信息不能为空才可以进行开户操作。
自服务系统具体包含查询网络详细清单,网络费用账单,修改用户信息等功能服务。用户登录自服务系统后,可以输入随机的计费开始日期和计费截止日期,单击查询按钮后,系统会自动生成从计费开始日期到计费截止日期之间的网络费用清单。用户查询账单如图4所示。
图3 新开用户信息界面
图4 用户查询账单界面
在几种主流的认证方式中,虽然802.1x认证具有其它几种认证方式无法比拟的优越性,但是在校园网的应用中存在一些缺陷问题。主要以下几点:
(1) 缺乏只允许用户惟一登录的限制。由于802.1x缺乏限制用户惟一登录的机制,就会造成同一账号在不同的主机上同时可以顺利通过认证,访问网络资源。无法限制非法用户的接入。
(2) 认证后的用户行为缺乏监控。由于802.1X认证体系中,业务流与认证流是分离的。认证通过后的业务流不再进行合法检查。因此合法用户认证通过后,修改自己的IP为其他用户的IP地址,仍可上网。这样其后果会造成IP地址盗用和冲突,管理混乱。
(3) IP、MAC地址绑定的缺陷。基于802.1x认证的交换机支持对合法用户的ip、 mac地址绑定功能。但是这种安全机制也存在严重的问题。接入交换机某一端口下的合法用户认证通过后打开了受控端口时,非法用户通过修改自己的IP,MAC地址为合法的IP,MAC地址,就可实现上网目的。
针对802.1x在接入用户身份控制中存在着一些缺陷。要在高校中大规模应用必须尽可能克服其不足,可通过对802.1x和Radius协议进行扩展,进行一系列的安全机制改进,有效解决802.1x认证中的缺陷问题。
(1) 限制freeradius账号重复登录
通过启用radius.conf配置文件中的session模块中的数据库验证文件,在radcheck表中加入一个attribute:Simultaneous-Use,它的值就代表此用户同时连接数,设置:Simultaneous-Use的值为1,这样禁止test用户重复登录,限制单个用户认证的惟一性。
(2) 用户名、mac、ip、端口多重绑定
为了提高网络的安全性,减少网络中IP地址冲突问题的最好解决办法是进行用户名、Mac,ip port四者绑定。但是在提高网络安全的同时,也给用户使用带来了不方便性。灵活的选择四者中的两者进行绑定。
(3) 合理设置NAS设备的重认证功能
NAS(接入交换机)设备在物理端口启用 802.1x协议后,会打开重认证定时器,启用重认证功能。每隔该定时器设置的时长,NAS定期发起 802.1x重认证。系统缺省的重认证时间为 15秒,根据实际网络环境设置重认证时间,一般为3-5分钟。重认证时系统会重新检测客户端主机的用户名,mac,ip、端口是否与数据库中绑定的数据是否相符合,如果不相符则该主机为非法主机,系统会强制该主机离线。
该系统全面解决了校园网用户接入身份认证,授权等网络应用中的核心问题;解决校园网用户计费问题中的上网费用量化到个人的难题。用户管理模块简化了网络管理,极大的提高了网络管理工作效率,同时方便了用户的使用。
[1] 赵荣芳.基于 IEEE 802.1X的认证技术研究[J].计算机工程应用技术.2010.
[2] [802.1Q] IEEE 802.1Q.Virtual LANS.
[3] IEEE STANDARD 802.1X for LOCAL and METROPOLITAN AREA NETWORKSPORT-BASED NETWORK ACCESS CONTROL, NATIONAL COMMUNICATIONS SYSTEM,Technology and Programs Division ,Arlington, Virginia March 2005.
[4] 禹龙.刘胜全.田生伟.校园网中 802.1X 认证技术的改进[J].计算机工程.2009.