01-DAE代理配置
本章节下载: 01-DAE代理配置 (282.20 KB)
目 录
DAE(Dynamic Authorization Extensions,动态授权扩展)代理用来在DAE服务器和DAE客户端之间转发DAE请求和DAE响应报文。
DAE协议是RADIUS(Remote Authentication Dial-In User Service,远程认证拨号用户服务)协议的一个扩展,它用于强制认证用户下线,或者更改在线用户授权信息。
DAE协议采用客户端/服务器通信模式,由DAE客户端(DAC,Dynamic Authorization Client)和DAE服务器(DAS,Dynamic Authorization Server)组成。
· DAE客户端:用于发起DAE请求,通常驻留在一个RADIUS服务器上,也可以为一个单独的实体;
· DAE服务器:用于接收并响应DAE客户端的DAE请求,通常为一个NAS(Network Access Server,网络接入服务器)设备。
DAE报文包括以下两种类型:
· DMs(Disconnect Messages):用于强制用户下线,包括DM请求(DM_REQ)和DM响应(DM_ACK、DM_NAK)。DAE客户端通过向NAS设备发送DM_REQ报文,请求NAS设备按照指定的匹配条件(例如用户名、用户IP等),强制用户下线。
· COA(Change of Authorization)Messages:用于更改用户授权信息,包括COA请求(COA_REQ)和COA响应(COA_ACK、COA_NAK)。DAE客户端通过向NAS设备发送COA_REQ报文,请求NAS设备按照指定的匹配条件(同DM_REQ)更改用户授权信息。
其中,COA_REQ和DM_REQ统称DAE请求报文,COA_ACK、COA_NAK、DM_ACK、DM_NAK统称DAE响应报文。
如图1-1所示,DAE代理主要应用于转发控制分离组网中。该组网中的CP负责接入认证、用户管理等控制平面业务,UP负责数据报文转发和流量控制等数据平面业务。如果网络中CP数量较多,每个DAE客户端上需要管理的NAS IP地址相应增多,其配置和管理复杂度会随之上升。
DAE代理的部署就能避免上述问题。在该组网中,DAE代理统一接收DAE客户端的DAE请求报文,并分发给对应的DAE服务器去处理。同时,DAE代理设备负责接收DAE服务器的DAE响应报文,并转发给相应的DAE客户端。这样,DAE客户端上只需要管理一个NAS IP,即DAE代理的IP地址。
图1-1 DAE代理典型组网应用图
在DAE代理设备上开启DAE代理功能后,DAE代理会开启指定的报文侦听端口,从DAE客户端接收DAE请求报文和向DAE客户端发送DAE响应报文。同时,DAE代理会动态开启一个临时端口,向DAE服务器转发DAE请求报文并接收DAE响应报文。
用户认证上线后,若DAE客户端向DAE代理发送DAE请求报文,DAE代理的具体处理机制如下:
(1) DAE代理接收到DAE请求报文后,根据报文的源IP地址和VPN实例查找配置的共享密钥,并使用该共享密钥对报文中的Authenticator字段进行校验:
¡ 若密钥查找失败或者校验失败,则丢弃该请求报文。
¡ 若校验成功,则开启临时端口,向与DAE客户端属于同一VPN的所有DAE服务器转发该请求报文。
(2) DAE服务器接收到DAE请求报文后,根据DAE请求报文中携带的匹配条件对用户信息进行删除或授权更改处理,并通过DAE响应报文将处理结果发送给DAE代理。
(3) DAE代理在临时端口上接收到DAE响应报文后,首先根据记录的DAE客户端的IP地址和VPN实例查找共享密钥,并重新计算生成Authenticator字段携带在该响应报文中,然后将DAE响应报文发送给相应的DAE客户端。若DAE代理等待DAE响应报文的时间超过10秒,则不再处理此次DAE请求的后续响应报文,也不向DAE客户端做任何应答。
与DAE相关的协议规范有:
· RFC 5176:Dynamic Authorization Extensions to Remote Authentication Dial In User Service (RADIUS)
在连接DAE客户端的接口上配置出方向地址转换,对来自CP的RADIUS报文做源地址转换,转换后的IP地址需要与DAE客户端上管理该CP的NAS IP保持一致。关于出方向地址转换的详细配置,请参见“NAT配置指导”。
在DAE服务器上需要进行以下配置:
· 配置DAE客户端信息,指定的DAE客户端IP地址为DAE代理的IP地址;
· (可选)配置DAE服务器监听DAE报文的端口,必须和DAE代理转发DAE报文的端口保持一致;
· (可选)配置免校验的RADIUS DAE客户端IP。
以上关于DAE服务器上的详细配置,请参见“BRAS业务配置指导”中的“AAA”。
(1) 进入系统视图。
system-view
(2) 开启DAE代理功能,并进入DAE代理视图。
radius dynamic-author proxy [ listen-port port-number ]
除了在进入DAE代理视图时可以配置listen-port参数之外,也可以在DAE代理视图下配置该参数,两者效果相同,后配置的生效。
(3) 配置DAE客户端。
client { ip ipv4-address | ipv6 ipv6-address } [ vpn-instance vpn-instance-name ] [ key { cipher | simple } string ]
缺省情况下,未配置DAE客户端。
可配置多个DAE客户端。DAE代理只接收本命令指定的DAE客户端发送的DAE报文。
(4) 指定DAE代理监听DAE客户端报文的UDP端口号。
listen-port port-number
缺省情况下,DAE代理监听DAE客户端报文的UDP端口号为3799。
在DAE代理功能处于开启状态时更改此配置可能会造成部分DAE请求报文丢失,建议在没有DAE代理业务的情况下修改此值。
(5) 配置DAE服务器。
server { ip ipv4-address | ipv6 ipv6-address } [ vpn-instance vpn-instance-name ]
缺省情况下,未配置DAE服务器。
可配置多个DAE服务器。DAE代理只向本命令指定的DAE服务器发送DAE请求报文。
(6) 指定远端DAE服务器监听DAE报文的端口。
server port dest-port
缺省情况下,DAE服务器监听DAE报文的端口为3799。
在DAE代理功能处于开启状态时更改此配置可能会造成部分DAE响应报文丢失,建议在没有DAE代理业务的情况下修改此值。
完成上述配置后,在任意视图下执行display命令可以显示DAE代理的运行情况,在用户视图下执行reset命令可以清除统计信息。
表1-1 DAE代理显示和维护
操作 |
命令 |
显示DAE代理的相关信息 |
display radius dynamic-author proxy |
清除DAE代理的统计信息 |
reset radius dynamic-author proxy statistics |
转发控制分离组网环境中,有如下组网需求:
· 用户主机通过手工配置或DHCP获得IP地址,经由三层网络以IPoE方式接入到BRAS接入设备。
· 采用Free RADIUS服务器作为认证、授权和计费服务器,共享密钥为radius。
· Device作为DAE代理统一管理所有CP。
图1-2 转发控制分离组网下的DAE代理配置组网图
配置各接口的IP地址,且确保各设备之间路由可达。
配置CP和UP间的管理通道、控制通道和协议隧道,具体配置请参见《H3C vBRAS1000-CP 转发与业务分离业务配置指导》。
# 配置RADIUS客户端信息。
在clients.conf文件中增加如下信息:
client 5.5.5.1/32 {
ipaddr = 5.5.5.1
netmask=32
secret=radius
}
以上信息表示:RADIUS客户端的IP地址为5.5.5.1,共享密钥为字符串radius。
# 配置合法用户信息。
在users文件中增加如下信息:
2.2.2.1 Cleartext-Password :="a123456"
以上信息表示:用户名为2.2.2.1,用户密码为字符串a123456。
# 开启DAE代理功能,并进入DAE代理视图。
<Device> system-view
[Device] radius dynamic-author proxy
# 配置监听DAE请求的端口为2000。
[Device-radius-da-proxy] listen-port 2000
# 配置DAE客户端,IP地址为5.5.5.2,共享密钥为明文的radius。
[Device-radius-da-proxy] client ip 5.5.5.2 key simple radius
# 配置向DAE服务器发送DAE报文时的目的端口为3798。
[Device-radius-da-proxy] server port 3798
# 配置DAE服务器,IP地址分别为4.4.4.1和6.6.6.1。
[Device-radius-da-proxy] server ip 4.4.4.1
[Device-radius-da-proxy] server ip 6.6.6.1
[Device-radius-da-proxy] quit
# 配置ACL 3000,仅允许对目的端口为RADIUS服务器的认证和计费监听端口号的报文进行地址转换。
[Device] acl number 3000
[Device-acl-adv-3000] rule 1 permit udp destination-port eq 1812
[Device-acl-adv-3000] rule 2 permit udp destination-port eq 1813
[Device-acl-adv-3000] quit
# 在连接RADIUS服务器的接口上配置出方向动态地址转换,使用接口的IP地址对匹配ACL 3000的报文(即来自CP的RADIUS报文)做源地址转换。
[Device] interface ten-gigabitethernet 3/0/3
[Device-Ten-GigabitEthernet3/0/3] ip address 5.5.5.1 255.255.255.0
[Device-Ten-GigabitEthernet3/0/3] nat outbound 3000
[Device-Ten-GigabitEthernet3/0/3] quit
# 配置BRAS设备工作在转发模式。
<UP1> system-view
[UP1] work-mode user-plane
UP 2与UP 1上的配置类似,请参考UP 1进行配置,此处略。
# 创建名称为rs1的RADIUS方案,并进入该方案视图。
<CP1> system-view
[CP1] radius scheme rs1
# 配置RADIUS方案的主认证和主计费服务器及其通信密钥。
[CP1-radius-rs1] primary authentication 5.5.5.2
[CP1-radius-rs1] primary accounting 5.5.5.2
[CP1-radius-rs1] key authentication simple radius
[CP1-radius-rs1] key accounting simple radius
# 配置发送给RADIUS服务器的用户名不携带ISP域名。
[CP1-radius-rs1] user-name-format without-domain
[CP1-radius-rs1] quit
(2) 配置DAE服务器功能
# 开启DAE服务器功能,并进入DAE服务器视图。
[CP1] radius dynamic-author server
# 配置监听和接收DAE报文的端口为3798。
[CP1-radius-da-server] port 3798
# 配置DAE客户端,IP地址为4.4.4.2,共享密钥为明文的radius。
[CP1-radius-da-server] client ip 4.4.4.2 key simple radius
[CP1-radius-da-server] quit
(3) 配置ISP域
# 创建并进入名称为dm1的ISP域。
[CP1] domain name dm1
# 配置IPoE用户认证/授权/计费均使用RADIUS方案rs1。
[CP1-isp-dm1] authentication ipoe radius-scheme rs1
[CP1-isp-dm1] authorization ipoe radius-scheme rs1
[CP1-isp-dm1] accounting ipoe radius-scheme rs1
[CP1-isp-dm1] quit
(4) 配置IPoE
# 进入远端接口Remote-GE1024/1/0/2。
[CP1] interface remote-ge 1024/1/0/2
# 开启IPoE功能,并指定三层接入模式。
[CP1–Remote-GE1024/1/0/2] ip subscriber routed enable
# 开启未知源IP报文触发方式。
[CP1–Remote-GE1024/1/0/2] ip subscriber initiator unclassified-ip enable
# 设置未知源IP报文触发方式使用的认证域为dm1。
[CP1–Remote-GE1024/1/0/2] ip subscriber unclassified-ip domain dm1
# 设置动态用户的认证密码为明文radius。
[CP1–Remote-GE1024/1/0/2] ip subscriber password plaintext radius
[CP1–Remote-GE1024/1/0/2] quit
(5) 配置到达RADIUS服务器的路由
# 配置一条静态路由,目的地址为RADIUS服务器IP地址,下一跳为DAE代理的IP地址。
[CP1] ip route-static 5.5.5.2 32 4.4.4.2
CP 2与CP 1上的配置类似,请参考CP 1进行配置,此处略。
# 以上配置完成后,可通过display access-user命令查看CP 1上的IPoE用户在线信息。
# 显示DAE代理上的DAE统计信息。
[Device] display radius dynamic-author proxy
Status: Enabled
Listening port: 2000
RADIUS DAE clients:
IP address VPN instance
5.5.5.2 N/A
RADIUS DAE servers:
IP address VPN instance
4.4.4.1 N/A
6.6.6.1 N/A
RADIUS DAE packet statistics (DAE proxy<--->DAE client):
Invalid packets: 0
PacketName DM_REQ DM_ACK DM_NAK COA_REQ COA_ACK COA_NAK
Received 0 0 0 0 0 0
Duplicated 0 0 0 0 0 0
CheckError 0 0 0 0 0 0
NASNotFound 0 0 0 0 0 0
Sent 0 0 0 0 0 0
FailedToSend 0 0 0 0 0 0
RADIUS DAE packet statistics (DAE proxy<--->DAE server):
Invalid packets: 0
PacketName DM_REQ DM_ACK DM_NAK COA_REQ COA_ACK COA_NAK
Sent 0 0 0 0 0 0
FailedToSend 0 0 0 0 0 0
Received 0 0 0 0 0 0
NoContext 0 0 0 0 0 0
当CP 1上收到DAE客户端发来的DM报文后,CP 1会强制匹配该DM条件的用户下线,通过display access-user命令可查看到该用户已经不存在。
当CP 1上收到DAE客户端发来的COA报文后,CP 1会修改匹配该COA条件的用户的授权信息,可通过display access-user命令查看。
# 通过以下显示命令查看DAE代理上的配置和报文统计信息,发现统计信息已经发生变化。
[Device] display radius dynamic-author proxy
Status: Enabled
Listening port: 2000
RADIUS DAE clients:
IP address VPN instance
5.5.5.2 N/A
RADIUS DAE servers:
IP address VPN instance
4.4.4.1 N/A
6.6.6.1 N/A
RADIUS DAE packet statistics (DAE proxy<--->DAE client):
Invalid packets: 0
PacketName DM_REQ DM_ACK DM_NAK COA_REQ COA_ACK COA_NAK
Received 1 0 0 1 0 0
Duplicated 0 0 0 0 0 0
CheckError 0 0 0 0 0 0
NASNotFound 0 0 0 0 0 0
Sent 0 1 0 0 1 0
FailedToSend 0 0 0 0 0 0
RADIUS DAE packet statistics (DAE proxy<--->DAE server):
Invalid packets: 0
PacketName DM_REQ DM_ACK DM_NAK COA_REQ COA_ACK COA_NAK
Sent 2 0 0 2 0 0
FailedToSend 0 0 0 0 0 0
Received 0 1 1 0 1 1
NoContext 0 0 0 0 0 0
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!