📄 中文rfc2865.txt
字号:
34 登录的LAT服务 Login-LAT-Service
35 登录的LAT节点 Login-LAT-Node
36 登录的LAT组 Login-LAT-Group
37 AppleTalk链路配置 Framed-AppleTalk-Link
38 AppleTalk网络配置 Framed-AppleTalk-Network
39 AppleTalk区域配置 Framed-AppleTalk-Zone
40-59 为记账保留 (reserved for accounting)
60 CHAP盘问 CHAP-Challenge
61 网络接入服务器端口类型 NAS-Port-Type
62 端口数限制 Port-Limit
63 登录的LAT端口 Login-LAT-Port
长度
长度域是一个字节,它指定了包括类型、长度和值域在内的属性长度。如果在接收到的接入请求中属性的长度是无效的,应该发送一个接入拒绝数据包。如果在接收到的接入允许、接入拒绝和接入盘问中属性的长度是无效的,该数据包必须处理为接入拒绝,或者直接丢弃。
值
值域可以为零或者多个字节,包括属性的详细信息。 值域的格式和长度由域的类型和长度决定。
应当注意的是,在RADIUS协议中没有任何数据类型是以NUL(十六进制数的00)结尾。特别是RADIUS中文本类型和字符串类型不是以NUL结尾的。属性有表明长度的长度域,所以不需要使用终止符。文本包含UTF-8编码的ISO10646 [7]字符,字符和字符串包含二进制数值。服务器间和服务器与客户机间必须能处理已嵌入的NUL。在用C语言处理字符串时,RADIUS应用者应当注意不可使用strcpy( )函数。
值域的格式是五个数据类型中的一个。注意文本类型是字符串类型的一个子集。
文本 包含UTF-8编码的ISO 10646 [7]字符的1到253个字节。零长度文本禁止发送,而是忽略整个属性。
字符串 包含二进制数值(值得范围是从十进制数的0到十进制数的255)的1到253个字节。零长度字符串禁止发送,而是忽略整个属性。
地址 32位二进制数值,最重要的字节排第一字节。
整数 32位无符号的二进制数值,最重要的字节排第一字节。
时间 32位无符号的二进制数值,最重要的字节排第一字节。UTC 1970年1月1日零时零分起。标准属性不使用这个数据类型,这个数据类型在这儿出现是因为在将来属性中有可能的使用到它。
5.1 用户名
描述
这个属性显示用户用来验证的姓名。如果存在的话,用户名必须通过接入请求数据包发送出去。
用户名也可以在接入允许数据包中发送,在这种情况下,客户端应该在会话中所有记账请求数据包中使用接入允许数据包中的用户名。如果接入允许包含服务类型(为Rlogin)和用户名属性,当执行Rlogin功能时,NAS可以使用已返回的用户名。
以下是用户名属性格式的总结。域的传输是从左向右。
0 1 2
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
| 类型 | 长度 | 字符串 ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
类型
1用于用户名
长度
大于或者等于3
字符串
字符串域是一个或多个字节。NAS可以限制用户名的最大长度,但是推荐处理能力至少因该是63个字节。
用户名形式可以是以下几种中的一个:
文本 仅包含UTF-8编码ISO 10646[7]字符。
网络接口标识符 网络接口标识符是在RFC2486中说明。
专用名称 一个用于公共关键认证系统的ASM.1形式的名字。
5.2 用户密码
描述
这个属性显示的是需要被验证的用户密码,或者是在接入盘问提示下的用户输入。它只能用在接入请求数据包中。
在传输时,密码是被隐藏起来的。首先在密码的末尾用nulls代替填补形成多个十六个字节的二进制数。单向MD5散列是通过一串字节流计算出的,该字节流由共享机密和跟随其后的请求鉴别码组成。这个值同密码的第一个16个字节段相异或,然后将异或结果放在用户密码属性字符串域中的第一组16个字节中。
如果密码长于16个字节,则第二次单向MD5散列对一串字节流进行计算,该字节流由共享机密和跟随其后的第一次异或结果组成。这个散列结果与密码的第二组16个字节段相异或,然后将异或结果放在用户密码属性字符串域中的第二组16个字节段中。
如果需要,这个计算过程可以重复。每一个异或结果被用于和共享机密一道生成下一个散列,再与下一个密码段相异或,但最大不超过128个字节。
这个计算方法是来自《网络安全》的109页到110页,作者是Kaufman,Perlman 和Speciner[9]。以下是这种方法更为精确的解释:
调用共享机密S和伪随机128位请求认证鉴别码RA。把密码按16个字节为一组划分为P1、P2等等,在最后一组的结尾处用用null填充以形成一个完整的16字节组。调用以加密的数据组c(1)、c(2)等,b1、b2等是我们将用到的中间值。
b1 = MD5(S + RA) c(1) = p1 异或 b1
b2 = MD5(S + c(1)) c(2) = p2 异或b2
. .
. .
. .
bi = MD5(S + c(i-1)) c(i) = pi 异或 bi
现在密码字符串包含c(1)+c(2)+...+c(i),其中“+”表示串联。
在接收时,这个过程被反过来,从而生成原始的密码。
以下是密码属性格式的总结。域的传输是从左向右。
0 1 2
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
| 类型 | 长度 | 字符串...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
类型
2用于用户密码。
长度
长度值在18到130之间。
字符串
字符串域的长度在16到128个字节之间。
5.3 CHAP密码
描述
这个属性表示PPP(点对点传输协议)的CHAP(盘问握手认证协议)用户在响应盘问时的响应值。此值只能用在接入请求数据包中。
如果出现在数据包中的CHAP盘问值是出现在CHAP盘问属性(60)中,其他情况可以在请求鉴别码域中找到。
以下是CHAP密码属性格式的总结。域的传输是从左向右。
0 1 2
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
| 类型 | 长度 | CHAP标识 | 字符串 ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
类型
3用来表示CHAP密码。
长度
19
CHAP标识
这个域是一个字节,包括来自用户CHAP响应的CHAP的标识符。
字符串
字符串域是十六个字节,包括来自用户的CHAP响应。
5.4 网络接口服务器IP地址
描述
这个属性指出了用户正在请求认证的NAS的IP地址,这个属性值对NAS来说在一台指定的RADIUS服务器的范围内应该是唯一的。NAS-IP地址属性只能在接入请求数据包中使用。或者是NAS-IP或者是NAS标识符必须有一个出现在接入请求数据包中。
注意,NAS-IP地址一定不能用来选择认证请求的共享机密。接入请求数据包中的源IP地址必须用来选择共享机密。
以下是网络接口服务器IP地址属性格式的总结。域的传输是从左向右。
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 类型 | 长度 | 地址
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
地址 (内容) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
类型
4用于NAS-IP地址。
长度
6
地址
地址域是4个字节。
5.5 NAS端口
描述
这个属性指出了正在认证用户的NAS物理端口号。NAS-IP端口号属性只能在接入请求数据包中使用。需要注意的是,这里使用的“端口”应当理解为与NAS的物理连接,不能理解为TCP或者UDP的端口号。如果NAS对它的端口进行区分,那么或者NAS-Port或者NAS-Port-Type或者是两者同时应该出现在接入请求数据包中。
以下是NAS端口属性格式的总结。域的传输是从左向右。
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 类型 | 长度 | 值
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
值 (内容) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
类型
5用于NAS-Port地址。
长度
6
值
这个值域是4个字节。
5.6 服务类型
描述
这个属性指出了用户请求的服务种类,或者是已提供给用户的服务类型。此属性可以在接入请求数据包和接入允许数据包中使用。作为NAS,它不必执行所有的服务类型,所以对于未知的和不支持的Service-Types,就像收到了接入拒绝那样处理。
以下是服务种类属性格式的总结。域的传输是从左向右。
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 类型 | 长度 | 值
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
值 (内容) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
类型
6用于Service-Type。
长度
6
值
值域是4个字节。
1 登录
2 配置
3 回叫登录
4 回叫配置
5 出网
6 管理
7 NAS提示
8 只认证
9 NAS回叫提示
10 拨叫检查
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -