无线局域网中RADIUS协议原理与实现

网络 无线技术
RADIUS协议的应用范围很广,在移动、数据、智能网等业务的认证、计费系统中都有所应用。无线局域网的802.1X认证框架中,在认证端也建议使用RADIUS协议。本文将论述RADIUS协议的原理,并探讨它在WLAN中的应用及实现方案。

无线局域网的发展已经日渐成熟了,但是对于无线网络技术中的RADIUS协议,我们很多人并不了解它的工作原理,这里就为我们介绍一下。

1 引言

远程认证拨号用户服务协议(Remote Authentication Dial In User Service, RADIUS)最初是由Livingston公司提出的一个为拨号用户提供认证和计费的协议。后经多次改进,逐渐成为一项通用的网络认证、计费协议,并定义于IETF提交的RFC2865和RFC2866文件中。RADIUS协议以Client/Server方式工作,客户端为网络接入服务器(NAS),它向RADIUS服务器提交认证、计费等信息,RADIUS服务器处理信息并将结果返回给 NAS。

RADIUS协议的应用范围很广,在移动、数据、智能网等业务的认证、计费系统中都有所应用。无线局域网的802.1X认证框架中,在认证端也建议使用RADIUS协议。

本文将论述RADIUS协议的原理,并探讨它在WLAN中的应用及实现方案。

2 RADIUS协议

2.1  WLAN网络模型

实际商用的无线局域网,可以用局域网交换机来实现802.1X认证协议中的端口控制功能。为保证网络的安全性,在无线局域网的出口和认证端应加上防火墙。RADIUS服务器和数据库还可以采取主、备结构,以保证网络的健壮性。

网络模型如下图所示:

图1  无线局域网网络模型

无线局域网的认证端由RADIUS服务器、网络接入服务器(NAS)和数据库组成。其中:

NAS:作为RADIUS服务器的客户端,向RADIUS服务器转交用户的认证信息。并在用户通过认证之后,向RADIUS服务器发送计费信息。

RADIUS服务器:作为认证系统的中心服务器,它与NAS、数据库相连,它接受来自NAS提交的信息,对数据库进行相应的操作,并把处理结果返回给NAS。

数据库:用于保存所有的用户信息、计费信息和其他信息。用户信息由网络管理员添加至数据库中;计费信息来自于RADIUS服务器;其他信息包括日志信息等。

2.2  RADIUS的数据包结构

RADIUS是应用层的协议,在传输层它的报文被封装在UDP的报文中,进而封装进IP包。 RADIUS认证使用1812端口,计费使用1813端口。

以太网上的RADIUS封装后的包结构:

RADIUS数据包分为5个部分:

(1) Code:1个字节,用于区分RADIUS包的类型:常用类型有:

接入请求(Access-Request),Code=1;接入应答(Access-Accept),Code=2;接入拒绝(Access- Reject),Code=3;计费请求(Accounting-Request),Code=4等。

(2)Identifier:一个字节,用于请求和应答包的匹配。

(3)Length:两个字节,表示RADIUS数据区(包括Code, Identifier, Length, Authenticator, Attributes)的长度,单位是字节,最小为20,***为4096。

(4)Authenticator:16个字节,用于验证服务器端的应答,另外还用于用户口令的加密。RADIUS服务器和NAS的共享密钥(Shared Secret)与请求认证码(Request Authenticator)和应答认证码(Response Authenticator),共同支持发、收报文的完整性和认证。另外,用户密码不能在NAS和RADIUS 服务器之间用明文传输,而一般使用共享密钥(Shared Secret)和认证码(Authenticator)通过MD5加密算法进行加密隐藏。

(***ttributes:不定长度,最小可为0个字节,描述RADIUS协议的属性,如用户名、口令、IP地址等信息都是存放在本数据段。

2.3 RADIUS的认证、计费过程

如图1网络模型所示:

(1)申请者登录网络时,NAS会有一个客户定义的Login提示符要求申请者输入用户信息(用户名和口令),申请者输入相关的认证信息后,等待认证结果。

(2)NAS在得到用户信息后,将根据RADIUS的数据包格式,向RADIUS服务器发出“接入请求”(Access-Request)包。包中一般包括以下RADIUS属性值:用户名、用户口令、访问服务器的ID、访问端口的ID。

(3)当RADIUS服务器收到“接入请求”包后,首先验证NAS的共享密码与RADIUS服务器中预先设定的是否一致,以确认是所属的 RADIUS客户端。在查验了包的正确性之后,RADIUS服务器会依据包中的用户名在用户数据库中查询是否有此用户记录。如果用户信息不符合,就向 NAS发出“接入拒绝”(Access-Reject)包。NAS在收到拒绝包后,会立即停止用户连接端口的服务要求,用户被强制退出。

 

责任编辑:chenqingxiang 来源: IT实验室
相关推荐

2010-05-28 16:16:10

2009-07-27 14:32:52

2011-08-24 11:00:12

无线局域网无线网络

2009-12-23 17:29:45

2010-07-02 11:55:10

DHCP协议

2010-09-02 09:07:53

2010-09-15 14:12:18

无线路由设置

2010-07-01 15:33:16

局域网协议

2011-08-17 14:12:18

无线局域网

2010-09-27 09:12:00

2018-11-16 14:35:04

无线网络局域网AP

2011-08-17 14:12:15

无线局域网

2009-06-29 14:11:00

无线网络协议

2010-09-01 15:07:48

无线局域网

2010-09-02 08:47:22

无线局域网蜂窝覆盖

2010-04-07 14:33:35

无线局域网基础

2010-04-08 18:12:39

无线局域网传输

2010-09-27 10:00:18

无线局域网

2010-09-16 13:02:23

2010-10-14 10:54:09

企业无线局域网
点赞
收藏

51CTO技术栈公众号