⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rfc2882.txt

📁 很多RFC的中文文档
💻 TXT
📖 第 1 页 / 共 2 页
字号:


Network Working Group                                           D. Mitton
Request for Comments: 2882                                Nortel Networks
Category: Informational                                         July 2000

			网络接入服务器(NAS)需求:扩展RADIUS实践
                  (RFC2882-Network Access Servers Requirements:
                       Extended RADIUS Practices)

Status of this Memo

   This memo provides information for the Internet community.  It does
   not specify an Internet standard of any kind.  Distribution of this
   memo is unlimited.

Copyright Notice

   Copyright (C) The Internet Society (2000).  All Rights Reserved.

摘要

	该文档描述的是一些超出RFC2138、2139范围的在当前的一些NAS产品中的具体实现。
	这样做的目的是给出一些范例,说明处理和标准化这些类型的 ad-hoc函数(ad-hoc function)
	的必要性。因为这些特性需要一个匹配的服务器支持,因而配置个管理NAS和AAA服务器产品的
	相互操作的能力被严重的阻碍了。
	
   	记载在这儿的实践列举了在将来开发NAS时实现AAA所期望的一些功能。

1、 简介
	RADIUS工作组成立于1995年,专门文档化一些同名的协议,	并被特许在一定的范围之内
	支持拨号拨号接入终端服务器。遗憾的是现实中的NAS不再只是停留在小而简单的状态,而是
	以惊人的速度在发展。
	
	该文档列举了一些当前市场上的已经超出了RADIUS协议功能范围的实现。一些特性彻底的
	超出了协议。这些特性利用RADIUS协议的结构和格式,但是应用和语意已经超出了RFC文档。
	
	我通过一些手册了解这些功能的细节,并在投标规格书中对这些功能做出一些响应。当它
	们变成该领域的配置时,它们就成了实际上的标准。
	
	因为它们是在RFC文档范围之外被实现的,它们是厂商特有的,从而在产品的可互操作方面
	引入了困难。
	
1.1	非保证事项(Disclaimers)
	
	该文档中的数据是从公共数据来源以及厂商的文档收集来的。这些特性的实现以及以后的
	变化没有被确认。
	
	该文档是当前已经知道的一些实践的集合。其目的不是想标准化这些实践或者是使得该文档
	通用。如果文档中给出了一些细节的信息,请注意那不是该文档的目的。该文档的目的不是
	想将提到的一些功能描述成完全的功能规范。
	
	作者没有转录版权材料,也不清楚这些实现是否有知识产权的限制。
	
	任何分配的数据或者是功能操作如果被厂商修改了,请恕不通知。如果有直接从实现者那里
	获得的资料,特别是第一手资料,我将感激不尽。
	
1.2	表示方法
	
	由于这些材料专门组织,信息按照一种简单的分类方法管理。
	
	   -    Attribute Usage
	
	   -    Attribute Data Types
	
	   -    Message Codes
	
	   -    New Operations
	
2.	属性用法(Attribute Usage)	

	RADIUS 的 RFC 定义了给出了属性类型的范围,以及一些属性的定义。
	
	-定义了大约70个RADIUS属性
	
	-192-193为试验使用保留
	
	-224-240为特有的实现使用保留
	
	-241-255保留,不得使用
	
	26号属性被定义为厂商特有属性(VSA),它利用更深一层的内在结构,允许
	厂商扩展。
	
2.1	属性冲突

	实际上,属性92-255被一个厂商使用。而另一个厂商也用了属性90-104,而且这
	两种用法有冲突。
	
	为了处理这个问题,服务器开发商把特定厂商参数加入到它们的客户端数据库文件中。
	管理者在指出NAS的IP地址和共享密钥的同时,还要指出NAS的类型,这样服务器才
	能消除这些属性用法的歧义。
	
	一种服务器用一个大的厂商文件来将所有的属性映射到一种保留厂商ID的内部格式。
	另外一种服务器则用多个词典实现,每个词典对应着一种NAS和厂商定义列表模型。
	
2.2	属性值冲突
	
	相对于简单的特性需求来说,增加额外的属性可能会变得更麻烦。通常,现有的属性
	能通过另外的值来扩展(特别是那些枚举选择的属性)。但是这样做,就没有办法保证
	不会与其它厂商的扩展出现冲突。
	
2.2.1	关于厂商特有属性枚举值的建议

	关于该问题的一个推荐的解决方法是VSE(Vendor specific Enumerations)。
	这种方法就是将用于填充某个属性的值的空间分割一部分出来,将厂商的ID以数字值
	的形式填入(ala VSAs)。该技术没有被工作组以及其它厂商采用,但是,厂商没有
	达到额外工作组或者是其它厂商值不冲突的目的。
	
	VSE值的字典示例如下:
	
	   VALUE   Service-Type        VSE-Authorize-Only       0x06300001
	   VALUE   Acct-Status-Type    VSE-User-Reject          0x06300001
	   VALUE   Acct-Status-Type    VSE-Call-Reject          0x06300002
	   VALUE   Acct-Status-Type    VSE-IPCP-Start           0x06300003
	   VALUE   Acct-Status-Type    VSE-IPXCP-Start          0x06300004
	   VALUE   Acct-Status-Type    VSE-ATCP-Start           0x06300005
	   VALUE   Acct-Status-Type    VSE-Accounting-Restart   0x06300006
	   VALUE   Acct-Status-Type    VSE-Accounting-Shutoff   0x06300007
	   VALUE   Acct-Status-Type    VSE-Tunnel-Start         0x06300008
	   VALUE   Acct-Status-Type    VSE-Tunnel-Stop          0x06300009
	   VALUE   Acct-Status-Type    VSE-Tunnel-Reject        0x0630000a
	   VALUE   Acct-Status-Type    VSE-Tunnel-Link-Start    0x0630000b
	   VALUE   Acct-Status-Type    VSE-Tunnel-Link-Stop     0x0630000c
	   VALUE   Acct-Status-Type    VSE-MP-Start             0x0630000d
	   VALUE   Acct-Status-Type    VSE-MP-Stop              0x0630000e
	   VALUE   Acct-Status-Type    VSE-Line-Seizure         0x0630000f
	   VALUE   Acct-Status-Type    VSE-Rlogin-Start         0x06300010
	   VALUE   Acct-Status-Type    VSE-Rlogin-Stop          0x06300011
	   
2.3.	厂商特有的属性(VSA)的用法
	
	由于在RADIUS工作组的开发中,26号属性--Vendor Specific Attributes(VSAs)
	--直到后来才出现,有些服务器到后来才支持该属性。现在,一些前沿的关于客户端的
	实现也利用VSA做扩展。非常不幸的是VSA的具体实现有不同的格式。这是因为RFC建议的
	格式支持的属性不能多于256个。
	
2.3.1	VSA在一些客户端中的应用
	
	写该文档是,参考过下面的内容:
	
	   -    Microsoft: several for MS-CHAP authentication support [9]
	
	   -    ACC: 42 [10]
	
	   -    Nortel(Bay): about 60 VSAs and 16 VSEs
	
	   -    Nortel(Aptis): about 60 VSA: 20 1-byte, ~130 4-byte header.
	   	由于它有大量的属性,Aptis的VSA已经从通常的格式变为头长度为4-byte的格式。
	
	   -    3Com (USR): about 130
	   	USR的VSA格式不同于RFC2138所推荐的格式。它的Type域有4个字节长度,并且
	   	内部没有长度域。
	
	有部分厂商开始没有使用VSA,后来则变成将VSA用为一个可配置的选项。
	
2.3.2	支持多个厂商属性的客户端

	如今MS-CHAP的RADIUS属性已经在RFC 2548中作为Microsoft VSA属性被出版,	这使得支持
	MS-CHAP认证的NAS客户端在处理不同的厂商的VSA类型时,它会成为典型的应用。这提示服务器
	可以根据厂商的NAS客户端过滤或者是裁减一些属性。
	
	一个NAS客户端可以接收最多3种不同的VSA属性集,但是只会根据操作员配置的模式发送特定的属性,
	这使得它能适合于那些客户是需要依赖于一组特定的RADIUS属性的的环境,这也允许NAS能随意
	访问而不必改变服务器的属性(allows the NAS to "drop-in" without server attribute 
	changes)。
	
	现在还有另外一种NAS,能同时支持3种厂商属性。更准确的说,就是给服务器响应时,它使用不同
	厂商的VSA属性的组合。这样做为了支持那些竞争厂商的扩张属性的超集,也是为了支持给NAS的
	同类产品的扩展属性。
	
3.	属性数据类型
	
	RFC只定义了4种基本的数据类型

	   -    integer, 32 bit unsigned
	
	   -    string, 1-253 bytes, counted.
	
	   -    ipaddr, 32 bit IPv4
	
	   -    date, 32 bit Unix format.
		
	以后又添加了一些其它数据类型:
	
	在关于隧道认证的文档[6]中隧道属性中增加了一个可选的组合字段-“tag"。
	这是一个预先被添加到数据域中的单字节,用于支持返回的属性集合。该字节
	的取值范围必需是0x01-0x3F,或者被考虑成数据域中的数据〔译者注:不再
	将它看成一个"tag"字段〕。
	
	请注意没有关于IPv6的支持。实际上在一些固定的消息组件中也没有关于IPv6的支持。
	
	在服务器里又构造了一些新的属性类型。为了包过滤,构造了一种叫做"abinary"
	的格式。用户在profile中输入一串ASCII字符串格式的过滤描述。在将它传到NAS
	端前,服务器将它解析成二进制串。这有利于将来服务器端解析的复杂度。另外,
	还有一种"phonestring"的服务器数据类型允许在程序的入口处做额外的数据类型
	检查。
	
4.	新近的消息	
	
	一系列新的消息已经被逐步引入。原来基本的规范是6个,厂商增加了26个。
	
	这些消息分成了几类,我们在下面描述。其中的一些消息,用类似于RADIUS的协议,
	用于RADIUS服务器和其它资源服务器之间,实现一些新的功能。
	
         6 Accounting Status
                  (now Interim Accounting [5])
         7 Password Request
         8 Password Ack
         9 Password Reject
         10 Accounting Message

         21 Resource Free Request
         22 Resource Free Response
         23 Resource Query Request
         24 Resource Query Response
         25 Alternate Resource Reclaim Request
         26 NAS Reboot Request
         27 NAS Reboot Response

         29 Next Passcode
         30 New Pin
         31 Terminate Session
         32 Password Expired
         33 Event Request
         34 Event Response
         40 Disconnect Request
         41 Disconnect Ack
         42 Disconnect Nak
         43 Change Filters Request
         44 Change Filters Ack
         45 Change Filters Nak
         50 IP Address Allocate
         51 IP Address Release
	
5.	附加的功能

	有一些操作,是通过RADIUS的扩展以及其它的消息类型来实现的。
	
5.1	修改密码
	
	有关于远程修改密码的描述和建议,但是该工作组没有采用。但是,这个
	特性在一些产品中还是被开发出来了。
	
	消息类型;
	    - Password Request
	    - Password Ack or Reject
		
5.2	认证模式
	
	增加了一些消息类型用于协商智能卡服务器之间的密码修改(passcode changes)。
	    - Next Passcode
	    - New PIN
	    - Password Expired
	这允许NAS和RADIUS服务器能通过其它的一台安全服务器协商修改密码。
	
5.3	菜单
	
	至少有两家厂商开发了用于拨号终端的、通过菜单相互操作的系统。
	
	一种实现使用Reply-Message作为要显示的菜单文本,用State属性来跟踪菜单内的位置。
	通过Access-Challenge消息来显示菜单。象通常处理challenge一样,将响应在编码在
	User-Password域内。
	
	按照这种方式使用,一些RADIUS客户端会出问题,因为它们不能处理返回的太长的或者是

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -