当前位置:文档之家› Radius的TinyRadius实现

Radius的TinyRadius实现

Radius的TinyRadius实现
Radius的TinyRadius实现

Radius原理

基本概念

PPP Point to Point Protocol 点对点协议

AAA可以通过两种途径实现:

1、在NAS端进行认证、授权和计费

2、通过协议进行远程认证、授权和计费。实现了AAA的协议有:RADIUS、Kerberos、TACACS

当用户想要通过某个网络(如电话网)与NAS建立连接从而获得访问其他网络的权利时,NAS可以选择在NAS上进行本地认证计费,或把用户的信息传递给RADIUS服务器,由Radius 进行认证计费;RADIUS协议规定了NAS与RADIUS服务器之间如何传递用户信息和计费信息;RADIUS服务器负责接收用户的连接请求,完成验证,并把传递服务给用户的配置信息返回给NAS.

本地(NAS)验证——PAP方式:

用户以明文的形式把用户名和密码传递给NAS,NAS根据用户名在NAS端查找本地数据库,如果存在相同的用户名和密码表明验证通过,否则验证未通过。

本地(NAS)验证——CHAP方式:

Secret Password = MD5(Chap ID + Password + challenge)

当用户请求上网时,

1、服务器产生一个16字节的随机码(challenge)给用户(同时还有一个ID号,本地路由器

的hostname).

2、用户端得到这个包后使用自己独用的设备或软件对传来的各域进行加密,生成一个

Secret Password传给NAS。

3、NAS根据传来的用户名查找自己本地的数据库,得到和用户端进行加密所用的一样的密

码,然后根据原来的16字节的随机码进行加密,将其结果与Secret Password作比较,如果相同表明验证成功,否则失败.

远端(Radius)验证——PAP方式:

如果用户配置了RADIUS验证,其PAP验证过程如下:

采用PAP验证:

1.用户以明文的形式把用户名和他的密码传递给NAS。

2.NAS把用户名和加密过的密码放到认证请求包的相应属性中传递给RADIUS服务器3.根据RADIUS服务器的返回结果来决定是不允许用户上网。

Code = 1 (Access-Request)

ID = 0

Length = 56

Request Authenticator = {16 octet random number}

Attributes:

User-Name = "nemo"

User-Password = {16 octets of Password padded at end with nulls,

XORed with MD5(key|Request Authenticator)}

NAS-IP-Address = 192.168.1.16

ID = 0 (same as in Access-Request)

Length = 38

Response Authenticator = {16-octet MD-5 checksum of the code (2),id (0), Length (38), the Request Authenticator from above, the attributes in this reply, and the shared secret} Attributes:

Service-Type = Login-User

Login-Service = Telnet

Login-Host = 192.168.1.3

远端(Radius)验证——CHAP方式:

如果用户配置了RADIUS验证,其CHAP验证过程如下:

1、当用户请求上网时,NAS产生一个16字节的随机码给用户(同时还有一个ID号,

本地路由器的host name)。

2、用户端得到这个包后使用自己独有的设备或软件对传来的各域进行加密,生成一个

response传给NAS。

3、NAS把传来的CHAP ID和response分别作为用户我和密码,并把原来的16字节随

机码(challenge)传给RADIUS服务器。

4、RADIUS根据用户名在服务器端查找数据库,得到和用户端进行加密所有的一样的

密码,然后根据传来的16的字节的随机码进行加密,将其结果与传来的password 作比较,如果相同表明验证通过,如果不相同表明验证失败。另外,如果验证成功,RADIUS服务器同样也要以生成一个16字节的随机码对用户进行询问(challenge,暂不支持)

ID = 1

Length = 71

Request Authenticator = {16 octet random number also used as CHAP challenge}

Attributes:

User-Name = "floppy"

CHAP-Password = {1 octet CHAP ID followed by 16 octet CHAP response}

NAS-IP-Address = 192.168.1.16

NAS-Port = 20

Service-Type = Framed-User

Framed-Protocol = PPP

RADIUS server 验证floppy, 并发送Access-Accept UDP 数据包到NAS 告诉NAS可以允许PPP服务并从它的动态地址池中分配一个网络地址给用户。

Code = 2 (Access-Accept)

ID = 1 (same as in Access-Request)

Length = 56

Response Authenticator = {16-octet MD-5 checksum of the code (2),id (1), Length (56), the Request Authenticator from above, the attributes in this reply, and the key}

Attributes:

Service-Type = Framed-User

Framed-Protocol = PPP

Framed-IP-Address = 255.255.255.254

Framed-Routing = None

Framed-Compression = 1 (VJ TCP/IP Header Compression)

Framed-MTU = 1500

RADIUS协议

Radius

通常对Radius协议的服务端口号是1645(认证)、1646(计费)或1812(认证)、1813(计费)。

下图是radius协议包结构:

各个域的解释:

Radius认证计费过程:

1、用户拨入后(1),所拨入的设备(比如NAS)将拨入用户的用户信息(比如用户名、口令、所占用的端口等等)打包向RADIUS服务器发送(2)。

2、如果该用户是一个合法的用户,那么Radius告诉NAS该用户可以上网,同时传回该用户的配置参数(3);否则,Radius反馈NAS该用户非法的信息(3)。

3、如果该用户合法,MAS就根据从RADIUS服务器传回的配置参数配置用户(4)。如果用户非法,NAS反馈给用户出错信息并断开该用户连接(4)。

4、如果用户可以访问网络,RADIUS客户要向RADIUS服务器发送一个记费请求包表明对该用户已经开始记费(5),RADIUS服务器收到并成功记录该请求包后要给予响应(6)。

5、当用户断开连接时(连接也可以由接入服务器断开)(7),RADIUS客户向RADIUS服务器发送一个记费停止请求包,其中包含用户上网所使用网络资源的统计信息(上网时长、进/出的字节/包数等)(8),RADIUS服务器收到并成功记录该请求包后要给予响应(9)。

用以匹配请求包和响应包,该字段的取值范围为0~255

协议规定:

1、在任何时间,发送给同一个Radius服务器的不同包的Identifier域不能相同,如果出现

相同的情况,Radius将认为后一个包是前一个包的拷贝而不对其进行处理

2、Radius针对某个请求包的响应包应该与该请求包在Identifier上相匹配(相同)。

3)Length,包长度:

整个包长度,包括Code,Identifier,Length,Authenticator,Attributes域的长度。

4)Authenticator,验证字:

该验证字分为两种:

1、请求验证字---Request Authenticator

用在请求报文中,必须为全局唯一的随机值。

2、响应验证字---Response Authenticator

用在响应报文中,用于鉴别响应报文的合法性。

响应验证字=MD5(Code+ID+Length+请求验证字+Attributes+Key) RADIUS主要特征

Radius是一种流行的AAA协议,同时其采用的是UDP协议传输模式。1)为什么使用UDP?

2)C/S结构

3)网络安全

包的签名与加密:

包的签名指的是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) = p1 xor b1

b2 = MD5(Key + c(1)) c(2) = p2 xor b2

…… …… ……

bi = MD5(Key+ c(i-1)) c(i) = pi xor bi

那么加密后的口令为c(1)+c(2)+...+c(i)。

上面是协议规定的算法,也有的RADIUS服务器为了实现起来简单,修改了上述的算法,具体的讲,b1的算法同上,但bi=b2=b1(i>=1),其他运算不变。当用户的口令长度不超过16字节时,两种算法的结果是一样的。

4)灵活的验证机制

RADIUS协议允许服务器支持多种验证方式,比如PPP的PAP和CHAP、UNIX登录以及其他认证机制。

通常的RADIUS服务器都支持PAP,但有些RADIUS服务器不支持CHAP,原因在于有些RADIUS服务器在保存用户的口令时是加密保存的。而要验证一个CHAP用户的合法性,必须能够获得该用户的明文口令才行。

5)扩展性

RADIUS协议具有很好的扩展性。RADIUS包是由包头和一定数目的属性(Attribute)构成的。新属性的增加不会影响到现有协议的实现。

通常的NAS厂家在生产NAS时,还同时开发与之配套的RADIUS服务器。为了提供一些功能,常常要定义一些非标准的(RFC上没有定义过的)属性。关于各个厂家有那些扩展的属性,一般可以从相应的RADIUS服务器的字典(dictionary)文件中找到(tinyRadius的字典在:/org/tinyradius/dictionary/default_dictionary)。

计费保护:

由于计费是个用户敏感的问题,我们提供的计费信息要求准确外更要求完备,不能丢失话单,而Radius计费服务器的计费很容易受通讯不畅或计费服务器工作超负荷等意外因素的影响而丢失话单,为此我们提供了本地计费的保护能力,即话单从NAS发送出去以后如果没有收到计费服务器的确认信息我们就认为计费失败,并将该话单(不论是实时计费中间话单还是离线话单)送到本地话单池中。

RADIUS协议属性

认证报文的常用属性

TinyRadius

快速上手:

1)TinyRadius简介

TingRadius是一个简单、小巧又灵活的java Radius库,它能够发送和接收各种类型的Radius协议包。同时它遵循LGPL(GNU Lesser General Public License,GNU 宽通用公共许可证)条款。

2)使用TinyRadius可以做什么?

1、在您的java程序中,tinyRadius可以发送与接收Radius协议包,包括:

Access-Request, Access-Accept, Access-Reject, Access-Challenge,

Accounting-Request, Accounting-Response and others

2、用来作为认证讲求消息的PAP和CHAP协议

3、可以添加从字典文件中读取的任意Radius属性

4、发送和接收带用商家特有属性的Radius协议包

3)使用TinyRadius不能做或不应做什么?

1、TinyRadius不能为您搭建一个完成的Radius服务器(如果需要请使用FreeRadius 或

JRadius)

2、不写java代码你是无法直接去连接你的用户数据库的(这个库只能作为你应用程序

的插件使用而不是一个独立的服务器)。

TinyRadius中已经配备了简单的小应用程序来为你展示如何去建立Radius服务器和Radius 客户端。

4)运行TinyRadius请注意

1、TinyRadius已经在JDK1.1到JDK1.6上测试并工作的很好,但我建议你使用JDK1.4

以上版本

2、你需要使用Apache的Commons Loggin去编译运行TinyRadius,在发布包中已经包

含了。

实例1:简易的认证

实例2:发送带有多属性的认证请求

1、创建一个RadiusClient类,传入主机名和你想要连接的服务器的共享密钥,你可以用这

2、创建一个认证请求的Radius报文,在构造方法中传入用户的名字和密码,User-Name属性将直接被加到对象上,而User-Password属性(PAP)或是CHAP-Password和CHAP-Challenge 属性将在打包时生成因为请求认证报文是需要加密的密码。

3、设置更多的属性。注意TinyRadius从给定类型名解析属性类型,而且它将ip地址和常量

实例3:如何去实现一个Radius服务器

你需要继承org.tinyradius.util.RadiusServer。为以下的方法提供一个实现:

这个方法会检查是否允许客户机与Radius服务器通信。如果允许,它应该返回一个共享密钥来保护与客户机的通信。

上面的方法返回了给定用户的密码,如果你不能访问密码(在CHAP是这样的情况)或者你需

重写这两个方法可以更好的控制计费请求和认证请求报文的处理,只要返回一个Radius报文作为一个回应,或者如果请求被忽视就返回null。

实现了你的Radius服务器类后,你要以使用start()和stop()方法分别开户和结束服务了。对

实例4:如何实现一个Radius代理服务器

你需要继承org.tinyradius.proxy.RadiusProxy类,除了实现此类的实现方法外,你还必需提供以下方法的实现。

使用提供的客户端(包含客户端的IP地址,端口号和共享密钥),你必须决定给定的Radius 报文是否应被转发或者是TinyRadius服务器自己处理报文

如果你返回null,报文会像通常一样处理,否则,报文会被代理(添加一个Proxy-State属性)发给Radius 服务器。

作为一个完整的例子,请查看以下三个类:TestProxy, TestServer 和TestClient,可以建立只含有TinyRadius的Radius代理,只使用”localhost”

TinyRadius包中自带的实现

搭建服务器:TestServer

以上的类实现了一个简单的Radius服务器,该服务器会在30分钟后停止服务。只会应答本机的客户端,即ip为127.0.0.1,共享密钥为testing123,用户名为mw,密码为test

重写的第一个方法getSharedSecret()判断如果客户端的地址为127.0.0.1的话就返回共享密钥testing123,即允许通信,否则返回null

重写的第二个方法getUserPassword()判断如果用户名是mw就返回密码test,这是模拟的数据库中查询到该用户的情况,如果数据库中没有该用户,就返回null。

重写的第三个方法accessRequestReceived(),首先打印了请求包的内容。然后调用父类中的实现,验证密码的正确与否来决定返回接受包还是拒绝包,该代码如下:

之后就是根据返回的包来打印一些提示信息,当报文不为空时打印响应包的内容。最后在主方法中接收输入参数(是否改变默认的监听端口),并开启服务,30分钟后关闭服务。接下来看一下客户端的代码:TestClient

钥来创建一个radius客户端。

2、之后构造认证请求报文。设置认证协议是PAP,也可以是CHAP。相关的属性名可以参考

RADIUS协议属性表。

3、打印发送认证请求之前的报文;发送认证请求;打印发送后的报文,发现多了一个属性:

User-Password: 0x7fb44fe71f2aa497c3035c0a1fa15350,这就是在打包时加密生成的;生成的过程在encodePapPassword()方法中,该方法是将密码加密。然后在encodeRequestAttributes()方法中将密码属性放进去。在服务器端接收的时候还需要将密码解密:decodePapPassword(),解密为纯文本形式。

打印返回的报文:报文类型变是Access-Accept,多了Reply-Message: Welcome mw!;再往后是计费请求报文,我们这里不看它。

4、记住关闭客户端。

如果使用PAP方式的话,可以取得用户密码的明文形式

AccessRequest.getUserPassword();

1、If RADIUS User password is more than 16 bytes, then user authentication fails,如果用户的

密码超过16位的话密码的加密将失败,从而导致认证失败,原因在于类:

解决办法:将System.arraycopy(encryptedPass, i, lastBlock, 0, 16);从for 循环上面移到for下面。

比如你想添加一个Name属性,你可以定义一个字典文件:my_dictionary

我们现在把这个文件放在src下面,所以在你添加好你之前的属性后,你可以设置你的新字典然后添加你定义的属性了:

部拷贝过来,这是实验证明的,如果你不拷贝到你的字典中,最后默认字典中的属性将成为Unknow-Attribute。

虽然这样可以传递了,但是你会发现在服务器端并不能取得Name属性,没错,你必须在服务器端也把这个文件放到src下面,然后在方法accessRequestReceived开始处写入以下的代码:

打印出来是:

Name: 0x79616e687561

很简单,你只要用下面的方式取就OK了:

3、此外,就是使用代理了,这个可以参看源码:TestProxy

标准Radius协议包结构

标准Radius协议包结构 图9 Radius包格式 Code:包类型;1字节;指示RADIUS包的类型。 1Access- request 认证请求 2 Access- accept 认证响应 3 Access- reject 认证拒绝 4 Accounting-request 计费请求 5 Accounting-response 计费响应 *11 Access-challenge 认证挑战 Identifier:包标识;1字节,取值范围为0 ~255;用于匹配请求包和响应包,同一组请求包和响应包的Identifier应相同。 Length:包长度;2字节;整个包中所有域的长度。Authenticator:16 字节长;用于验证RADIUS服务器传回来的请求以及密码隐藏算法上。 该验证字分为两种: 1、请求验证字---Request Authenticator 用在请求报文中,必须为全局唯一的随机值。 2、响应验证字---Response Authenticator 用在响应报文中,用于鉴别响应报文的合法性。 响应验证字=MD5(Code+ID+Length+请求验证字+Attributes+Key) Attributes:属性

图10 属性格式 Type 1 User-Name 2 User-Password 3 CHAP-Password 4 NAS-IP-Address 5 NAS-Port 6 Service-Type 7 Framed-Protocol 8 Framed-IP-Address 9 Framed-IP-Netmask 10 Framed-Routing 11 Filter-Id 12 Framed-MTU 13 Framed-Compression 14 Login-IP-Host 15 Login-Service 16 Login-TCP-Port 17 (unassigned) 18 Reply-Message 19 Callback-Number 20 Callback-Id 21 (unassigned) 22 Framed-Route 23 Framed-IPX-Network 24 State 25 Class 26 Vendor-Specific 27 Session-Timeout 28 Idle-Timeout 29 Termination-Action 30 Called-Station-Id 31 Calling-Station-Id

radius认证服务器配置

基于IEEE 802.1x认证系统的组成 一个完整的基于IEEE 802.1x的认证系统由认证客户端、认证者和认证服务器3部分(角色)组成。 认证客户端。认证客户端是最终用户所扮演的角色,一般是个人计算机。它请求对网络服务的访问,并对认证者的请求报文进行应答。认证客户端必须运行符合IEEE 802.1x 客户端标准的软件,目前最典型的就是Windows XP操作系统自带的IEEE802.1x客户端支持。另外,一些网络设备制造商也开发了自己的IEEE 802.1x客户端软件。 认证者认证者一般为交换机等接入设备。该设备的职责是根据认证客户端当前的认证状态控制其与网络的连接状态。扮演认证者角色的设备有两种类型的端口:受控端口(controlled Port)和非受控端口(uncontrolled Port)。其中,连接在受控端口的用户只有通过认证才能访问网络资源;而连接在非受控端口的用户无须经过认证便可以直接访问网络资源。把用户连接在受控端口上,便可以实现对用户的控制;非受控端口主要是用来连接认证服务器,以便保证服务器与交换机的正常通讯。 认证服务器认证服务器通常为RADIUS服务器。认证服务器在认证过程中与认证者配合,为用户提供认证服务。认证服务器保存了用户名及密码,以及相应的授权信息,一台认证服务器可以对多台认证者提供认证服务,这样就可以实现对用户的集中管理。认证服务器还负责管理从认证者发来的审计数据。微软公司的Windows Server 2003操作系统自带有RADIUS 服务器组件。 实验拓扑图 安装RADIUS服务器:如果这台计算机是一台Windows Server 2003的独立服务器(未升级成为域控制器,也未加入域),则可以利用SAM来管理用户账户信息;如果是一台Windows Server 2003域控制器,则利用活动目录数据库来管理用户账户信息。虽然活动目录数据库管理用户账户信息要比利用SAM来安全、稳定,但RADIUS服务器提供的认证功

RADIUS服务器进行MAC验证

RADIUS服务器进行MAC验证,配置nat,使无线接入端连接外网 一、实验目的:通过Radius服务器的mac验证和路由器上的 nat配置,使得在局域网内的无线设备可以上网。 二、实验拓扑图: 三、使用的设备列表: S3610交换机3台 AR28路由器1台 AP无线路由器1台 AC无线控制器1台 Radius服务器1台 四、具体的配置:

步骤一:在AC上设置用户和做mac地址绑定,以及设计无线网 sys [h3c]sysname AC( 注意,AC为WA2620-AGN,本AC改名字的时候不能只打sys+名字,需要的是完整才能打出来sysname+名字) [AC]int vlan 1 [AC-vlan-interfacel]undo ip add [AC-vlan-interfacel]vlan 2 [AC-vlan2]vlan 4 [AC-vlan4]int vlan 4 [AC-vlan-interface4]ip add 192.168.4.1 24 [AC-vlan-interface4]quit [AC]radius scheme yu [AC-radius-yu]server-type extended [AC-radius-yu]primary authentication 192.168.5.1 [AC-radius-yu]primary accounting 192.168.5.1 [AC-radius-yu]key authentication h3c(radius上默认的密钥为h3c,可以重设,所以在配置上需要一致,所以这里配置h3c) [AC-radius-yu]key accounting h3c [AC-radius-yu]user-name-format without-domain(注意:这条指令的意思是,不用域名,让你在radius添加账户时可以不带域名)

AAA和RADIUS HWTACACS协议

AAA和RADIUS/HWTACACS协议简介 1.1.1 aaa概述 aaa是authentication,authorization and accounting(认证、授权和计费)的简称,它提供了一个用来对认证、授权和计费这三种安全功能进行配置的一致性框架,实际上是对网络安全的一种管理。 这里的网络安全主要是指访问控制,包括: 哪些用户可以访问网络服务器? 具有访问权的用户可以得到哪些服务? 如何对正在使用网络资源的用户进行计费? 针对以上问题,aaa必须提供下列服务: 认证:验证用户是否可获得访问权。 授权:授权用户可使用哪些服务。 计费:记录用户使用网络资源的情况。 aaa一般采用客户/服务器结构:客户端运行于被管理的资源侧,服务器上集中存放用户信息。因此,aaa框架具有良好的可扩展性,并且容易实现用户信息的集中管理。 1.1.2 radius协议概述 如前所述,aaa是一种管理框架,因此,它可以用多种协议来实现。在实践中,人们最常使用radius协议来实现aaa。 1. 什么是radius radius是remote authentication dial-in user service(远程认证拨号用户服务)的简称,它是一种分布式的、客户机/服务器结构的信息交互协议,能保护网络不受未授权访问的干扰,常被应用在既要求较高安全性、又要求维持远程用户访问的各种网络环境中(例如,它常被应用在管理使用串口和调制解调器的大量分散拨号用户)。radius系统是nas(network access server)系统的重要辅助部分。 当radius系统启动后,如果用户想要通过与nas(pstn环境下的拨号接入服务器或以太网环境下带接入功能的以太网交换机)建立连接从而获得访问其它网络的权利或取得使用某些网络资源的权利时,nas,也就是radius客户端将把用户的认证、授权和计费请求传递给radius服务器。radius服务器上有一个用户数据库,其中包含了所有的用户认证和网络服务访问信息。radius服务器将在接收到nas传来的用户请求后,通过对用户数据库的查找、更

RADIUS协议属性

属性值属性名称意义 1 User-Name 用户名 2User-Password 用户密码 3Chap-Password Chap认证方式中的用户密码 4 Nas-IP-Address Nas的ip地址 5 Nas-Port 用户接入端口号 6 Service-Type 服务类型 7 Framed-Protocol协议类型 8 Framed-IP-Address 为用户提供的IP地址 9 Framed-IP-NetMask 地址掩码 10 Framed-Routing 为路由器用户设置的路由方式 11 Filter-Id 过滤表的名称 12 Framed-MTU 为用户配置的最大传输单元 13 Framed-Compression 该连接使用压缩协议 14 Login-IP-Host 对login用户提供的可连接主机的ip地址 15 Login-Service 对login用户可提供的服务 16 Login-TCP-Port TCP服务端口 18 Reply-Message 认证服务器返回用户的信息 24 State 认证服务器发送challenge包时传送的需在接下来的认证报文中回应的字符串(与Acess-Challenge相关的属性) 25 Class 认证通过时认证服务器返回的字符串信息,要求在该用户的计费报文中送给计费服务器 26 Vendor-Specific 可扩展属性 27 Session-Timeout 在认证通过报文或Challenge报文中,通知NAS该用户可用的会话时长(时长预付费) 28 Idle-Timeout 允许用户空闲在线的最大时长 32 NAS-Identifier 标识NAS的字符串 33 Proxy-State NAS通过代理服务器转发认证报文时服务器添加在报文中的属性 60 Chap-Challenge 可以代替认证字字段传送challenge的属性 61 Nas-Port-Type 接入端口的类型 62 Port-Limit 服务器限制NAS为用户开放的端口数 40 Acct-Status-Type 计费请求报文的类型 41 Acct-Delay-Time Radius客户端发送计费报文耗费的时间 42 Acct-Input-Octets 输入字节数 43 Acct-Output-Octets 输出字节数 44 Acct-Session-Id 计费会话标识 45 Acct-Authentic 在计费包中标识用户认证通过的方式 46 Acct-Session-Time 用户在线时长 47 Acct-Input-Packets 输入包数 48 Acct-Output-Packets 输出包数 49 Acct-Terminate-Case 用户下线原因 50 Acct-Multi_Session-Id 相关计费会话标识 51 Acct-Link-Count 生成计费记录时多连接会话的会话个数 ?

Windows2003 Radius服务器搭建

Windows2003 Radius服务器搭建 1 目的 为测试提供指导,加快测试效率,并为WLAN产品积累相应的测试案例。 2 范围 1)适用于802.1x Radius测试。 4 术语和定义 AP Access Point,接入点 AC Access Controller,接入控制器 WLAN Wireless Local Access Network,无线局域网 VLAN Virtual Local Area Network,虚拟局域网

5 windows2003 Radius服务器安装步骤 5.1 IIS安装 在【控制面板->添加或删除程序->添加/删除Windows组件->应用程序服务器】中勾选“https://www.doczj.com/doc/667391409.html,”,“Internet信息服务(IIS)”,“启用网络COM+访问”。点击<确定>,插入Windows2003安装盘,点击<下一步>,完成IIS安装。 图5-1 IIS安装选项 5.2 IAS(Internet验证服务)安装 在【控制面板->添加或删除程序->添加/删除Windows组件->网络服务】中勾选“Internet 验证服务”,“域名系统(DNS)”。点击<确定>,插入Windows2003安装盘,点击<下一步>,完成IAS安装。 图5-2 IAS安装选项 5.3 Active Directory安装 1、在运行栏输入“dcpromo”,进入AD安装向导。 图5-3 输入运行命令

2、在安装向导页面点击<下一步>。 图5-4 开始安装向导3、点击<下一步>,继续安装。 图5-5 操作系统兼容性信息4、选择<新域的域控制器>,点击<下一步>。 图5-6 域控制类型 5、选择<在新林中的域>,点击<下一步>。

搭建radius服务器(全)

802.1X认证完整配置过程说明 802.1x认证的网络拓布结构如下图: 认证架构 1、当无线客户端在AP的覆盖区域内,就会发现以SSID标识出来的无线信号,从中可以看到SSID名称和加密类型,以便用户判断选择。 2、无线AP配置成只允许经过802.1X认证过的用户登录,当用户尝试连接时,AP会自动设置一条限制

通道,只让用户和RADIUS服务器通信,RADIUS服务器只接受信任的RADIUS客户端(这里可以理解为AP或者无线控制器),用户端会尝试使用802.1X,通过那条限制通道和RADIUS服务器进行认证。 3、RADIUS收到认证请求之后,首先会在AD中检查用户密码信息,如果通过密码确认,RADIUS会收集一些信息,来确认该用户是否有权限接入到无线网络中,包括用户组信息和访问策略的定义等来决定拒绝还是允许,RADIUS把这个决定传给radius客户端(在这里可以理解为AP或者无线控制器),如果是拒绝,那客户端将无法接入到无线网,如果允许,RADIUS还会把无线客户端的KEY传给RADIUS客户端,客户端和AP会使用这个KEY加密并解密他们之间的无线流量。 4、经过认证之后,AP会放开对该客户端的限制,让客户端能够自由访问网络上的资源,包括DHCP,获取权限之后客户端会向网络上广播他的DHCP请求,DHCP服务器会分配给他一个IP地址,该客户端即可正常通信。 我们的认证客户端采用无线客户端,无线接入点是用TP-LINK,服务器安装windows Server 2003 sp1;所以完整的配置方案应该对这三者都进行相关配置,思路是首先配置RADIUS server 端,其次是配置无线接入点,最后配置无线客户端,这三者的配置先后顺序是无所谓的。 配置如下: 配置RADIUS server步骤: 配置RADIUS server 的前提是要在服务器上安装Active Directory ,IAS(internet验证服务),IIS管理器(internet信息服务管理器),和证书颁发机构; 在AD和证书服务没有安装时,要先安装AD然后安装证书服务,如果此顺序反了,证书服务中的企业根证书服务则不能选择安装; 一:安装AD,IIS 安装见附件《AD安装图文教程》 二:安装IAS 1、添加删除程序—》添加删除windows组件

配置采用RADIUS协议进行认证

配置采用RADIUS协议进行认证、计费和授权示例 组网需求 如图1所示,用户通过RouterA访问网络,用户同处于huawei域。RouterB作为目的网络接入服务器。用户首先需要穿越RouterA和RouterB所在的网络,然后通过服务器的远端认证才能通过RouterB访问目的网络。在RouterB上的远端认证方式如下: ?用RADIUS服务器对接入用户进行认证、计费。 ?RADIUS服务器129.7.66.66/24作为主用认证服务器和计费服务器,RADIUS服务器129.7.66.67/24作为备用认证服务器和计费服务器,认证端口号缺省为1812,计费端口号缺省为1813。 图1 采用RADIUS协议对用户进行认证和计费组网图 配置思路 用如下的思路配置采用RADIUS协议对用户进行认证和计费。 1.配置RADIUS服务器模板。 2.配置认证方案、计费方案。 3.在域下应用RADIUS服务器模板、认证方案和计费方案。 数据准备 为完成此配置举例,需要准备如下数据: ?用户所属的域名 ?RADIUS服务器模板名 ?认证方案名、认证模式、计费方案名、计费模式 ?主用和备用RADIUS服务器的IP地址、认证端口号、计费端口号 ?RADIUS服务器密钥和重传次数 说明: 以下配置均在RouterB上进行。 操作步骤

1.配置接口的IP地址和路由,使用户和服务器之间路由可达。 2.配置RADIUS服务器模板 # 配置RADIUS服务器模板shiva。 system-view [Huawei] radius-server template shiva # 配置RADIUS主用认证服务器和计费服务器的IP地址、端口。 [Huawei-radius-shiva] radius-server authentication 129.7.66.66 1812 [Huawei-radius-shiva] radius-server accounting 129.7.66.66 1813 # 配置RADIUS备用认证服务器和计费服务器的IP地址、端口。 [Huawei-radius-shiva] radius-server authentication 129.7.66.67 1812 secondary [Huawei-radius-shiva] radius-server accounting 129.7.66.67 1813 secondary # 配置RADIUS服务器密钥、重传次数。 [Huawei-radius-shiva] radius-server shared-key cipher hello [Huawei-radius-shiva] radius-server retransmit 2 [Huawei-radius-shiva] quit 3.配置认证方案、计费方案 # 配置认证方案1,认证模式为RADIUS。 [Huawei] aaa [Huawei-aaa] authentication-scheme 1 [Huawei-aaa-authen-1] authentication-mode radius [Huawei-aaa-authen-1] quit # 配置计费方案1,计费模式为RADIUS。 [Huawei-aaa] accounting-scheme 1 [Huawei-aaa-accounting-1] accounting-mode radius [Huawei-aaa-accounting-1] quit 4.配置huawei域,在域下应用认证方案1、计费方案1、RADIUS模板shiva 5. [Huawei-aaa] domain huawei 6. [Huawei-aaa-domain-huawei] authentication-scheme 1 7. [Huawei-aaa-domain-huawei] accounting-scheme 1 [Huawei-aaa-domain-huawei] radius-server shiva 8.检查配置结果 在RouterB上执行命令display radius-server configuration template,可以观察到该RADIUS服务器模板的配置与要求一致。 display radius-server configuration template shiva -------------------------------------------------------------------- Server-template-name : shiva Protocol-version : standard Traffic-unit : B Shared-secret-key : 3MQ*TZ,O3KCQ=^Q`MAF4<1!! Timeout-interval(in second) : 5 Primary-authentication-server : 129.7.66.66;1812; LoopBack:NULL Primary-accounting-server : 129.7.66.66;1813; LoopBack:NULL

RADIUS(Remote Authentication Dial In User Service)简介及Lunix平台下构建RADIUS服务器设置步骤

RADIUS(Remote Authentication Dial In User Service)简介及Lunix平台下构建RADIUS服务器设置步骤 RADIUS:Remote Authentication Dial In User Service,远程用户拨号认证系统,由RFC2865,RFC2866定义,是目前应用最广泛的AAA(AAA=authentication、Authorization、Accounting,即认证、授权、计费)协议。 RADIUS协议最初是由Livingston公司提出的,原先的目的是为拨号用户进行认证和计费。后来经过多次改进,形成了一项通用的认证计费协议。创立于1966年Merit Network, Inc.是密执安大学的一家非营利公司,其业务是运行维护该校的网络互联MichNet。1987年,Merit在美国NSF(国家科学基金会)的招标中胜出,赢得了NSFnet (即Internet前身)的运营合同。因为NSFnet是基于IP的网络,而MichNet却基于专有网络协议,Merit面对着如何将MichNet的专有网络协议演变为IP协议,同时也要把MichNet上的大量拨号业务以及其相关专有协议移植到IP网络上来。 1991年,Merit决定招标拨号服务器供应商,几个月后,一家叫Livingston的公司提出了建议,冠名为RADIUS,并为此获得了合同。 1992年秋天,IETF的NASREQ工作组成立,随之提交了RADIUS 作为草案。很快,RADIUS成为事实上的网络接入标准,几乎所有的

网络接入服务器厂商均实现了该协议。 1997年,RADIUS RFC2039发表,随后是RFC2138,最新的RADIUS RFC2865发表于2000年6月。 RADIUS是一种C/S结构的协议,它的客户端最初就是NAS(Net Access Server)服务器,现在任何运行RADIUS客户端软件的计算机都可以成为RADIUS的客户端。RADIUS协议认证机制灵活,可以采用PAP、 CHAP或者Unix登录认证等多种方式。RADIUS是一种可扩展的协议,它进行的全部工作都是基于Attribute-Length-Value的向量进行的。RADIUS也支持厂商扩充厂家专有属性。 RADIUS的基本工作原理:用户接入NAS(Network Access Server),NAS向RADIUS服务器使用Access-Require数据包提交用户信息,包括用户名、密码等相关信息,其中用户密码是经过MD5加密的,双方使用共享密钥,这个密钥不经过网络传播;RADIUS服务器对用户名和密码的合法性进行检验,必要时可以提出一个Challenge,要求进一步对用户认证,也可以对NAS进行类似的认证;如果合法,给NAS返回Access-Accept数据包,允许用户进行下一步工作,否则返回Access-Reject数据包,拒绝用户访问;如果允许访问,NAS向RADIUS服务器提出计费请求Account- Require,RADIUS 服务器响应Account-Accept,对用户的计费开始,同时用户可以进行自己的相关操作。

Radius协议

RADIUS主要用于对远程拨入的用户进行授权和认证。它可以仅使用单一的“数据库”对用户进行认证(效验用户名和口令)。它主要针对的远程登录类型有:SLIP、PPP、telnet和rlogin 等。 其主要特征有: 1.客户机/服务器(C/S)模式 一个网络接入服务器(以下简称NAS)作为RADIUS的客户机,它负责将用户信息传入RADIUS服务器,然后按照RADIUS服务器的不同的响应来采取相应动作。另外,RADIUS 服务器还可以充当别的RADIUS服务器或者其他种类认证服务器的代理客户。 2.网络安全(Network Security) NAS和RADIUS服务器之间的事务信息交流由两者共享的密钥进行加密,并且这些信息不会在两者之间泄漏出去。 3.灵活认证机制(Flexible Authentication Mechanisms) RADIUS服务器支持多种认证机制。它可以验证来自PPP、PAP、CHAP和UNIX系统登录的用户信息的有效性。 4.协议可扩展性(Extensible Protocol) 所有的认证协议都是基于“属性-长度-属性值”3元素而组成的。所以协议是扩展起来非常方便。在目前很多比较高版本的Linux中,它们都把RADIUS的安装程序包含在系统源码中。这样使得我们可以很容易地通过免费的Linux系统学习RADIUS授权、认证的原理和应用。 RADIUS协议原理 要弄清楚RADIUS协议为何能实现授权和认证,我们必须应该从四个方面去认识RADIUS 协议:协议基本原理、数据包结构、数据包类型、协议属性。下面我们就来详细地介绍这些内容。 协议基本原理 NAS提供给用户的服务可能有很多种。比如,使用telnet时,用户提供用户名和口令信息,而使用PPP时,则是用户发送带有认证信息的数据包。 NAS一旦得到这些信息,就制造并且发送一个“Access-Request”数据包给RADIUS服务器,其中就包含了用户名、口令(基于MD5加密)、NAS的ID号和用户访问的端口号。

Radius与IAS的运作流程

Radius与IAS的运作流程 Radius是一种C/S的通讯协议,它使Radius客户端可以将验证用户身份、授权与记帐等工作转给Radius服务器来运行;或是转给Radius代理服务器,然后再由它转给另外一台Radius服务器。 您可以利用Windows Server 2003内的IAS,来架设Radius服务器或是Radius 代理服务器。 IAS可以让Windows Server 2003扮演Radius服务器,而其Radius客户端可以是远程访问服务器、VPN服务器或无线接入点等存取服务器。 IAS服务器扮演Radius服务器的角色,它可以替Radius客户端来运行验证用户身份、授权与记帐的工作。其运作流程如下: 1、远程访问服务器、VPN服务器或无线接入点等存取服务器接收来自 客户端的连接请求。 2、存取服务器会转而请求IAS RADIUS服务器来运行验证、授权与记 帐的工作。 3、IAS RADIUS服务器会检查用户的帐户名称与密码是否正确,并且 利用用户的帐户设置与远程访问策略内的设置,来决定用户是否有 权限来连接。 4、若用户有权限来连接,它会通知存取服务器,再由存取服务器让客 户端来开始连接。同时存取服务器也会通知IAS RADIUS服务器将 此次的连接请求记录下来。 IAS RADIUS服务器在检查用户身份与帐户设置时,它可以从以下所列的用户帐户数据库中得到这些信息: IAS RADIUS服务器的本机安全性,也就是SAM Windows nt 4 的域用户帐户数据库 Active Directory数据库 后两者要求IAS RADIUS服务器必须是域的成员,此时它所读取的帐户可以是所属域内的帐户,或是有双向信任关系的其它域内的帐户。 若未将验证、授权与记帐的工作转给RADIUS服务器,则每一台远程访问服务器或VPN服务器必须自己运行这些工作,因此每一台远程访问服务器或VPN服务器都需要有自己的远程访问策略与远程访问记录文件,如此将增加维护这些信息的负担。 在将验证、授权与记帐的工作转给RADIUS服务器后,您只需要维护位于RADIUS服务器内的远程访问策略与远程访问记录文件即可,此时的远程访问服务器或VPN服务器都不再需要远程访问策略与远程访问记录文件了。 安装IAS服务器 控制面板---添加/删除windows组件---网络服务---Internet验证服务让IAS服务器读取Active Directory内的用户帐户 如果用户是利用Active Directory内的用户帐户来连接,则IAS服务器必须向DC 询问用户帐户的信息,才能够决定用户是否有权限连接,不过您必须事先将IAS 服务器注册到Active Directory内。请先到IAS服务器上,利用具有域系统管理员身份的帐户来登录,然后选择以下几种注册方法之一: 利用“Internet验证服务”主控制窗口

测试RADIUS服务器

测试RADIUS服务器 作者:david来源:cnw https://www.doczj.com/doc/667391409.html, 2004-08-27 11:09:09 过去RADIUS更多地用在远程拨号接入这样的领域,但是在未来的企业网络中,RADIUS将更多被使用在以太网接入、无线局域网接入等领域。选择好的RADIUS将变得更重要。 美国的一家实验室决定评估企业RADIUS服务器,要求参评的产品不仅支持Microsoft Active Directory和RSA Security SecureID,而且还可以连接多种客户机,即NAS(网络接入服务器)设备,如拨号服务器、VPN集中器、WLAN接入点和防火墙。Cisco、Funk Software、IEA Software、Interlink Networks和Lucent的产品参加了这个测试。 衡量RADIUS的标准 RADIUS的性能是用户该关注的地方,比如,能接受多少请求以及能处理多少事务。同时,遵循标准,并具备良好的与接入控制设备的互操作性是RADIUS服务器好坏的重要指标。从测试的情况看,所有的产品都符合RADIUS规范和EAP(扩展认证协议)定义。不过,为了发现所支持的认证机制和后端认证存储的种类,测试者进行了更深入的研究。在互操作性方面,他们测试了这些服务器与多种RADIUS 客户机(包括接入点、VPN和拨号服务器)一起工作时的情况。他们根据创建用户和工作组配置文件的难易程度以及配置用户专有属性的灵活性,对参评产品的配置管理评分。安全性也是关注的重点。测

试者希望了解服务器在和NAS设备通信的过程中是如何保证安全和完整性的。 另外RADIUS是否能够让管理员实现诸多管理安全特性和策略是非常重要的一环。为此测试者评估了能够通过RADIUS服务器执行的不同规则,特别将重点放在按用户、用户组或角色实施的时段限制上。测试者还留意了产品是否支持强制时间配额。这种功能使网络管理员可以限制用户或用户组能够通过RADIUS服务器接入网络多长时间。 大多数参测的RADIUS服务器都通过ODBC或JDBC,利用SQL Server 数据库保存和访问用户配置文件。数据库集成对于处理大量为账户和事件日志采集的数据至关重要。假如网络管理员不能分析和报告数据的话,这些数据没有任何意义,为此他们测试了用于显示信息、显示信息的动态性以及利用信息可执行什么任务的工具。 除了上述基本特性外,测试者还对RADIUS服务器的功能进行了测试。他们测评了服务器主动与网络管理系统合作的情况。例如,他们评估了实现电子邮件报警的复杂性。实现电子邮件报警在Cisco和IEA Software的服务器中十分流畅,但在一些其他设备上就没有那么轻松。测试者还评估了证书请求工具。请求工具可将签名的证书授予发出请求的RADIUS服务器。具有VoIP账户功能的产品很少,只有Cisco和IEA Software的产品才提供。

radius协议书范本

一、概述: RADIUS协议包括RADIUS AUTHENTICATION PROTOCOL 和RADIUS ACCOUNTING PROTOCOL 两部分。RADIUS AUTHENTICATION PROTOCOL 完成拨号用户的认证工作,而RADIUS ACCOUNTING PROTOCOL 则完成用户服务的计费任务。 事实上,为了更好地向分散的众多接入用户提供互联网服务,必须对接入服务提供有效的管理支持。它需要对安全,配置,计费等提供支持,这可以通过对一个用户数据库的管理来达到,这个数据库包括认证信息,及细化的服务配置信息和计费信息。通常这个数据库的维护管理,对用户信息的核实及配置有一个单独的实体完成,这个实体就是RADIUS server。由于这些管理信息的众多与繁杂,通常RADIUS server放在一个独立的计算机上,而为了向RADIUS server取得服务,必须首先构建一个RADIUS client,通常RADIUS client 位于Network Access Server(NAS,网络接入设备)上。 下图示例了这些实体之间的关系: 二、RADIUS认证协议格式: 1、RADIUS AUTHENTICATION PROTOCOL 包格式 下面是协议报文格式: CODE域可以包括如下一些值; 1Access-Request 2Access-Accept

3Access-Reject 4Accounting-Request 5Accounting-Response 11Access-Challenge 12Status-Server 13Status-Client 255Reserved 其中,CODE 1,2,3,11值为RADIUS AUTHENTICATION PROTOCOL使用,而CODE 4,5值为RADIUS ACCOUNTING PROTOCOL使用。其余未用或保留。CODE 占一个字节 IDENTIFIER占一个字节,用于匹配请求和应答。 LENGTH 占二个字节,是整个数据报的长度,包括CODE+IDENTIFIER+LENGTH +AUTHENTICATOR+A TTRIBUTES的所有长度。 AUTHENTICATOR 是16字节的随机数,高位在先,此域用于认证答复和加密口令字。 ATTRIBUTES是若干属性状态的集合,其长度是不确定的,不同的CODE值可以跟随不同的属性值。下表是一个总结:

如何在Windows2003_Radius服务器搭建详解

如何Windows2003 Radius服务器搭建 1 目的 为测试提供指导,加快测试效率,并为WLAN产品积累相应的测试案例。 2 范围 1)适用于802.1x Radius测试。 4 术语和定义 AP Access Point,接入点 AC Access Controller,接入控制器 WLAN Wireless Local Access Network,无线局域网 VLANVirtual Local Area Network,虚拟局域网

5 windows2003 Radius服务器安装步骤 5.1 IIS安装 在【控制面板->添加或删除程序->添加/删除Windows组件->应用程序服务器】中勾选“https://www.doczj.com/doc/667391409.html,”,“Internet信息服务(IIS)”,“启用网络COM+访问”。点击<确定>,插入Windows2003安装盘,点击<下一步>,完成IIS安装。 图5-1 IIS安装选项 5.2 IAS(Internet验证服务)安装 在【控制面板->添加或删除程序->添加/删除Windows组件->网络服务】中勾选“Internet 验证服务”,“域名系统(DNS)”。点击<确定>,插入Windows2003安装盘,点击<下一步>,完成IAS安装。 图5-2 IAS安装选项 5.3 Active Directory安装 1、在运行栏输入“dcpromo”,进入AD安装向导。 图5-3 输入运行命令

2、在安装向导页面点击<下一步>。 图5-4 开始安装向导3、点击<下一步>,继续安装。 图5-5 操作系统兼容性信息4、选择<新域的域控制器>,点击<下一步>。 图5-6 域控制类型 5、选择<在新林中的域>,点击<下一步>。

radius协议详解

竭诚为您提供优质文档/双击可除 radius协议详解 篇一:Radius远程用户拨号认证系统详解 Radius远程用户拨号认证系统 Radius:Remoteauthenticationdialinuserservice,远程用户拨号认证系统由RFc2865,RFc2866定义,是目前应用最广泛的(aaa是authentication(认证)、authorization(授权)和accounting(计费)的简称)基本概念 aaaauthentication、authorization、accounting 验证、授权、记费 pappasswordauthenticationprotocol口令验证协议 chapchallenge-handshakeauthenticationprotocol盘问握手验证协议 nasnetworkaccessserver网络接入服务器 RadiusRemoteauthenticationdialinuserservice 远程验证拨入用户服务(拨入用户的远程验证服务) tcptransmissioncontrolprotocol传输控制协议 udpuserdatagramprotocol用户数据报协议

aaa实现途径 1.在网络接入服务器nas端:在nas端进行认证、授权和计费; 2.通过协议进行远程的认证、授权和记帐。实现aaa的协议有Radius Radius是Remoteauthenticationdialinuserservice的简称,ma5200、isn8850和md5500上目前使用Radius完成对ppp用户的认证、授权和计费。 当用户想要通过某个网络(如电话网)与nas建立连接从而获得访问其他网络的权利时,nas可以选择在nas上进行本地认证计费,或把用户信息传递给Radius服务器,由Radius进行认证计费;Radius协议规定了nas与Radius服务器之间如何传递用户信息和记账信息;Radius服务器负责接收用户的连接请求,完成验证,并把传递服务给用户所需的配置信息返回给nas。 本地(nas)验证——pap方式 pap(passwordauthenticationprotocol)是密码验证协议的简称,是认证协议的一种。用户以明文的形式把用户名和他的密码传递给nas,nas根据用户名在nas端查找本地数据库,如果存在相同的用户名和密码表明验证通过,否则表明验证未通过。 本地(nas)验证——chap方式

Cisco RADIUS认证系统

RADIUS是一种分布的,客户端/服务器系统,实现安全网络,反对未经验证的访问。在cisco实施中,RADIUS客户端运行在cisco 路由器上上,发送认证请求到中心RADIUS服务器,服务器上包含了所有用户认证和网络服务访问的信息。 RADIUS是一种完全开放的协议,分布源码格式,这样,任何安全系统和厂商都可以用。 cisco支持在其AAA安全范例中支持RADIUS。RADIUS可以和在其它AAA安全协议共用,如TACACS+,Kerberos,以及本地用户名查找。 CISCO所有的平台都支持RADIUS,但是RADIUS支持的特性只能运行在cisco指定的平台上。 RADIUS协议已经被广泛实施在各种各样的需要高级别安全且需要网络远程访问的网络环境。 在以下安全访问环境需要使用RADIUS: +当多厂商访问服务器网络,都支持RADIUS。例如,几个不同厂家的访问服务器只使用基于RADIUS的安全数据库,在基于ip的网络有多 个厂商的访问服务器,通过RADIUS服务器来验证拨号用户,进而定制使用kerberos安全系统。 +当某应用程序支持RADIUS协议守护网络安全环境,就像在一个使用smart card门禁控制系统的那样的访问环境。某个案例中,RADIUS

被用在Enigma安全卡来验证用户和准予网络资源使用权限。 +当网络已经使用了RADIUS。你可以添加具有RADIUS支持的cisco路由器到你的网络中,这个可以成为你想过渡到TACACS+服务器的 第一步。 +当网络中一个用户仅能访问一种服务。使用RADIUS,你可以控制用户访问单个主机,进行单个服务,如telnet,或者单个协议,如ppp。 例如当一个用户登录进来,RADIUS授权这个用户只能以10.2.3.4这个地址运行ppp,而且还得和ACL相匹配。 +当网络需要资源记账。你可以使用RADIUS记账,独立于RADIUS 认证和授权,RADIUS记账功能允许数据服务始与终,记录会话之中所使 用的标志资源(如,时间,包,字节,等等)。ISP可能使用免费版本的基于RADIUS访问控制和记账软件来进行特定安全和金额统计。+当网络希望支持预认证。在你的网络中使用RADIUS服务,你可以配置AAA预认证和设定预认证profiles。预认证服务的开启提供更好的管理端口来使用它们已经存在的RADIUS解决方案,更优化的管理使用、共享资源,进而提供不懂服务级别的协定。RADIUS不适合以下网络安全情形: ~多协议访问环境,Radius不支持以下协议: *AppleTalk Remote Access (ARA)苹果远程访问。

浅谈Radius服务器的功能原理及交互过程

浅谈Radius服务器的功能原理及交互过程 RADIUS是一个英文缩写,其具体含义是Remote Authentication Dial In User Service,中文意思是“远端用户拨入验证服务”,是一个AAA协议,即集authentication(认证)、authorization(授权)、accounting(计费)三种服务于一体的一种网络传输协议。文章将从Radius服务器的功能原理及交互过程对其进行介绍。 标签:协议;UDP;NAS;客户端 Radius是一种C/S结构的可扩展协议,它是以Attribute-Length-Value向量进行工作的,其协议认证机制也非常灵活,当用户提供用户名和原始密码时,Radius 可支持点对点协议PPP、密码认证协议PAP、提问握手认证协议CHAP及其他认证机制。NAS设备可以是它的客户端,任何运行该软件的计算机都可以成为Radius的客户端。目前,该服务器应用于各类宽带上网业务。 1 Radius服务器的功能原理 (1)宽带用户拨号上网时接入NAS,NAS设备使用“访问请求”数据包向Radius服务器提交用户的请求信息,该信息包括用户名、密码等。用户的密码会经过MD5加密,双方会使用不会通过网络进行传播的“共享密钥”。同时,Radius 服务器会对用户名和密码的合法性进行检验,提出质疑时,就会要求进一步对用户、对NAS设备进行验证。如果验证不通过,就会返回“拒绝访问”的数据包,以此来拒绝用户的访问;验证合法,就会给NAS设备返回“接受访问”的数据包,即用户通过了认证。允许访问时,NAS设备会向Radius服务器提出“计费请求”,Radius服务器响应“接受计费”的请求,开始对用户计费,用户从此刻开始了上网。 (2)“重传机制”是Radius协议的特色功能之一。一般情况下,Radius服务器分为主备用设备,这项功能是为NAS设备向主用Radius服务器提交请求却没有收到返回信息时而准备的,备用的Radius服务器会进行重传,如果备用Radius 服务器的密钥和主用Radius服务器的密钥不相同时,是需要重新进行认证的。NAS设备进行重传的时候,对于有多个备用Radius服务器的网络,一般采用轮询的方法。 (3)NAS设备和Radius服务器之间的通信协议是“UDP协议”,Radius服务器有1812和1813端口,其中1812端口是认证端口,1813端口是计费端口。因为NAS设备和Radius服务器大多数是在同一个局域网中,采用UDP协议进行通信则更加快捷方便,而且无连接的UDP协议会减轻Radius服务器的压力,增加安全性。 (4)漫游和代理也是Radius服务器的功能之一。“漫游”功能是代理的一个具体实现,作为Radius服务器的代理,负责转发Radius认证和计费的数据包,这样用户可以通过本来和其无关的Radius服务器进行认证,即用户可以在非归

相关主题
文本预览
相关文档 最新文档