参考URL:http://www.tutorials point.com/radius/index.htm
radius :远程身份验证dialinuserservice
RADIUS是托管认证、认证相关信息的协议,希望在网络访问服务(NAS )之间的配置中对这些链接进行认证,并共享认证服务。
AAA和NAS在开始学习RADIUS之前,了解以下两个概念非常重要。
1 )什么是AAA?
2 )什么是NAS?
首先,让我们对上面的两种感想有一个基本的认识。
根据AAA的说法:
(I )认证:
就是确认请求的用户是合法用户
通过表示身份和证书来实现
证书的示例包括密码、一次性令牌、数字认证和电话号码(主要称为)
(ii )授权和(许可证) ) ) ) ) ) ) ) )。
是指确保用户使用包括“无服务”在内的专用类型的服务,并基于它们进行认证。
根据限制,例如,每日时间限制、物理位置限制或同一用户多次登录的限制。
服务的示例包括但不限于IP地址过滤、地址分配、路由分配、加密、QOS/差异服务和带宽控制流量管理。
(iii )审计) )。
是指跟踪用户消耗(使用)的网络资源
审计收集的典型信息包括用户标识、服务性质、服务何时启动和何时关闭(计费)。
可用于管理、计划、计费等。
AAA服务为客户端提供上述所有服务。
AAA协议:
1 )终端访问控制器的访问控制系统(TACACS ) ) )。
TACACS是用于与认证服务器通信的远程认证协议,通常用于UNIX网络。 TACACS允许用户远程访问与认证服务的通信,以确定是否允许用户访问网络。 Unix的后台是TACACSD,在49个端口上运行,使用TCP。
2 ) TACACS :
TACACS是一种为路由、网络访问服务和其他网络计算设备提供访问控制的协议,它使用多个中央服务器。 使用TCP提供单独的认证、认证和审计服务。 端口是49。
3 ) RADIUS :
远程认证拨号用户服务是一种AAA APP应用协议,包括网络认证和IP移动性。 在下一章中,我们将详细了解RADIUS。
4 )直径器
Diameter是计划替代RADIUS的协议。
什么是网络接入服务器(NAS )?
网络访问服务(NAS )是服务单元,客户端拨号是获取访问网络。 互联网接入服务是一种设施,通常具有到主干网络和通信(POTS或ISDN )的接口,希望接收主机的呼叫,并通过拨号服务访问主干国王NAS位于互联网提供商的何处,允许客户访问互联网。
网络访问服务(NAS )包括:
1 )远程资源的单个接入点
2 )远程接入服务用于允许远程接入网络
3 )网络的起点入口点
4 )确保访问受保护资源的网关
一些示例:
1 )使用用户ID和掩码进行互联网访问认证
2 )使用VOIP、FOIP和VMOIP需要可用的电话号码或IP地址
3 )电话预付卡使用预付卡号码
RADIUS概述
RAIDUS是托管认证、认证的协议,配置要认证的链接的网络访问服务和认证服务器之间的信息。
1 ) RADIUS遵循远程认证拨号用户服务
2 ) RADIUS是APP应用的AAA协议,如网络接入和IP移动性
3 )既可以在本地工作,也可以在移动上工作
4 )使用PAP、CHAP和EAP协议验证用户
5 )查看文本文件、LDAP服务和认证数据库方法
6 )认证后,服务参数返回NAS
7 )会话开始和结束时通知。 数据用于发票和统计目的
8 ) SNMP用于远程监控
9 )作为代理发挥作用
简单的RADIUS网络框架图:
RADIUS的特征
以下是RADIUS的主要特征列表。
1 )客户端服务器们的型号(C/S ) ) )。
作为RADIUS服务的客户端
RADIUS服务获取用户的连接请求、对用户进行认证,并返回客户端向用户发送服务所需的所有配置信息。
2 )网络安全
客户端和服务之间的传输使用共享密钥进行验证,并且密钥不会发送到网络。
3 )灵活的认证机制
RADIUS支持以下协议进行身份验证:
点对点协议PPP
密码认证协议- PAP
挑战-握手认证协议- CHAP
简单的UNIX登录
4 )扩展协议
RADIUS具有可扩展性,许多RADIUS硬件和软件都是现实的
现厂商有它们字节的方言。
5)无状态协议,使用UDP,运行在端口1812上。
RADIUS操作
下面是RADIUS操作的详情。在客户端与RADIUS服务开始通信之前,它要求在客户端和服务之间共享密码,客户端必须配置使用RADIUS服务来获取服务。
正确配置一个客户端:
1)客户端开始Access-Request
2)服务器发送Access-Accept、Access-Reject或Access-Challenge。
3)Access-Accept保留所有要求的属性提供服务给用户
RADIUS码(十进制)赋值如下:
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
不考虑Alive概念-好还是坏?
代码4和5与RADIUS审计功能相关,代码12和13保留可能的用途,但是这里没有进一步提到。
RADIUS报文格式
RADIUS报文格式如下图所示:
Code:1个八位字节(Octet)长度,表示报文的各种类型。通常1个八位字节意味着1 Byte。
Identifier:又是一个8位字节长度,辅助匹配请求的响应。
Length:这是2个8位字节长度,指定报文的长度,包括RADIUS头部(Code,Identifier,length和Authenticator)(最小报文长度为20个8位字节,最大为4096个8位字节)。
Authenticator:16个Byte长度,填满一些请求和响应。
Attributes列表:它是一个63+属性列表,RADIUS属性也有指定的格式,下章描述。
RADIUS属性
RADIUS属性包含下面三个部分(TLV):
1)Type: 1 Byte,表示属性的各种类型,它是属性代码,如下面列表中所示。
2)Length:1Byte,表示属性的长度,包含Type和自身
3)Value:0或者多个Bytes,包含属性专用的信息。
RADIUS属性列表:
Code
Attributes
1
User-Name
2
User-Password
3
CHAP-Password
4
NAS-IP-Address
5
NAS-Port
6
Service-Type
7
Framed-Protocol
8
Framed-IP-Address
9
Framed-IP-Netmask
10
Framed-Routing
11
Filter-Id
12
Framed-MTU
13
Framed-Compression
14
Login-IP-Host
15
Login-Service
16
Login-TCP-Port
17
(unassigned)
18
Reply-Message
19
Callback-Number
20
Callback-Id
21
(unassigned)
22
Framed-Route
Code
Attributes
23
Framed-IPX-Network
24
State
25
Class
26
Vendor-Specific
27
Session-Timeout
28
Idle-Timeout
29
Termination-Action
30
Called-Station-Id
31
Calling-Station-Id
32
NAS-Identifier
33
Proxy-State
34
Login-LAT-Service
35
Login-LAT-Node 3
36
Login-LAT-Group
37
Framed-AppleTalk-Link
38
Framed-AppleTalk-Network
39
Framed-AppleTalk-Zone
40-59
(reserved for accounting)
60
CHAP-Challenge
61
NAS-Port-Type
62
Port-Limit
63
Login-LAT-Port
RADIUS例子
让我们看一个RADIUS请求示例:
1)192.168.1.16的NAS发送Access-RequestUDP报文到RADIUS服务,用户名称为memo,在端口3上使用密码arctangent密码登录。
2)请求认证是由NAS生成的16个字节随机数
3)用户密码是16个字节的密码,以零字节结尾,与D5进行XOR操作(工序安全|请求认证)
01 00 00 38 0f 40 3f 94 73 97 80 57 bd 83 d5 cb 98 f4 22 7a01 06 6e 656d 6f 02 12 0d be 70 8d 93 d4 13 ce 31 96 e43f 78 2a 0a ee 04 06 c0 a8 01 10 05 06 0000 00 03
1Code = Access-Request(1)
1Identifier = 0
2Length = 0x0038(56)
16请求验证:…
属性列表:
6User-Name = nemo
18User-Passwd =
6NAS-IP-Address = 192.168.1.16
6NAS-Port = 3
DIMETER是什么
DIAMETER计划替代RADIUS协议
DIAMETER是应用的AAA协议,例如网络访问和IP移动性
打算在本地和远程AAA情况下均能使用
DIAMETER只是两倍与前任协议RIADUS
使用TCP和SCTP承载,不是UDP,子协议号为46
它使用传输级别安全(IPSEC或IP)
32位标识符替代8位(RADIUS)
支持无状态和状态模型
支持应用层应答,定义容错
更好的远程支持
使用AVP
容易扩展,可以定义新的命令和类型
下一步
现在你已经学习了RADIUS和DIAMETER的基本知识,两个协议更深入的详情需要阅读各种RFC文档。
· RFC 2865 Remote AuthenticationDial In User Service (RADIUS)
· RFC 2866 RADIUS Accounting
· RFC 3162 RADIUS Extensions
· RFC 2903 Generic AAAArchitecture
· RFC 4004 DiameterMobile IPv4 Application