Radius协议深入_第1页
Radius协议深入_第2页
Radius协议深入_第3页
Radius协议深入_第4页
Radius协议深入_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Radius协议深入,掌握Radius协议的基本概念掌握Radius协议的工作过程掌握Radius包各个字段的含义了解华为Radius协议扩展,学习目标,基本概念,内容提要,RadiusServer与NAS在全网中的位置,Radius:RemoteAuthenticationDialInUserService客户端负责将认证等信息按照协议的格式通过UDP包送到服务器,同时对服务器返回的信息解释处理。,认证端口号:1645/1812计费端口号:1646/1813,Radius的作用,AAAAuthentication、Authorization、Accounting验证、授权、记费PAPPasswordAuthenticationProtocol口令验证协议CHAPChallenge-HandshakeAuthenticationProtocol盘问握手验证协议NASNetworkAccessServer网络接入服务器RADIUSRemoteAuthenticationDialInUserService远程验证拨入用户服务(拨入用户的远程验证服务)TCPTransmissionControlProtocol传输控制协议UDPUserDatagramProtocol用户数据报协议,名词解释,RADIUS的客户端通常运行于接入服务器(NAS)上,RADIUS服务器通常运行于一台工作站上,一个RADIUS服务器可以同时支持多个RADIUS客户(NAS)。RADIUS的服务器上存放着大量的信息,接入服务器(NAS)无须保存这些信息,而是通过RADUIS协议对这些信息进行访问。这些信息的集中统一的保存,使得管理更加方便,而且更加安全。RADIUS服务器可以作为一个代理,以客户的身份同其他的RADIUS服务器或者其他类型的验证服务器进行通信。用户的漫游通常就是通过RADIUS代理实现的。,Client/Server结构,NASRadius认证计费过程,包加密每个radius报文中都有16字节的验证字(authenticator)用于对包进行签名,协议中使用MD5对这个字段进行加密,确认包的合法性(其余字段未加密)口令加密在包合法的情况下,对于携带口令的报文,要使用MD5算法对口令字段的内容加密,NAS与radius服务器之间的数据安全性,MD5是一个算法,它的运算是单向的,即从输出推算不出输入。,不好意思,我只会把您的手表变成兔子,变不回去了,MD5,MD5的特点,包的签名与加密:包的签名指的是RADIUS包中16字节的Authenticator,我们称其为“验证字”。认证请求包RequestAuth=Authenticator,认证请求包的验证字是一个不可预测的16字节随机数。这个随机数将用于口令的加密。认证响应包ResponseAuth=MD5(Code+ID+Length+Authenticator+Attributes+Key)。记费请求包RequestAcct=MD5(Code+ID+Length+16ZeroOctets+Attributes+Key)。记费响应包ResponseAcct=MD5(Code+ID+Length+RequestAcct+Attributes+Key)。,包加密的具体过程,称共享密钥(key)为Key;16字节的认证请求验证字(Authenticator)为Auth;将口令(Password)分割成16字节一段(最后一段不足16字节时用0补齐),为p1、p2等;加密后的口令块为c(1)、c(2)等。下面运算中b1、b2为中间值:b1=MD5(Key+Auth)c(1)=p1xorb1b2=MD5(Key+c(1)c(2)=p2xorb2bi=MD5(Key+c(i-1)c(i)=pixorbi那么加密后的口令为c(1)+c(2)+.+c(i)。,口令加密的具体过程,我查我验,PC与NAS之间的数据安全性之本地PAP认证,本地认证PAP,这种认证方法是明文方式。,SecretPassword=MD5(ChapID+Password+challenge),我查我算我验,PC与NAS之间的数据安全性之本地CHAP认证,本地认证CHAP,采用了MD5加密,如果用户配置了RADIUS验证,其PAP验证过程如下:,采用PAP验证:用户以明文的形式把用户名和他的密码传递给NAS。NAS把用户名和加密过的密码放到验证请求包的相应属性中传递给RADIUS服务器,根据RADIUS服务器的返回结果来决定是否允许用户上网。,用户名、密码,放行,远端PAP认证的安全性如何?,Secretpassword=PasswordXORMD5(ChallengeKey)(Challenge就是Radius报文中的Authenticator),我查我算我验,远端PAP认证的安全性如何?,Secretpassword=MD5(ChapID+Password+challenge),我查我算我验,远端CPAP认证的安全性如何?,基本概念,内容提要,Radius是一种流行的AAA协议,同时其采用的是UDP协议传输模式,AAA协议在协议栈中位置如下:,Radius协议,Radius协议在协议栈中的位置,为什么使用UDP?NAS和RADIUS服务器之间传递的一般是几十至上百个字节长度的数据,用户可以容忍几秒到十几秒的验证等待时间。当处理大量用户时服务器端采用多线程,UDP简化了服务器端的实现过程。TCP是必须成功建立连接后才能进行数据传输的,这种方式在有大量用户使用的情况下实时性不好。当向主用服务器发送请求失败后,还要必须向备用的服务器发送请求。于是RADIUS要有重传机制和备用服务器机制,它所采用的定时,TCP不能很好的满足。,Radius协议选择UDP作为传输层协议,Radius协议包结构,Code:包类型;1字节;指示RADIUS包的类型。Identifier:包标识;1字节;用于匹配请求包和响应包,同一组请求包和响应包的Identifier应相同。Length:包长度;2字节;整个包的长度。Authenticator:验证字;16字节;用于对包进行签名。,Radius协议包各个域解释,1Access-Request请求认证过程2Access-Accept认证响应过程3Access-Reject认证拒绝过程4Accounting-Request请求计费过程5Accounting-Response计费响应过程,code域,1、RADIUS的通信是用“请求-响应”方式进行的,即:客户发送一个请求包,服务器收到包后给予响应。2、RADIUS协议采用的是UDP协议,数据包可能会在网络上丢失,如果客户没有收到响应,那么可以重新发送该请求包。多次发送之后如果仍然收不到响应,RADIUS客户可以向备用的RADIUS服务器发送请求包。,NASRadius认证计费过程,包标识,用以匹配请求包和响应包。该字段的取值范围为0255;协议规定:1、在任何时间,发给同一个RADIUS服务器的不同包的Identifier域不能相同,如果出现相同的情况,RADIUS将认为后一个包是前一个包的拷贝而不对其进行处理。2、Radius针对某个请求包的响应包应与该请求包在Identifier上相匹配(相同)。,Identifier域,整个包长度,包括:CodeIdentifierLengthAuthenticatorAttributes,Length域,该验证字分为两种:1、请求验证字-RequestAuthenticator用在请求报文中,必须为全局唯一的随机值。2、响应验证字-ResponseAuthenticator用在响应报文中,用于鉴别响应报文的合法性。响应验证字MD5(Code+ID+Length+请求验证字+Attributes+Key),加密以后你还能认出我来吗?,Authenticator域,Attribute(1)属性,长度为10字节,benladen,上网用户:张三上网地点:阿富汗,Attributes域,1User-Name用户名2User-Password用户密码3Chap-PasswordChap认证方式中的用户密码4Nas-IP-AddressNas的ip地址5Nas-Port用户接入端口号6Service-Type服务类型7Framed-Protocol协议类型8Framed-IP-Address为用户提供的IP地址9Framed-IP-NetMask地址掩码10Framed-Routing为路由器用户设置的路由方式11Filter-Id过滤表的名称12Framed-MTU为用户配置的最大传输单元,常用报文属性,属性值属性名称意义,13Framed-Compression该连接使用压缩协议14Login-IP-Host对login用户提供的可连接主机的ip地址15Login-Service对login用户可提供的服务16Login-TCP-PortTCP服务端口18Reply-Message返回给用户的信息(成功/失败)24State认证服务器发送challenge包时传送的需在接下来的认证报文中回应的字符串(与Acess-Challenge相关的属性),常用报文属性,属性值属性名称意义,26Vendor-Specific可扩展属性27Session-Timeout用户可用的在线时长(时长预付费)28Idle-Timeout用户在线空闲最大时长,用于闲置切断功能。32NAS-Identifier标识NAS的字符串33Proxy-StateNAS通过代理服务器转发认证报文时服务器添加在报文中的属性60Chap-ChallengeNAS发给PPP用户的challenge信息61Nas-Port-Type接入端口的类型62Port-Limit服务器限制NAS为用户开放的端口数,常用报文属性,属性值属性名称意义,Acct-Status-Type计费请求报文的类型1Start2Stop3Interim-Update7Accounting-On8Accounting-Off9-14ReservedforTunnelAccounting15ReservedforFailed,常用报文属性,属性值属性名称意义,41Acct-Delay-TimeRadius客户端发送计费报文耗费的时间42Acct-Input-Octets输入字节数43Acct-Output-Octets输出字节数44Acct-Session-Id计费会话标识45Acct-Authentic用户的认证方式,是本地还是radius46Acct-Session-Time用户在线时长47Acct-Input-Packets输入包数48Acct-Output-Packets输出包数,常用报文属性,属性值属性名称意义,Acct-Terminate-Case用户下线原因1UserRequest2LostCarrier3LostService4IdleTimeout5SessionTimeout6AdminReset7AdminReboot8PortError9NASError10NASRequest11NASReboot,常用报文属性,属性值属性名称意义,基本概念,内容提要,参考样例:ISN8850与Radius对接测试,*0.18993140-AAA-debug-Packet:sendradiuspacketto192.168.10.4:1812code=1id=19length=1027517009ba002018005a2000attribute(1)(User-name):user1attribute(2)(Password):0 x4d0 xa10 x110 xbe0 xa70 xc50 x1a0 xa40 x5b0 x290 xb10 xde0 x340 x110 x4c0 xf9attribute(6)(User-Service):0 x2attribute(7)(Framed-Protocol):0 x1attribute(4)(NAS-IP-Address):0 xc0a80a0aattribute(32)(NAS-Identifier):ESRattribute(127)(Connect-Id):0 xf00000e*0.18993750-AAA-debug-Packet:attribute(61)(NAS-Port-Type):0 x5attribute(128)(Connect-Port):ESR-10000010032vlan,认证请求(code=1),Framed,表示为PPP或SLIP用,PPP,*0.18993900-AAA-debug-Packet:receiveradiuspacketfrom192.168.10.4:1812code=2id=19length=74184cac52e499a55f68ac8e233c70d75attribute(85)(Realtime-Interval):0 x258attribute(5)(NAS-Port):0 x1513dattribute(25)(Class):128attribute(6)(User-Service):0 x2attribute(7)(Framed-Protocol):0 x1attribute(13)(Framed-Compression):0 x1attribute(10)(Framed-Routing):0 x1*0.18994520-AAA-debug-Packet:attribute(11)(Framed-Filter):1,认证响应(code=2),*0.18994810-AAA-debug-Packet:sendradiuspacketto192.168.10.4:1813code=4id=20length=102ef31f35452717146a298d487ca8attribute(40)(Acct-Status-Type):0 x1attribute(32)(NAS-Name):ESRattribute(8)(Framed-Address):0 xa0a0a01attribute(7)(Framed-Protocol):0 x1attribute(1)(User-name):user1attribute(5)(NAS-Port):0 x0attribute(61)(NAS-Port-Type):0 x5attribute(44)(Acct-Session-Id):03082027130000000011*0.18995400-AAA-debug-Packet:attribute(45)(Acct-Authentic):0 x1attribute(193)(Acct-Timestamp):0 x4a31attribute(41)(Acct-Delay-Time):0 x0,计费开始,1RADIUS2Local3Remote,5Virtual,计费开始请求(code=4),*0.18995750-AAA-debug-Packet:receiveradiuspacketfrom192.168.10.4:1813code=5id=20length=2018ce526ab7f503717416a5bc42c08a,计费响应(code=5),*0.18993900-AAA-debug-Packet:receiveradiuspacketfrom192.168.10.4:1812code=2id=19length=74184cac52e499a55f68ac8e233c70d75attribute(85)(Realtime-Interval):0 xb4attribute(5)(NAS-Port):0 x1513dattribute(25)(Class):128attribute(2)(Password):0 x4e0 x4f0 x500 x410 x530 x530 x570 x44attribute(6)(User-Service):0 x2attribute(7)(Framed-Protocol):0 x1attribute(13)(Framed-Compression):0 x1attribute(10)(Framed-Routing):0 x1*0.18994520-AAA-debug-Packet:attribute(11)(Framed-Filter):1,实时计费间隔为180秒,实时计费之认证响应(code=2),分解动作之一:*0.169338370-AAA-debug-Packet:sendradiuspacketto192.168.10.4:1813code=4id=31length=207e4677ff59decb482d615355deabdb0acattribute(40)(Acct-Status-Type):0 x3attribute(25)(Class):128attribute(32)(NAS-Name):ESRattribute(8)(Framed-Address):0 xa0a0a01attribute(7)(Framed-Protocol):0 x1attribute(1)(User-name):user1attribute(5)(NAS-Port):0 x28000060attribute(61)(NAS-Port-Type):0 x5,实时计费包,实时计费之计费请求(code=4),分解动作之二:*0.169338940-AAA-debug-Packet:attribute(44)(Acct-Session-Id):03101407580000000102attribute(45)(Acct-Authentic):0 x1attribute(193)(Acct-Timestamp):0 x2957aattribute(55)(Event-Timestamp):0 x00 x20 x950 x7aattribute(41)(Acct-Delay-Time):0 x0attribute(87)(Nas-Port-Id):slot=10;subslot=0;port=0;VPI=1;VCI=32;attribute(6)(User-Service):0 x2attribute(7)(Framed-Protocol):0 x1attribute(42)(Acct-Input-Octets):0 x7fd4*0.169339520-AAA-debug-Packet:attribute(43)(Acct-Output-Octets):0 x6174attribute(47)(Acct-Input-Packets):0 x122attribute(48)(Acct-Output-Packets):0 x10eattribute(52)(Acct-Input-Gigawords):0 x0attribute(53)(Acct-output-Gigawords):0 x0attribute(46)(Acct-Session-Time):0 x12c,用户上传字节,用户下载字节,用户计费时长,实时计费之计费请求(code=4),*0.19379310-AAA-debug-Packet:sendradiuspacketto192.168.10.4:1813code=4id=26length=1681ccb875297a2727b7632cbdb493ca349attribute(40)(Acct-Status-Type):0 x2attribute(32)(NAS-Name):ESRattribute(8)(Framed-Address):0 xa0a0a01attribute(7)(Framed-Protocol):0 x1attribute(1)(User-name):user1attribute(5)(NAS-Port):0 x0attribute(61)(NAS-Port-Type):0 x5attribute(44)(Acct-Session-Id):03082033090000000014,计费结束,计费结束请求(code=4),分解动作之二:*0.19379900-AAA-debug-Packet:attribute(45)(Acct-Authentic):0 x1attribute(193)(Acct-Timestamp):0 x4bb3attribute(41)(Acct-Delay-Time):0 x0attribute(49)(Acct-Terminate-Cause):0 x1attribute(111)(Input-Kilobytes-Before-Tariff-Switch):0 x4attribute(115)(Input-Kilobytes-After-Tariff-Switch):0 x4attribute(112)(Output-Kilobytes-Before-Tariff-Switch):0 x0attribute(116)(Output-Kilobytes-After-Tariff-Switch):0 x0*0.19380460-AAA-debug-Packet:attribute(113)(Input-Packets-Before-Tariff-Switch):0 x29attribute(117)(Input-Packets-After-Tariff-Switch):0 x29attribute(114)(Output-Packets-Before-Tariff-Switch):0 x0attribute(118)(Output-Packets-After-Tariff-Switch):0 x0attribute(72)(Time-Befor-Tariff-Switch):0 x1dattribute(73)(Time-After-Tariff-Switch):0 x1d,计费结束请求(code=4),*0.19380930-AAA-debug-Packet:receiveradiuspacketfrom192.168.10.4:1813code=5id=26length=201898f0cd9245591251c3e33f6684f6,计费响应(code=5),*0.82764120-AAA-debug-Packet:sendradiuspacketto192.168.10.4:1812code=1id=46length=102eab0027800573900f63700attribute(1)(User-name):user2attribute(2)(Password):0 x690 x40 xf10 x8c0 xeb0 x810 x150 x710 xe20 xd00 x150 xb00 x200 xee0 x9a0 x55*0.82764970-AAA-debug-Packet:receiveradiuspacketfrom192.168.10.4:1812code=3id=46length=5962d17c557794f521524077c1e74c5e53attribute(18)(Reply-Message):!thepasswordofthisuseriswrong,问题一:密码错误,*0.82897520-AAA-debug-Packet:sendradiuspacketto192.168.10.4:1812code=1id=48length=100735700d54500473600d4800attribute(1)(User-name):abcattribute(2)(Password):0 x900 x5d0 xe40 x8b0 x9f0 xbe0 xb0 x8c0 xf70 xea0 xc40 x170 xd60 x50 x9c0 x23*0.82898270-AAA-debug-Packet:receiveradiuspacketfrom192.168.10.4:1812code=3id=48length=57dee11cfc98ccaae864ec422549527028attribute(18)(Reply-Message):!nothisusernameinthedatabase,问题二:非法用户,基本概念,内容提要,Radius与Radius+:Radius:目前互联网应用中比较流行的用户验证、授权、计费协议。RFC2865/2866/2869定义了标准radius协议的所有规范。Radius+:各通信设备厂家分别对应于原标准radius协议所未定义到的新应用自行开发定义了一套扩展的radius协议报文和属性,成为radius+协议。在华为iTellin中支持华为radius+1.0和radius+1.1两种radius+协议。,iTellin:智能业务平台iTellin中包含了portalserver和iSCP(宽带业务控制点,相当于radiusserver)等功能模块。,基本概念,R

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论