基于RADIUS协议的网络认证技术研究
来源:六九路网
第39卷第2期 2005年2月 Journal of Zhejiang University(Engineering sc.ence1 浙 江 大 学 学 报(T学版) VolF_39 NO.2 eb.2005 基于RADIUS协议的网络认证技术研究 杨建军,贾晨军,冉立新 (浙江大学信息科学与工程学院,浙江杭州310027) 摘要:介绍了远程用户拨号认证(RADIUS)协议的工作原理和使用的安全算法,分析了其安全性和可能存在的安 全漏洞,提出了改进的RADIUS协议以增加网络的安全性能.利用该协议建立了提供给运行商用于无线接入网络的 网络认证、授权和计费(AAA)系统.该系统不增加协议的通信复杂性,并具有简单和易实现的特点. 关键词:RADIUS协议;AAA;MD5;网络安全 中图分类号:TN915.04 文献标识码:A 文章编号:1008~973X(2005)02—0234—04 Study of network authentication based on RADIUS protocol YANG Jian-jun。JIA Chen-jun.RAN Li—xin (College of Information Science and Engineering,Zhejiang University,Hangzhou 310027,China) Abstract:By analyzing the principle of remote authentication dial in user service(RADIUS)protocol and the applied security algorithm,an improved RADIUS protocol was proposed to enhance the security per— formance of networks.Based on the improved protocol,AAA(authentication,authority and account)archi— tecture was set up for the Internet service providers.The AAA architecture for wireless gateway does not increase the complexity of the communication systems,and is simple and easy to implement. Key words:RADIUS protocol;AAA;MD5;network security 随着Internet网络的迅猛发展,网络运行商建立 起越来越庞大的网络,越来越多的企业建立了高速局 域网.网络运行商、企业具有丰富的网络资源,他们为 客户提供了电信级或企业级的网络服务.网络的安全 运行日益重要,并面临着严峻的考验.网络运行商为 了保证网络运行的安全,同时为了保障自己的经济利 益,提出了基于远程用户拨号认证(remote authentica— tion dial in user service,RADIUS)协议的网络认证、 授权和计费(authentication,authority and account, AAA)中心.本文为了解决运行商和企业级ISP(In— ternet service provider)的认证、授权和计费,提供网络 解决方案,解决AAA管理问题,并提出改进的RA— DIUS是架构AAA技术的一个基本协议.现有的网 络运行商在不同的网络中如移动无线互联网、有线 接入网和无线接入网都采用了基于RADIUS协议 的AAA技术架构.RADIUS定义了在网络接入服 务器(network access server,NAS)和集中存放认 证信息的RADIUS服务器之间传输认证、授权和配 置信息的协议 . RADIUS以服务器/客户模式工作,实现了对 远程拨号接人用户的身份认证、授权和计费功能. RADIUS客户端多为网络接入服务器,主要用来将 用户信息传递给RADIUS服务器;服务器则对用户 进行认证,并返回用户的配置信息.为保证传输的安 全性,在客户端和服务器之间传送的关键子段数据 DIUS协议,以增加网络的安全性能.本文将改进的 RADIUS协议应用于无线接入系统的AAA中心. 均以MD5散列值表示,在接收端进行验证. RADIUS协议允许服务器和客户端之间协商 认证方式,包括密码认证协议(password authenti— cation protocol,PAP)、质询认证协议(challenge handshake authentication protocol,CHAP)和扩展 1 基于RADIUS协议的AAA技术 认证、授权和计费是通信网络的基本功能,RA 收稿日期:2004一Ol一08 浙江大学学报(工学版)网址:www.journals.zju.edu.cn/eng j—cn@yahoo.corn 作者简介:杨建军(1973一 ),男,浙江诸暨人。博士,从事移动IP、无线接入网络的研究.E—mail:yangj第2期 杨建军,等:基于RADIUS协议的网络认证技术研究 235 认证协议(extensible authentication protocol, EAP) ,这种可扩展性保证了多种认证方法的实 现,使其在通信网络中具有广泛的应用. RADIUS认证中的功能实体包括:认证服务 器、网络接入服务器和用户,如图1所示. 1认证服 H H用户I 图1 AAA的功能实体 Fig.1 Function entity of AAA RADIUS协议的报文结构如图2所示.RADI— US协议的主要报文类型有:接入请求、接入接受、 接入拒绝、计费请求、计费响应和接入质询等,它们 通过代码域进行指示.认证码(authenticator)是以 非明文方式传送的,是一个MD5散列值.属性(at— tribute)是采用了通用的类型、长度和值(type length value,TLV)格式封装的,如图3所示.属性 域可以包含一个或者多个属性,是RADIUS报文的 消息内容,可以方便地增加网络用户的认证属性.在 接入网络中,可以增加用户的网络流量、网络带宽和 用户组等用户的个性服务,增加运行商的个性化服 务.TLV保证了协议具有良好的扩展性能. 0 1 2 3 01 2 34 56 701 2 34 56 701 2 34 56 701 2 34 56 7 图2 RADIUS协议的报文格式 Fig.2 Packet format of RADIUS protocol U l 2 01 2 34 56 701 2 34 56 701 2 34 56 7 图3 TLV格式 Fig.3 Format of TLV 标识(ID)是分组的惟一标号,请求报文和响应报 文具有相同的标识.长度为该分组的总长(最小20字 节,最大4 096字节).请求认证码通常是随机数,响应 认证码通常是经MD5(Code+Identifier+Length+ Request Authenticator+Attribute+Shared Secret)产 生的值.属性域可以包含一个或者多个属性. RADIUS客户端发送一个请求报文,请求的认 证码是由客户端生成的MD5散列值,所带的属性 必须含有用户名属性.服务器验证用户名、密码和相 关的属性是否合法,如果合法回送接受报文,否则发 送拒绝报文.如果RADIUS支持计费管理功能,将 同时发送计费报文,服务器收到报文后将同样作出 认证处理,决定是否启用计费功能. 属性类型中比较常见的类型包括:用户帐号 (User—Name)、用户密码(User—Password)、CHAP 密码(CHAP—Password).PAP和CHAP都必须使 用CHAP密码属性.接入请求类型的RADIUS报 文必须包括User—Name、User—Password或CHAP— Password属性,还应该包括NAS—IP—Address或/ 和NAS—Identifier属性、NAS—Port或/和NA Port—Type等属性.文献[1,2]中定义了56种RA— DIUS属性. 随着无线接入网技术的不断发展,无线接入使 用IEEE 802.1X协议作为新的认证方式,它在后端 使用EAP进行认证.PAP认证方式是通过两次握 手认证实现的,大多数的运行商支持这种认证方式. CHAP认证方式是通过三次握手认证实现的,网络 的安全性明显强壮于PAP认证方式.现在大多数的 协议要求使用CHAP认证方式.在RADIUS的“拨 入”概念提出时,RADIUS/AAA服务器并不是为开 通无线网络而设计.与基于IEEE 802.1X标准的端 口控制的安全性联系起来后,RADIUS服务器为无 线网络提供了更理想的安全性.这是因为无线接入 点像是作为端口提供给用户系统,并通过一个无线 局域网标准或草案(802.11b,802.11a,802.1lg) 尝试连接到一个局域网.无线局域网适配器和RA— DIUS/AAA服务器中嵌入EAP,解决了无线局域 网接人中的证书信息安全交换的问题. 在RADIUS中进行PAP认证的前提是User和 NAS已经协商好采用PAP认证方式.如点到点协议 (PPP)是在连接建立阶段通过链路控制协议(LCP)传 输认证协议配置信息数据进行协商的 ]. 2 RADIUS协议的安全认证 2.1 RADIUS认证协议 RAD1US协议采用的安全算法是MD5算法 . MD5算法产生的是Hash散列值,是单向散列函数, 具有不可逆性.MD5以512为分组来处理输入文本, 分为16个32位分组.算法的输出为4个32位分组, 将它们级联形成一个128位的散列值 . RADIUS协议的实现是基于MD5算法,报文 的密码属性和请求认证在客户端被MD5加密,在 服务器根据相应的算法进行认证.在PAP认证中, 请求报文中的请求认证是16个字符的随机数,用户 236 浙 江 大 学 学 报(工学版) 第39卷 密码是由原始的用户密码和公用密钥与请求认证的 MD5值的异或.表达式如下: User—Password—Password(不足16位填零)XOR MD5(公用密钥+请求认证). 用户密码将被放入到属性域中传递给服务器.RA— DIUS认证服务器的响应认证为 响应认证一MD5(代码+标识+长度+ 请求认证码+属性+公用密钥). 当使用CHAP认证时,请求报文中的请求认证 码是16个随机数,同时被用来CHAP质询. 无论是RADIUS协议包,还是RADIUS计费 协议包,它们的响应认证方法都是一致的.在RA— DIUS协议的实现中,安全问题是首要的问题,MD5 的不可逆性正满足了这样的需要. 2.2改进的RADIUS认证协议 在已有的协议中对用户密码属性采取的算法为 User-Password'=Password(不足16位填零)XOR MD5(公用密钥+请求认证). 在这种算法中,破坏者可以截获数据报获得用户的 密码,利用大量截获的数据进行分析,猜测用户密 码,存在着潜在的网络安全问题.如果人为地从内部 网络进行破坏,共享密钥的泄漏会导致严重的灾难. 改进的RADIUS认证算法并没有放弃使用 MD5算法,而是对RADIUs的认证方式作了一些 改进,增加了网络的安全性能,使对MD5的攻击并 不是轻而易举的;而在网络的传输过程中,对用户密 码的保护也采取了适当的算法,增加用户认证的安 全性.改进的RADIUS认证算法,在RADIUS的客 户端对用户密码生成MD5散列值,在RADIUS服 务器不再采用反向的算法获得明文的用户密码,而 是依然采用正向的MD5单向散列值,从本地的存 贮用户库获得密码,采用MD5单向散列值的密码, 比较数据包中的User—Password字段.这种方法并 不增加服务器端的负荷,而网络的安全性能得到了 大幅度的提高.表达式如下: User-Password=MD5(Password(不足16位填零)) X0R MD5(公用密钥+请求认证). 改进的RADIUS协议可以为PAP和CHAP 提供更可靠的安全性.在本文的RADIUS认证体系 中,使用了改进的RADIUS协议,它可以适用于 PAP、CHAP和EAP认证方式. 3应用实例 AAA网络认证体系结构主要包括RADIUS客 户端、服务器和代理.在AAA体系结构中RADIUS 客户端可以是在网络接入服务器中的一个进程.在 本文AAA认证体系的实现中,RADIUS客户端是 运行在网络接入服务器中的一个独立进程.该独立 进程采用异步方式,监听来自用户端的认证信息,把 接收到的信息交给RADIUS处理,然后继续监听, 它能够处理来自不同认证协议的认证信息,包括 PAP、CHAP和EAP.这些认证协议可以被不同进 程所利用,如基于以太网的点到点协议(PPPoE)和 IEEE 802.1x.在无线网关中,进程之间是通过消息 的方式进行传递的.这种网络认证客户端可以支持 不同的网络认证方式,而不必要修改整个客户端软 件,具有容易扩展的特点,提高了AAA体系的开发 效率. 在图4所示的网络结构中,在无线网关中运行 RADIUS客户端软件,在AAA体系结构中运行 RADIUS服务器端软件.接入无线网关可以是传统 的有线网络,如PPPoE,ADSL等,也可以是无线 IEEE 802.11,甚至可以第二代和第三代移动通信 数据网络.沈平等人[7 阐述了开放无线接入网的 AAA认证体系.本文所实现的网络认证系统AAA 支持了PPPoE、移动IP和无线局域网. 在本系统中,RADIUS协议支持代理功能,实 现移动IP的漫游认证功能.RADIUS服务器同时 具有代理的功能,它把来自于客户端的认证信息 转发给远程的RADIUS服务器,可以支持多个远 程RADIUS服务器的转发,并把来自于远程服务 器的用户认证信息返回给客户端.在无线接入网 络认证体系中,使用改进的RADIUS协议,并采用 多进程方式的体系结构使网络具有良好的扩展性 能和更高的安全性能.在该网络体系结构中,采用 PDA 圈4基于RADIUS协议的AAA无线接入网络体系结构 Fig.4 AAA architecture of wireless access network based on RADIUS protocol 第2期 杨建军,等:基于RADIUS协议的网络认证技术研究 237 集中式的AAA体系结构,结构简单,传输的消息 安全可靠,非常适合无线接入网络,比以Diameter 协议为基础的AAA认证体系高效,网络的建设周 期短. 参考文献(References): [1]RINGEY C,WILI ENS S,RUBENS A,el a1.RFC 2865.Remote authentication dial in user service(RADI— US)[s].Is.t.]:ISOC,2000. 4结语 [2]RINGEY C.RFC 2866.RADIUS accounting[s].Is. t.]:IS0C,2000. AAA系统可应用于运行商和企业级计费和认 证管理系统.基于RADIUS的计费和认证管理中心 可以为网络时代运行商提供安全可靠和高效的网络 [3]BLUNK L,VOLI BRECHT J。RFC 2284.PPP extensi— ble authentication protocol(EAP)[s].Is.t.]:ISOC, 1998. [43 SIMPSON W.RFC 1 548.The point—to—point protocol (PPP)[s].Is.t.]:ISOC,l993. [s-I RIVEST R.DUSSE S.RFC 1321.The MD5 message- digest algorithm[s].Is.t.]:ISOC,1992. E63 BRUCE S.应用密码学[M].北京:机械工业出版社, 1996:31I一31 5. 服务,并可以利用已有的网络资源向客户提供ISP 服务.本系统可应用于电信级和企业级ISP的建设. 本系统的一个典型应用是无线接入网络,它具有网 络建设周期短,成本低的特点.本文所设计的包含网 络认证系统AAA的无线网关平台在实践中得到了 很好的应用.在未来的移动通信网络认证体系建设 中,基于RADIUS的AAA网络认证体系中也将占 据一席之地. [7]沈平,曹秀英.开放无线接入网AAA功能实现[J].通 信学报,2003,23(3):91—97. SHEN Ping,CAO Xiu-ying.The solution of AAA function in open RAN[J].Journal of China Institute of Communica- tions,2003。23(3):91—97. ◆ ◆ . .●‘ ●●●_ ● ● ◆l_●●’◆¨●●●● ●●◆I◆I●i● ◆●一●‘●_●●● ●q ◆● ●‘●_◆● ◆ .I● ● ●.I● ● ●_◆◆●. ◆I‘ ◆Jt◆’◆・●J◆●。◆●’◆’’ I上接第220页) Is.n.],2002:43—48. 4结语 r 2]REILLY D A,TALEB B,LAWS A.An instrumenta— tion and control——based approach for distributed applica—- 本文提出的自适应系统的理论模型,在原有 DMonA模型、RTM监控模型的基础上进一步完善 tion management and adaptation[A-I.Proceedings of the First Workshop on Self-healing Systems Ec].Charleston: s.n.],2002:61—66. 了自适应特性——引入了进化和复制的概念,并在 [3]Real time specification Java final specification V1.0[EB/ OL-I.http:ffwww.rtj.org/,2001—12. 此概念上用现有技术建立了具体模型框架,测试了 该模型框架下自适应体系结构的性能.实验数据证 明,这种自适应系统采用新方法提高了系统的效率 和稳定性,能够适应于复杂多变的网络环境. [4]THOMAS A,Enterprise JavaBeans:Server component model for Java[EB/OL].http://www.javasoft.com/ products/ejb/,1997—1 1. Java virtual machine profiler interface(JVMPI)[EB/ [5] 参考文献(References): [1]SAM M,LIEVEN D,NICO J.Self—adapting concurren— cy;The DM。nA architecture[A-I.Proceedin 0f the Fistr Workshop on Self-healing Systes E mc].Charleston: OL].http://java.sun.com/j2se/1.3/docs/guide/jvm— pi/jvmpi.html,1999—06. buted computing with BEA WebLogic [6] DEAN J.Distriserver[R].San Francisco:BEA Systems,2002.