16-COPS配置
本章节下载: 16-COPS配置 (242.82 KB)
目 录
COPS(Common Open Policy Service,公共开放策略服务)是一种简单的使用查询/响应模式的应用层协议,可用于在策略服务器和客户端之间交互策略信息。例如,该协议可被用于对RSVP(Resource Reservation Protocol,资源预留协议)信令消息进行策略控制,通过这种客户端查询策略/服务器响应决策的交互模式,对所有RSVP信令消息进行集中监控和控制,实现全网层面的端到端网络资源的协商、调度和实施。
同时,COPS协议又是一种面向业务的网络管理协议,可对多种网络应用业务进行策略控制,常见的应用业务包括QoS(Quality of Service,服务质量)、网络接入、防火墙等。目前,H3C设备可作为客户端,通过与远端的策略服务器端交互实现对802.1X接入业务的策略控制。
COPS协议定义的通信模型中有两大实体:PDP(Policy Decision Point,策略决策者)和PEP(Policy Enforcement Point,策略执行者)。其中,PDP是策略服务器端,PEP是客户端,PDP和PEP通过COPS协议进行策略信息交互。
COPS协议中,客户端与服务器之间进行消息交互的基本方式为:PEP向PDP发送策略请求、策略更新或策略删除的消息,PDP向PEP回应决策消息。基于该交互方式的COPS协议具有以下特点:
· 使用TCP作为传输层协议,可以提供可靠的报文交互。
· 具有可扩展性,不需要修改COPS协议本身就能支持不同类型的客户端业务。
· 为报文传输提供安全保证,可以进行报文的认证、重发保护和完整性检查。可以利用IPsec(IP Security,IP安全)或者TLS(Transport Layer Security,传输层安全)等已有的安全机制来认证和保护PEP和PDP之间交互的报文。
· 客户端与服务器共享请求与决策。PEP发出的策略请求将被远端的PDP存储直到PEP请求将其删除。而对于已经被PDP存储的策略请求,PDP可以在接收到请求后立即产生决策(Solicited Decision),或者之后因为状态变化而异步地产生新的决策(Unsolicited Decision),PEP会根据收到的决策报文修改本地保存的决策,以保持与PDP的决策的一致性。
· PDP可以对PEP进行策略配置,并依据此策略向PEP下发决策,当策略不可用时PDP能通知PEP同步删除本地保存的决策。
如图1-1所示,COPS协议报文的基本交互过程如下:
图1-1 COPS协议报文基本交互过程图
(1) 当COPS系统启动时,PEP向PDP发起TCP连接请求,该TCP连接建立后,PEP和PDP将基于此TCP连接进行后续的COPS消息交互。
(2) TCP连接建立之后,PEP向PDP发送OPN(Client-Open)消息请求建立COPS连接,该消息用于向PDP告知PEP可支持的客户类型(Client-type)。
(3) 若PDP支持该客户端类型,则向PEP回应CAT(Client-Accept)消息,否则发送CC(Client-Close)消息。COPS连接建立之后,PEP与PDP通过互发KA(Keep-Alive)消息来维持该COPS连接的连通性。
(4) PEP向PDP发送REQ(Request)消息发起针对具体业务的策略请求,并启动请求超时定时器等待PDP回应。如果PEP在指定的超时时间内未收到PDP响应的决策,则立即删除该请求,并同时通知PDP删除保存的该请求。
(5) PDP收到PEP的策略请求后,向PEP发送包含决策内容的DEC(Decision)消息。
(6) PEP收到PDP决策之后,依据该决策中的策略进行业务处理,并向PDP发送RPT(Report)消息通知执行结果,PDP可以随时对决策进行更新和删除。若PDP的决策未及时发送,则PEP将不会处理请求超时时间之后收到的相关决策。
(7) 如果PEP和PDP建立COPS连接时,PDP向PEP指定了报告计费信息的时间间隔,则PEP在得到请求策略的决策后需要周期性地向PDP发送RPT消息报告客户端的业务统计信息。
目前,COPS协议可应用于802.1X接入业务,可实现对802.1X接入用户的授权策略控制,典型应用组网图如图1-2所示。
图1-2 COPS支持802.1X业务的典型应用组网图
设备启动后,根据当前的COPS配置与指定的PDP服务器建立COPS连接。当802.1X接入用户认证成功并上线后,设备与PDP服务器的基本交互过程如下:
· 设备作为PEP端向PDP服务器提交包含上线用户信息(用户名、主机IP地址、主机MAC地址、接入端口号等)的策略请求,请求PDP服务器对上线用户下发授权信息(VLAN、ACL等)。
· PDP服务器根据PEP上传的用户信息以及自身的策略配置,向PEP发送包含授权信息的决策。用户在线期间,PDP服务器可以主动变更用户的授权属性信息。
· 如果PDP服务器上指定了计费时间间隔,则PEP会在用户在线期间定时向PDP发送计费报文。
· 用户下线时,PEP通知PDP服务器删除该用户的策略请求。
若接入设备上配置了除COPS协议之外的其它协议对用户进行授权,例如RADIUS协议,则仅COPS授权会生效。关于其它授权方案的相关介绍请参见“安全配置指导”中的“AAA”。
与COPS相关的协议规范有:
RFC 2748:Common Open Policy Service
本文所述的COPS配置包括两方面:配置COPS客户端ID和配置COPS方案。为使COPS方案生效,还需要具体的业务模块去引用它。目前,仅802.1X支持引用COPS方案,相关配置请参见“安全配置指导”中的“802.1X”。
表1-1 COPS配置任务简介
配置任务 |
说明 |
详细配置 |
|
配置COPS客户端ID |
必选 |
||
配置COPS方案 |
创建COPS方案 |
必选 |
|
指定PDP服务器 |
必选 |
||
配置COPS请求响应超时时间 |
可选 |
||
配置COPS重建连接的时间间隔 |
可选 |
||
配置COPS报文共享密钥 |
可选 |
当COPS方案被业务模块引用后,对COPS配置的修改不能立即生效,需要业务模块取消引用当前COPS方案并重新引用新的COPS方案,修改后的COPS配置才能生效。
作为PEP端,设备通过配置的COPS客户端ID向PDP服务器标识自己,该ID与当前业务所在的接口信息组合生成OPN报文中的PEP ID值通告给PDP服务器,PDP服务器用该PEP ID作为策略规则中PEP设备的标识。
表1-2 配置COPS客户端ID
配置步骤 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置COPS客户端ID |
cops id pep-id |
必选 缺省情况下,未配置COPS客户端ID |
· 一台设备上只能配置一个COPS客户端ID。
· 当多个PEP设备使用同一个PDP服务器时,请保证各PEP设备上配置的COPS客户端ID在PDP服务器上具有唯一性。
表1-3 创建COPS方案
配置步骤 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建COPS方案并进入COPS方案视图 |
cops scheme scheme-name |
必选 缺省情况下,不存在任何COPS方案 |
目前,设备最多支持创建16个COPS方案。
本配置用于指定PDP服务器的IP地址和提供COPS服务的TCP端口号。目前,一个COPS方案中最多可指定两个PDP服务器,按配置的先后顺序,分别为主服务器和备用服务器。
表1-4 指定PDP服务器
配置步骤 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入COPS方案视图 |
cops scheme cops-scheme-name |
- |
指定PDP服务器 |
server ipv4 ipv4-address [ port port-number ] |
必选 缺省情况下,未指定PDP服务器 |
PEP将按照PDP服务器的配置先后顺序尝试连接,如果与某一个PDP服务器的TCP连接失败或连接意外断开,则将尝试与另外一个PDP服务器建立连接,如此反复交替尝试,直到连接建立或者业务取消引用该COPS方案。
PEP向PDP服务器发送策略请求后,会在一定的时间内等待PDP服务器响应的决策,若指定的响应超时时间达到时,仍然没有得到该请求的决策,则立即删除该请求并通知业务模块。
表1-5 配置COPS请求响应超时时间
配置步骤 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入COPS方案视图 |
cops scheme scheme-name |
- |
配置COPS请求响应超时时间 |
timer response timeout time |
可选 缺省情况下,COPS请求响应超时时间为5秒 |
当PEP与PDP之间建立连接不成功,或者已有连接因KA定时器超时而断开时,如果PEP上指定了两个PDP服务器,则PEP会在两个服务器间切换尝试重建连接;如果只指定了一个PDP服务器,则PEP会不断尝试与此服务器建立连接。此处配置的重连时间间隔指明了从PEP当前连接失败后到发起下一次连接请求的时间间隔。
表1-6 配置PEP重建连接的时间间隔
配置步骤 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入COPS方案视图 |
cops scheme scheme-name |
- |
配置PEP重建连接的时间间隔 |
timer reconnect interval interval |
可选 缺省情况下,PEP重建连接的时间间隔为60秒 |
PEP与PDP服务器之间的共享密钥用于验证COPS协议报文的完整性,确保PEP与正确的PDP服务器进行通信。COPS报文的发送方使用指定算法和共享密钥生成一个摘要信息,并将其携带在COPS报文中发送,COPS报文的接收方针对收到的报文,使用同样的算法和共享密钥计算一个摘要信息,并验证它与收到的报文中的摘要信息是否匹配,如果匹配,则认为该报文通过完整性检查,否则,该报文会被丢弃。
表1-7 配置COPS报文共享密钥
配置步骤 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入COPS方案视图 |
cops scheme scheme-name |
- |
配置COPS报文共享密钥 |
key key-string [ algorithm hmac-md5-96 ] |
可选 缺省情况下,没有配置COPS报文共享密钥 |
PEP与PDP服务器上的共享密钥配置必须保持一致,即,如果PDP服务器上配置了共享密钥,则PEP上必须配置一样的共享密钥;如果PDP上未配置共享密钥,则PEP上也不配置共享密钥。
在完成上述配置后,在任意视图下执行display命令可以显示配置后COPS的运行情况,通过查看显示信息验证配置的效果。
表1-8 COPS显示和维护
命令 |
|
显示COPS连接信息 |
display cops connection [ slot slot-number ] [ | { begin | exclude | include } regular-expression ] |
只有当COPS方案被具体业务引用后,才能够查看到COPS连接的相关信息。
如图1-3所示,802.1X客户端与Device的端口GigabitEthernet3/1/2相连,Device与网络中的两台PDP服务器和一台RADIUS服务器相连。现有如下具体需求:
· 使用RADIUS服务器对802.1X用户进行认证和计费;
· 802.1X用户认证成功之后,Device作为PEP向PDP服务器请求用户的授权属性;
· 两台PDP服务器互为备份,主服务器IP地址为192.168.0.3/24,备份服务器IP地址为192.168.0.4/24。
· 要求COPS重建连接的时间间隔为30秒,COPS请求响应超时时间为10秒,COPS报文共享密钥为abcdefg,并采用HMAC-MD5-96算法。
图1-3 应用COPS协议进行802.1X授权典型组网图
· 完成RADIUS服务器的配置,保证用户的认证/计费功能正常运行。
· 完成PDP服务器的基本配置,主要包括:COPS连接参数、用户及其授权属性(VLAN、ACL等)。
· 下述各配置步骤包含了部分AAA以及RADIUS的配置,关于这些配置的详细介绍请参见“安全配置指导”中的“AAA”。
(1) 配置RADIUS方案
<Device> system-view
# 创建RADIUS方案radius1并进入其视图。
[Device] radius scheme radius1
# 设置主认证/计费RADIUS服务器及其通信密钥。
[Device-radius-radius1] primary authentication 192.168.0.2
[Device-radius-radius1] primary accounting 192.168.0.2
[Device-radius-radius1] key authentication name
[Device-radius-radius1] key accounting money
# 配置发送给RADIUS服务器的用户名不携带ISP域名。(该配置可选,请与服务器端的用户帐户是否携带域名保持一致)
[Device-radius-radius1] user-name-format without-domain
[Device-radius-radius1] quit
(2) 配置认证域
# 创建并进入名字为bbb的ISP域。
[Device] domain bbb
# 配置ISP域的认证、计费方法。
[Device-isp-bbb] authentication lan-access radius-scheme radius1
[Device-isp-bbb] accounting lan-access radius-scheme radius1
[Device-isp-bbb] quit
(3) 配置COPS
# 配置COPS客户端ID为192.168.0.1。
[Device] cops id 192.168.0.1
# 创建并进入COPS方案cops1x。
[Device] cops scheme cops1x
# 指定主PDP服务器的IP地址为192.168.0.3,端口号为3288。
[Device-cops-cops1x] server ipv4 192.168.0.3 port 3288
# 配置备份PDP服务器的IP地址为192.168.0.4,端口号为3288。
[Device-cops-cops1x] server ipv4 192.168.0.4 port 3288
# 配置COPS重建连接的时间间隔为30秒。
[Device-cops-cops1x] timer reconnect interval 30
# 配置COPS请求响应超时时间为10秒。
[Device-cops-cops1x] timer response timeout 10
# 配置COPS报文共享密钥为abcdefg,采用的HMAC算法为HMAC-MD5-96。
[Device-cops-cops1x] key abcdefg algorithm hmac-md5-96
[Device-cops-copa1x] quit
(4) 配置802.1X
# 开启全局802.1X特性。
[Device] dot1x
# 开启端口GigabitEthernet3/1/2的802.1X特性。
[Device] dot1x interface GigabitEthernet 3/1/2
# 配置802.1X引用COPS方案cops1x。
[Device] dot1x cops cops1x
802.1X引用COPS方案成功后,Device将与PDP服务器之间建立COPS连接。使用命令display cops connection可以查看COPS连接的相关信息。
[Device] display cops connection
PEP ID: 192.168.0.1-s0
Client Type: COPS-1X Status: UP
Connection Losts: 2 Reconnections: 4
KA Timer: 30s ACCT Timer: 600s
Reconnect Interval: 30s Response Timeout: 10s
Current TCP Connection:
PEP: 192.168.0.1/1031
PDP: 192.168.0.3/3288
Last TCP Connection:
PEP: 192.168.0.1/1031
PDP: 192.168.0.4/3288
TX:
REQ: Succ 101, Fail 4
RPT: Succ 100, Fail 1
OPN: Succ 1, Fail 0
KA: Succ 5, Fail 0
DRQ: Succ 1, Fail 0
SSC: Succ 3, Fail 0
RX:
CAT: 1 KA: 5
S-DEC: 100 UNS-DEC: 2 SSQ: 3
用户认证成功上线后,PDP服务器向认证成功的802.1X用户下发授权属性。使用display connection命令可查看到已上线用户连接的相关信息。
业务引用COPS方案后不能成功建立COPS连接,业务发起请求策略后,得不到PDP服务器回应的决策。
· 没有配置COPS客户端ID;
· 没有配置该业务引用的COPS方案;
· 业务引用的COPS方案中没有指定PDP服务器或未指定正确的PDP服务器;
· 业务引用的COPS方案中的共享密钥配置与该方案中指定的PDP服务器上的共享密钥配置不一致。
· 配置COPS客户端ID;
· 业务引用COPS方案;
· 在COPS方案中指定要与之通信的PDP服务器;
· 保证COPS方案中的共享密钥配置和COPS方案中指定的PDP服务器上的共享密钥和算法配置一致。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!