远端用户拨入验证服务

✍ dations ◷ 2025-10-15 07:34:11 #认证方法,互联网标准,网际协议,应用层协议

远程用户拨入验证服务(RADIUS, Remote Authentication Dial In User Service)是一个AAA(英语:AAA_protocol)协议,通常用于网络访问、或流动IP服务,适用于局域网及漫游服务。

RADIUS协议包括RADIUS验证协议(对应AAA的验证和授权)和RADIUS记账协议,分别定义于IETF RFC 2865和RFC 2866。

RADIUS协议是一种基于主从式架构的协议。RADIUS协议中的客户端是对用户(人或者计算机)提供网络连接服务的器材,对服务器提出验证和计费要求。服务器针对客户端的通过进行验证和计费给予应答。服务器只有针对客户端的请求进行应答,而无法反方向地对用户进行服务停止等的请求。

因特网连接服务中,拨号调用设备和宽带接入服务器(BAS、Broadband Access Server)等网络接入服务器(NAS、Network Access Server)即为RADIUS客户端。(虽然名字含有“服务器”,但从RADIUS协议的角度来看是客户端。)

无线LAN环境中的无线接取器和VLAN中的交换机等都是。

在内容提供的服务中,Web 服务器起到RADIUS客户端的作用。

在移动电话网络(例如LTE等)网络中,核心网节点作为RADIUS客户端,使用RADIUS的认证和记账功能。

RADIUS协议使用UDP协议承载。RADIUS协议自身不具备会话管理机制,UDP也缺乏相应机制,因此RADIUS的路径管理和传输可靠性需要由使用RADIUS协议的应用程序来实现。

客户端对服务器提出“RADIUS请求包”,服务器对客户端发送“RADIUS应答包”。

双方的数据包,头部分由20个 8位和“属性”组成。头部分包括类别码(Code)1个8位、识别码(Identifier)1个8位、数据包整体长度2个8位、验证码(Authenticator)16个8位。识别码根据客户端决定的需求而设定,服务器根据根据请求包的验证码生成应答包的验证码里,因为客户端需要在收到的应答包与之前发出的请求包匹配。客户端可以仅用累计数值编号来设置验证码,但验证码并不必然是序列号。验证码是为了证明无发送者伪装和篡改。属性部分包含任意个属性(AVP,Attribute Value Pair,字面上为属性值对)。属性采用TLV格式,即“类型-长度-值(英语:type-length-value)”格式。属性値对由1个8位的属性编号、1个8位的长度,以及属性的値组成。値的类型可以是4个8位的整数値、4个8位的IP地址、1 - 253个8位的文字符串等。

对于每个属性编号,每个属性値对里值的含义在RFC文件里均有规定,还可以通过给属性编号赋予新的定义来增加使用目的,RADIUS协议的灵活性所在也是其最大的特征。但是一般不推荐各个机器产商为各自目的独自给属性标号赋值。产商特有功能应做为属性编号26号(Vendor Specific)的值与产商编号一起加到数据里。属性编号 26 号的属性値对一般称为 VSA (Vendor Specific Attribute) 。厂家编号由IANA进行管理和赋予。

协议为了实现验证和计费,规定了各种相应的属性。为实现验证,用户名和密码各有属性编号。拨号上网使用PPP时针对PPP用的验证协议PAP、CHAP、EAP均备有各自的属性编号。为实现计费,有使用秒数、收发数据量等的属性编号。

RADIUS分组的最大长度,在RADIUS验证协议中是4096个8位、RADIUS计费协议中是4095个8位,这个差异据说并没有特殊含义,而是 RFC 当初的错字将错就错地沿用下来的缘故。

一个常见的RADIUS认证、计费协议的流程如下。

+------+                         +--------------+     +------------------+     +------------------+| 用戶 |                         | RADIUS客戶端 |     | RADIUS認證服務端 |     | RADIUS計費服務端 |+--+---+                         +------+-------+     +--------+---------+     +---------+--------+   | 用戶發起連接請求並提供用戶名、密碼 |                      |                         |   |----------------------------------->| 認證請求消息         |                         |   |                                    |--------------------->|                         |   |                                    | 認證接受/拒絕消息    |                         |   | 通知用戶認證結果                   |<---------------------|                         |   |<-----------------------------------|                                                |   |                                    |(若認證已被接受)                              |   |                                    |  計費請求(開始)消息                           |   |                                    |----------------------------------------------->|   |                                    | 計費響應消息                                   |   |                                    |<-----------------------------------------------|   |                                    |                                                |   |                            ................                                         |   |                            . 用戶使用服務 .                                         |   |                            ................                                         |   |                                    | (可選)                                       |   |                                    | 計費請求(中間)消息                           |   |                                    |----------------------------------------------->|   |                                    | 計費響應消息                                   |            |   |                                    |<-----------------------------------------------|   | 用戶請求斷開連接                   |                                                |   |----------------------------------->| 計費請求(結束)消息                           |   |                                    |----------------------------------------------->|   |                                    | 計費響應消息                                   |   | 通知用戶連接斷開                   |<-----------------------------------------------|   |<-----------------------------------|                                                |   |                                    |                                                |

共享密码

UDP与TCP不同,无法识别伪装送信者和数据篡改。因此仅靠通信对方的IP地址是不足以信任通信内容的。为了防止伪装和篡改,RADIUS客户端和服务器之间共享一个叫“共享密码(英语:shared secret)”的密钥字符串,将数据包的内容和共享密码得到的摘要信息配给验证符号和属性值。应该为每对 RADIUS客户端和服务器准备一个共享密码。针对一个RADIUS服务器只用一个密码而与所有RADIUS客户端都共享会造成安全上的重大隐患。另外,从安全的角度来说,共享密码的内容若被第三方泄露也是一大问题。

自身作为RADIUS服务器,而把实际的验证和计费处理委托其他RADIUS服务器的情况即为“RADIUS代理服务器”。也就是说本身既是RADIUS服务器也是RADIUS客户端,将需求“转送”。

可以通过判断用户名的字符串改变转送地址。比如用户名做成含有电子邮件地址“@”符号和域名的字符串,根据不同的域名部分字符串转送到其他RADIUS服务器上。这种技术广泛被利用于 ISP(互联网服务提供商)之间的漫游服务等。上述例子中用于判断转送目的类似域名的部分通常被称为 Realm。

RADIUS协议是一种AAA(英语:AAA_protocol)协议,但由于RADIUS协议本身创建于AAA模式之前,因此,RADIUS协议中并没有区分“验证”和“授权”,而是合为“验证”处理, 因此RADIUS客户端在实际操作中无法知道被拒绝的原因是由于密码错误还是因为没有权限。

IEEE 802.1X是以太网中一个控制可否使用局域网的一个协议。通过使用IEEE 802.1X和RADIUS协议,可以对仅通过RADIUS服务器验证的用户允许局域网服务。当然,为此需要配备IEEE 802.1X以及RADIUS协议双方能使用的无线接入点或VLAN开关。另外“802.1x”中的 X 一般为大写,这是因为小写x易被人误解其像数学中 x {\displaystyle x} 一样可代表任意参数。

IEEE802.1X和RADIUS协议均没有规定实际的验证步骤。实际的验证中通常使用 EAP-TLS、PEAP、EAP-TTLS 等 EAP上的验证步骤进行。为实现 EAP 验证的数据交换,用户终端和接入点或开关之间的以太网使用 IEEE 802.1X,接入点或开关与RADIUS服务器之间使用RADIUS协议进行中継。

EAP-TLS 对于基于TLS数字证书进行相互验证(为防止伪装服务提供者)这一点虽然很重要,但数字证书的管理和运用对于一般机构是一个很大的负担。PEAP 和 EAP-TTLS 的验证步骤是在创建以 TLS 加密的通讯线路后再进行密码信息的交换 。EAP-TLS 与 PEAP・EAP-TTLS 的对比可以参照比较是通过网页浏览器的TLS中利用数字证书进行相互验证还是 SSL 上的密码验证。

通过下述 RFC 文件定义:

相关

  • 数码印刷数码印刷是指从数字的图像直接印刷成各种媒体的方法。它通常指的是包括以桌面出版进行短版印刷的专业印刷和其他数字源使用大幅面以及高产量的激光或喷墨打印机打印。数字印
  • 大强子对撞器坐标:46°14′N 06°03′E / 46.233°N 6.050°E / 46.233; 6.050大型强子对撞机(英语:Large Hadron Collider,缩写:LHC)是一座位于瑞士日内瓦近郊欧洲核子研究组织的对撞型粒子加
  • 生活化道路生活化道路(英语:Living street)是指并非以汽车通行为主的道路。属于住宅区道路设计手法中的一种,该设计手法认为社区中的道路属于住在社区内的居民,应尽量避免汽车进入社区道路,
  • 新加坡总理新加坡总理 (马来语:Perdana Menteri Republik Singapura;英语:Prime Minister of Singapore;泰米尔语:சிங்கப்பூர் குடியரசின் பிரதமர், Ciṅkapp
  • 萨姆特萨姆特国家森林(英语:Sumter National Forest)是南卡罗来纳州境内的两座国家森林之一(另一座是弗朗西斯·马里恩国家森林),由美国国家森林局管理。萨姆特国家森林面积370,442英亩(1
  • 局内者们《局内者们》(韩语:내부자들;英语:),又译局内者们或局内人们,是2015年11月上映的一部韩国政治犯罪电影,由禹民镐(朝鲜语:우민호)执导,李炳宪、曹承佑和白润植主演。本片以不同人的角度,剖
  • 互动电视交互电视是一种创建在数字电视播放平台,具备观众和播放平台双向交流功能,是新型的电视传输方式,也常称为机顶盒电视、网络电视等。这种传输方式允许用户透过手中的遥控器与电视
  • 川崎市电川崎市电(日语:川崎市電/かわさきしでん  */?)是过去由川崎市交通局运行的有轨电车系统。川崎市电拥有一条路线,长6.7公里,轨距1,435毫米,全线位于现在川崎区内。川崎市电于1944
  • Android软件开发Android软件开发是指开发在Android上运行的应用程序的活动,以Java作为主要编程语言,并使用Android软件开发工具包。
  • 锇酸钾锇酸钾是一种无机化合物,化学式为K2,其中,锇为+6价。它是烯烃不对称二羟基化反应的催化剂,这种紫色固体是反磁性的。它溶于水时,形成粉色溶液,但溶于甲醇得到的却是蓝色的溶液。和