radius认证概述-程序员宅基地

技术标签: authorization  路由器  服务器  加密  数据库  网络安全  authentication  

1. AAA和Radius概述
  AAA是验证授权和记账Authentication,Authorization,and Accounting 的简称。它是运行于NAS上的客户端程序,它提供了一个用来对验证、授权和记账这三种安全功能进行配置的一致的框架。AAA的配置实际上是对网络安全的一种管理,这里的网络安全主要指访问控制,包括哪些用户可以访问网络服务器,具有访问权的用户可以得到哪些服务,如何对正在使用网络资源的用户进行记账。下面简单介绍一下验证, 授权,记账的作用。
  · 验证(Authentication): 验证用户是否可以获得访问权可以选择使用RADIUS协议
  · 授权(Authorization) : 授权用户可以使用哪些服务
  · 记账(Accounting) : 记录用户使用网络资源的情况
  · AAA的实现可采用RADIUS 协议RADIUS 是Remote Authentication Dial In User Service 的简称原来的初衷是用来管理使用串口和调制解调器的大量分散用户。现在已经远不止这些应用了

2.Radius应用介绍
  RADIUS业务复合典型的client/server模型。路由器或NAS 上运行的AAA程序对用户来讲为服务器端,对RADIUS服务器来讲是作为客户端。RADIUS通过建立一个唯一的用户数据库存储用户名用户的密码来进行验证; 存储传递给用户的服务类型以及相应的配置信息来完成授权。当用户上网时路由器决定对用户采用何那种验证方法。下面介绍两种用户与路由器之间(本地验证)的验证方法CHAP和PAP。
PAP ( Password Authentication Protocol ): 用户以明文的形式把用户名和他的密码传递给路由器,NAS根据用户名在NAS端查找本地数据库,如果存在相同的用户名和密码表明验证通过,否则表明验证未通过
CHAP Challenge Handshake Authentication Protocol:当用户请求上网时,路由器产生一个16字节的随机码给用户,用户端得到这个包后使用自己独用的设备或软件对传来的各域进行加密,生成一个response传给NAS, NAS根据用户名在NAS端查找本地数据库,得到和用户端进行加密所用的一样的密码。然后根据原来的16字节的随机码进行加密,将其结果与 Response作比较,如果相同表明验证通过,如果不相同表明验证失败。
  如果用户配置了RADIUS验证,而不是上面所采用的本地验证,过程略有不同。 * 在端口上采用PAP验证
  用户以明文的形式把用户名和他的密码传递给路由器,路由器把用户名和加密过的密码放到验证请求包的相应属性中,传递给RADIUS服务器,根据RADIUS服务器的返回结果来决定是否允许用户上网。
* 在端口上采用CHAP验证
  当用户请求上网时,路由器产生一个16字节的随机码给用户,用户端得到这个包后使用自己独有的设备或软件对传来的各域进行加密,生成一个 response传给NAS。 NAS把传回来的CHAP ID和Response分别作为用户名和密码,并把原来的16字节随机码传给RADIUS服务器,RADIU根据用户名在NAS端查找数据库,得到和用户端进行加密所用的一样的密码,然后根据传来的16字节的随机码进行加密,将其结果与传来的Password作比较,如果相同表明验证通过,如果不相同,表明验证失败

3.Radius协议简介
  RADIUS 协议的认证端口1812 计费端口1813。
  由于TCP是必须成功建立连接后才能进行数据传输的这种方式在有大量用户使用的情况下实时性不好RADIUS承载在UDP上所以RADIUS要有重传机制和备用服务器机制。
 
  RADIUS是一种C/S结构的协议,它的客户端最初就是NAS(Net Access Server)服务器,现在任何运行RADIUS客户端软件的计算机都可以成为RADIUS的客户端。RADIUS协议认证机制灵活,可以采用PAP、 CHAP或者Unix登录认证等多种方式。RADIUS是一种可扩展的协议,它进行的全部工作都是基于Attribute-Length-Value的向量进行的。RADIUS也支持厂商扩充厂家专有属性。
  RADIUS的基本工作原理。用户接入NAS,NAS向RADIUS服务器使用 Access-Require数据包提交用户信息,包括用户名、密码等相关信息,其中用户密码是经过MD5加密的,双方使用共享密钥,这个密钥不经过网络传播;RADIUS服务器对用户名和密码的合法性进行检验,必要时可以提出一个Challenge,要求进一步对用户认证,也可以对NAS进行类似的认证;如果合法,给NAS返回Access-Accept数据包,允许用户进行下一步工作,否则返回Access-Reject数据包,拒绝用户访问;如果允许访问,NAS向RADIUS服务器提出计费请求Account- Require,RADIUS服务器响应Account-Accept,对用户的计费开始,同时用户可以进行自己的相关操作。
  RADIUS还支持代理和漫游功能。简单地说,代理就是一台服务器,可以作为其他RADIUS服务器的代理,负责转发RADIUS认证和计费数据包。所谓漫游功能,就是代理的一个具体实现,这样可以让用户通过本来和其无关的RADIUS服务器进行认证,用户到非归属运营商所在地也可以得到服务,也可以实现虚拟运营。
  RADIUS服务器和NAS服务器通过UDP协议进行通信,RADIUS服务器的1812端口负责认证,1813端口负责计费工作。采用UDP的基本考虑是因为NAS和RADIUS服务器大多在同一个局域网中,使用UDP更加快捷方便。
  RADIUS协议还规定了重传机制。如果NAS向某个RADIUS服务器提交请求没有收到返回信息,那么可以要求备份RADIUS服务器重传。由于有多个备份RADIUS服务器,因此NAS进行重传的时候,可以采用轮询的方法。如果备份RADIUS服务器的密钥和以前RADIUS服务器的密钥不同,则需要重新进行认证。
  由于RADIUS协议简单明确,可扩充,因此得到了广泛应用,包括普通电话上网、ADSL上网、小区宽带上网、IP电话、 VPDN(Virtual Private Dialup Networks,基于拨号用户的虚拟专用拨号网业务)、移动电话预付费等业务。最近IEEE提出了802.1x标准,这是一种基于端口的标准,用于对无线网络的接入认证,在认证时也采用RADIUS协议。
  ★协议结构
  -------------------------------------------------
  8 bit| 16 bit | 32 bit
  -------------------------------------------------
  Code | Identifier | Length
  -------------------------------------------------
  Authenticator (16 bytes)
  -----------------------------------------------
  Code ― 信息类型如下所述:
  1、请求访问(Access-Request);
  2、接收访问(Access-Accept);
  3、拒绝访问(Access-Reject);
  4、计费请求(Accounting-Request);
  5、计费响应(Accounting-Response);
  11、挑战访问(Access-Challenge);
  12、服务器状况(Status-Server — Experimental);
  13、客户机状况(Status-Client — Experimental);
  255、预留(Reserved)
  Identifier ― 匹配请求和响应的标识符。
  Length ― 信息大小,包括头部。
  Authenticator ― 该字段用来识别 RADIUS 服务器和隐藏口令算法中的答复。
  2. radius 的基本消息交互流程
  radius 服务器对用户的认证过程通常需要利用nas 等设备的代理认证功能,radius 客户端和radius 服务器之间通过共享密钥认证相互间交互的消息,用户密码采用密文方式在网络上传输,增强了安全性。radius 协议合并了认证和授权过程,即响应报文中携带了授权信息。
  基本交互步骤如下:
  (1) 用户输入用户名和口令;
  (2) radius 客户端根据获取的用户名和口令,向radius 服务器发送认证请求包(access-request)。
  (3) radius 服务器将该用户信息与users 数据库信息进行对比分析,如果认证成功,则将用户的权限信息以认证响应包(access-accept)发送给radius 客户端;如果认证失败,则返回access-reject 响应包。
  (4) radius 客户端根据接收到的认证结果接入/拒绝用户。如果可以接入用户,则radius 客户端向radius 服务器发送计费开始请求包
  (accounting-request),status-type 取值为start;
  (5) radius 服务器返回计费开始响应包(accounting-response);
  (6) radius 客户端向radius 服务器发送计费停止请求包(accounting-request),status-type 取值为stop;
  (7) radius 服务器返回计费结束响应包(accounting-response)。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/zhrmghl/article/details/4052481

智能推荐

node.js+uniapp计算机毕业设计安卓英语学习app(程序+APP+LW)_基于uni-app实现的英语听说软件设计与研发-程序员宅基地

文章浏览阅读99次。该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程。欢迎交流项目运行环境配置:项目技术:Express框架 + Node.js+ Vue 等等组成,B/S模式 +Vscode管理+前后端分离等等。环境需要1.运行环境:最好是Nodejs最新版,我们在这个版本上开发的。其他版本理论上也可以。2.开发环境:Vscode或HbuilderX都可以。推荐HbuilderX;3.mysql环境:建议是用5.7版本均可。_基于uni-app实现的英语听说软件设计与研发

证件照换背景-----ps_ps登记照换背景-程序员宅基地

文章浏览阅读772次。ps 免冠照_ps登记照换背景

鼎信诺取数出错解决_jpeg processing error-程序员宅基地

文章浏览阅读2k次。今天在外部审计机构审计过程中,需要用鼎信诺审计软件取数,我的系统为用友u9,华为云。在云服务器点击运行取数工具时,弹出多个如图窗口。显示 Jpeg processing erro的错误 ,内容为failed to create temporary file。2) 属性窗口中【高级】-【环境变量】-找到temp路径,点编辑将其原始路径复制下来。3)、在资源管理器中,将复制的路径粘贴到地址栏,进入temp文件夹。1) 首先,进桌面-我的电脑-右键找属性。这样清除该路径文件后,程序已经能正常运行了。_jpeg processing error

【c语言习题】数据结构和变量(Day5-Day8随堂)-程序员宅基地

文章浏览阅读966次,点赞16次,收藏9次。本次内容包括:Day5-Day8随堂习题以及答案

Hive,regexp_extract用法--注意圆括号!!_regexp_extract提取括号-程序员宅基地

文章浏览阅读3.6k次,点赞2次,收藏7次。网上的博客很多说的一知半解,尝试很多次都报错......select regexp_extract('http://a.m.taobao.com/i41915173660.htm','i([0-9]+)',0), regexp_extract('http://a.m.taobao.com/i41915173660.htm','i([0-9]+)',1) ,regexp_e..._regexp_extract提取括号

SSM+Jsp+Mysql实现的OA管理系统_基于ssm+mysql的oa管理系统设计与实现-程序员宅基地

文章浏览阅读74次。基于Spring+SpringMVC+Mybatis实现的OA管理系统_基于ssm+mysql的oa管理系统设计与实现

随便推点

ae视频特效制作 -- After Effects 2024_ae2024-程序员宅基地

文章浏览阅读423次,点赞10次,收藏8次。同时,软件还提供了丰富的教程和资源,帮助用户快速掌握使用技巧和创意发挥。首先,After Effects 2024引入了全新的动态工作流程,支持更高分辨率的视频和更快的渲染速度,让用户可以更轻松地处理大规模的视觉项目。同时,软件还加强了合成和渲染功能,提供了灵活的合成设置和多种输出格式,让用户可以制作出更加复杂的视觉效果。其次,After Effects 2024还增加了新的颜色校正工具和智能背景移除功能,让用户可以更轻松地调整颜色、亮度和对比度等参数,突出主题元素,提高视觉效果的质量。_ae2024

EXT4文件系统学习(五)掉电数据损坏重启挂载失败并修复_ext4文件系统被损坏的可能原因-程序员宅基地

文章浏览阅读5.7k次。问题情况 500G机械硬盘使用过程中出现挂载失败的问题,查看是第二分区没有挂载,进行分析与排查;查看磁盘Disk /dev/sdb: 500.1 GB, 500107862016 bytes255 heads, 63 sectors/track, 60801 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytes..._ext4文件系统被损坏的可能原因

基于GA-BP遗传算法优化BP神经网络多维分类预测研究(Matlab代码实现)-程序员宅基地

文章浏览阅读328次,点赞9次,收藏7次。需要注意的是,该算法需要大量的计算资源和较长的训练时间,需要在合适的硬件设备和软件环境下进行。同时,算法的效果也受到数据质量和模型设计的影响,需要在实践中持续优化和改进。在研究中,需要收集并预处理相关的数据集,然后构建BP神经网络和GA-BP算法模型,在实验中进行参数调节和性能评估,最终得出结论和结果。文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。2. 生成初始种群,并通过遗传操作,如选择、交叉、变异等,对种群进行迭代优化,得到最优解;行百里者,半于九十。

电商技术揭秘十三:云计算在电商中的应用场景-程序员宅基地

文章浏览阅读956次,点赞26次,收藏22次。云计算在电商领域的应用场景十分丰富,不仅提升了电商企业的运营效率和服务质量,还推动了电商行业的创新发展。

使用 whistle 在 macOS 上进行抓包-程序员宅基地

文章浏览阅读914次。使用 whistle 在 macOS 上进行抓包_使用 whistle 在 macos 上进行抓包

Linux学习笔记-程序员宅基地

文章浏览阅读188次。Linux学习笔记

推荐文章

热门文章

相关标签