产品
产品中心
< 返回主菜单
产品

交换机

交换机所有产品
< 返回产品
交换机
查看交换机首页 >

无线

无线所有产品
< 返回产品
无线
查看无线首页 >

云桌面

云桌面产品方案中心
< 返回产品
云桌面
查看云桌面首页 >

安全

安全所有产品
< 返回产品
安全
查看安全首页 >
产品中心首页 >
行业
行业中心
< 返回主菜单
行业
行业中心首页 >

RADIUS协议原理及应用

介绍RADIUS协议原理和常见的应用场景

  • 发布时间:2022-05-12

  • 点击量:

  • 点赞:

分享至

我想评论

1 RADIUS协议原理及应用
1.1   RADIUS协议概述
1987年,Merit Network, Inc.公司从美国科学基金会获得了NSFnet(Internet前身)的运营权。Merit需要将原先运行在专有网络协议上的大量拨号业务移植到基于IP网络的NSFnet上。通过招标,一家名为Livingston的公司为Merit提供了一套方案,并将其命名为RADIUS(Remote Authentication Dial-In User Service,远程认证拨号用户服务)。RADIUS协议最初用于拨号用户的认证和计费,在经过多次修改之后,成为事实上的网络接入标准。
RADIUS协议是基于UDP的应用层协议,其符合AAA标准,同时具有方便部署、网络传输安全、协议易于扩展、支持多种认证机制等优点,在普通电话上网、ADSL上网、小区宽带上网、IP电话等业务得到了广泛应用。

1.2   RADIUS协议与AAA
1.2.1  AAA介绍
AAA(Authentication Authorization and Accounting,认证、授权和记账)是一种管理网络安全的机制,可以为接入网络的用户提供认证、授权和记账(计费)三种基本服务,具体内容如下:
●    认证服务:在用户访问网络前对其身份进行识别,用于验证用户是否具有访问权。
●    授权服务:对用户权限进行分类,为不同用户提供不同的访问权限。
●    记账服务:记录用户使用网络资源的情况,统计的数据可用于进行分析、计费等。
图1-1    AAA基本网络结构图

 

如上图所示:AAA基本网络结构由Host(用户)、NAS(Network Access Server,网络接入设备)和AAA server(远程服务器)组成。
(1)    用户向NAS发起AAA申请,NAS收到AAA申请后,将其发送给AAA server进行处理。
(2)    AAA server处理后将结果返回给NAS。NAS根据处理结果为Host提供相应的AAA服务。
1.2.2  RADIUS与AAA的关系
AAA作为一种安全机制,可以通过不同的协议来实现。
RADIUS是一种基于UDP的应用层协议,支持认证、授权和记账功能,协议简单、灵活、可拓展性强,是一种流行的AAA实现方案。
图1-2    RADIUS协议部署示意图

 

如上图所示,在NAS上部署RADIUS client协议,在AAA server上部署RADIUS server协议,即可用RADIUS协议实现AAA服务。
1.3   RADIUS协议特性
1.     C/S模型
RADIUS协议基于C/S(Client/Server)模式,分为RADIUS客户端和RADIUS服务端。
RADIUS客户端协议部署在接入设备上,将用户的请求传递给RADIUS服务端,并对服务器端的处理结果作出响应。
RADIUS服务端协议部署在服务器上,用于响应RADIUS客户端的请求。
2.     网络安全
RADIUS客户端和服务器之间传输的用户密码都经过加密,且用于加密的共享密钥不经过网络传输,避免用户密码在经过不安全的网络环境时被监听窃取。
3.     灵活的认证机制
RADIUS服务器支持多种用户认证方法。
用户提供用户名和用户密码后,RADIUS服务器支持使用PAP、CHAP、UNIX登录和其他认证机制。
4.     协议可扩展
RADIUS具有良好的扩展性。
RADIUS报文通过可变长度的Attributes字段来携带认证、授权和记账信息。Attributes字段中携带一连串的TLV(Type、Length、Value)三元组属性信息。
若要新增全新的属性,则直接在Attributes字段中增加TLV三元组即可,不会对原有的协议造成干扰。
1.4   RADIUS报文与协议交互过程
1.4.1  RADIUS协议报文
图1-3    RADIUS报文结构图

 

表1-1 RADIUS报文字段含义
字段 长度 含义 说明

Code

1字节

标识报文类型

常用报文类型对应数值和含义如下:

1:Access-Request,认证请求报文

2:Access-Accept,认证接受报文

3:Access-Reject,认证拒绝报文

4:Accounting-Request,记账请求报文

5:Accounting-Response,记账应答报文

11:Access-Challenge,认证质询报文

Identifier

1字节

匹配请求和响应报文

同一类型的请求报文和响应报文的Identifier值相同

Length

2字节

RADIUS报文的长度

值为Code、Identifier、Length、Authenticator、Attributes五个字段长度之和

若实际收到的报文长度大于Length值,则超过Length值的部分内容将被作为填充值忽略掉;若实际收到的报文长度小于Length值,则丢弃该报文

Authenticator

16字节

验证报文和

用户密码加解密

Attributes

变长

携带认证、授权和记账信息

通常包含多个属性,属性采用TLV(Type、Length、Value)三元组结构表示

 

1.4.2  RADIUS协议交互过程
图1-4    RADIUS认证、授权和记账流程图

 

●    RADIUS的认证和授权流程
a     用户输入用户名、密码等身份信息,并将其发送给RADIUS客户端。
b     RADIUS客户端接收用户的用户名、密码信息,并向RADIUS服务器发送认证请求报文。认证请求报文中的密码为加密形式。
c     RADIUS服务器收到认证请求后,验证用户名、密码信息是否合法。若合法则接受认证请求,并同时下发该用户的授权信息;若不合法,则拒绝该认证请求。
●    RADIUS的记账流程
d     若用户发起认证流程中,RADIUS服务器返回认证成功,则RADIUS客户端继续发送记账开始请求报文。
e     RADIUS服务器回应记账开始响应报文,开始记账。
f     若用户需要结束访问网络资源,则向RADIUS客户端申请断开连接。
g     RADIUS客户端发送记账结束请求报文。
h     RADIUS服务器返回记账结束响应报文,并停止记账。
i     用户断开连接,无法再访问网络资源。

1.5   RADIUS协议典型应用场景
RADIUS协议常见的一个场景是在办公网场景中结合802.1X认证为用户提供认证服务。
假设某公司存在几个办公区,员工在办公区内访问网络时需要受到权限管控。公司领导希望能够对不同级别的员工配发不同的权限,且同一员工在不同办公区办公时,其权限等级是一致的。
图1-5    办公网802.1X认证场景

 

如图2-5所示,在各个办公区的接入设备上配置802.1X认证,认证方法指定为RADIUS服务器。同时在RADIUS服务器为不同员工配置相应的账号和权限,即可管理员工的网络权限。
员工在访问网络时,接入设备会要求员工提供账号进行认证。账号的网络访问权限由RADIUS服务器配置指定。
使用RADIUS服务器认证有如下优点:
●    方便部署,账号统一管理,不易混乱。所有办公区的接入设备都可以指定同一个RADIUS服务器,接入设备不需要重复配置员工的账号,只需要在服务器上配置好员工账号后,即可在所有办公区内生效。同时,若有新增办公区时,只需要在对应的接入设备上指定原有的RADIUS服务器进行认证即可。
●    安全性。RADIUS数据传输经过加密,防止账号信息在经过公用网络时被监听窃取。
●    支持备用RADIUS服务器。支持使用多组RADIUS服务器来提供认证服务器,在某台服务器宕机时,可以自动切换为备用服务器,避免影响正常办公。

点赞

更多技术博文

任何需要,请联系我们

返回顶部

请选择服务项目
关闭咨询页
售前咨询 售前咨询
售前咨询
售后服务 售后服务
售后服务
意见反馈 意见反馈
意见反馈
更多联系方式