简介
本文档介绍如何在联系中心企业版(CCE)综合呼叫流程中保护会话初始协议(SIP)信令。
先决条件
证书生成和导入不在本文档的讨论范围之内,因此必须创建思科统一通信管理器(CUCM)、客户语音门户(CVP)呼叫服务器、思科虚拟语音浏览器(CVVB)和思科统一边界元素(CUBE)的证书并将其导入到各自的组件中。如果使用自签名证书,则必须在不同组件之间执行证书交换。
要求
Cisco 建议您了解以下主题:
使用的组件
本文档中的信息基于Package Contact Center Enterprise(PCCE)、CVP、CVVB和CUCM版本12.6,但它也适用于早期版本。
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
配置
下图显示了联系中心综合呼叫流程中参与SIP信令的组件。当语音呼叫进入系统时,首先通过入口网关或CUBE,因此在CUBE上开始安全SIP配置。接下来,配置CVP、CVVB和CUCM。

任务1. CUBE安全配置
在本任务中,配置CUBE以保护SIP协议消息。
所需的配置:
- 为SIP用户代理(UA)配置默认信任点
- 修改拨号对等体以使用传输层安全(TLS)
步骤:
- 打开与CUBE的安全外壳(SSH)会话。
- 运行这些命令以使SIP堆栈使用CUBE的证书颁发机构(CA)证书。CUBE建立从/到CUCM(198.18.133.3)和CVP(198.18.133.13)的SIP TLS连接。
conf t
sip-ua
transport tcp tls v1.2
crypto signaling remote-addr 198.18.133.3 255.255.255.255 trustpoint ms-ca-name
crypto signaling remote-addr 198.18.133.13 255.255.255.255 trustpoint ms-ca-name
exit

- 运行这些命令以启用对CVP的传出拨号对等体上的TLS。在本示例中,拨号对等体标记6000用于将呼叫路由到CVP。
Conf t
dial-peer voice 6000 voip
session target ipv4:198.18.133.13:5061
session transport tcp tls
exit

任务2. CVP安全配置
在本任务中,配置CVP呼叫服务器以保护SIP协议消息(SIP TLS)。
步骤:
- 登录到
UCCE Web Administration。
- 导航至
Call Settings > Route Settings > SIP Server Group.

根据您的配置,您为CUCM、CVVB和CUBE配置了SIP服务器组。您需要将所有安全SIP端口设置为5061。在本示例中,使用以下SIP服务器组:
cucm1.dcloud.cisco.com 对于CUCM
vvb1.dcloud.cisco.com 适用于CVVB
cube1.dcloud.cisco.com 对于CUBE
- 点击
cucm1.dcloud.cisco.com,然后在显示MembersSIP服务器组配置详细信息的选项卡中点击。设置SecurePort为5061,然后单击 Save .

- 单击
vvb1.dcloud.cisco.com,然后在选项Members卡中。将SecurePort设置为5061,然后单击Save。

任务3. CVVB安全配置
在本任务中,配置CVVB以保护SIP协议消息(SIP TLS)。
步骤:
- 登录拓
Cisco VVB Administration 扑。
- 导航至
System > System Parameters。

- 在
Security Parameters部分,选Enable择TLS(SIP)保Supported TLS(SIP) version为TLSv1.2。

- 单击更新。当系统提示重新启动CVVB引擎时
Ok,单击。

- 这些更改需要重新启动Cisco VVB引擎。要重新启动VVB引擎,请导航至
Cisco VVB Serviceability,然后点击Go。

- 导航至
Tools > Control Center – Network Services.

- 选择
Engine,然后单击Restart。

任务4. CUCM安全配置
要保护CUCM上的SIP消息,请执行以下配置:
- 将CUCM安全模式设置为混合模式
- 为CUBE和CVP配置SIP中继安全配置文件
- 将SIP中继安全配置文件关联到各自的SIP中继
- 安全代理与CUCM的设备通信
将CUCM安全模式设置为混合模式
CUCM支持两种安全模式:
步骤:
- 要将安全模式设置为混合模式,请登录接
Cisco Unified CM Administration口。

- 成功登录CUCM后,导航至
System > Enterprise Parameters。

- 在Section下
Security Parameters方,检查是否Cluster Security Mode设置为0。

- 如果集群安全模式设置为0,则表示集群安全模式设置为非安全。您需要从CLI启用混合模式。
- 打开到CUCM的SSH会话。
- 通过SSH成功登录CUCM后,请运行以下命令:
utils ctl set-cluster mixed-mode
- 键入
y,并在出现提示时单击Enter。此命令将集群安全模式设置为混合模式。

- 要使更改生效,请重新启动
Cisco CallManager和服Cisco CTIManager务。
- 要重新启动服务,请导航并登录
Cisco Unified Serviceability.

- 成功登录后,导航至
Tools > Control Center – Feature Services。

- 选择服务器,然后单击
Go。

- 在CM服务下,选择
Cisco CallManager 然后Restart点击页面顶部的按钮。

- 确认弹出消息,然后点击
OK。等待服务成功重新启动。

- 成功重新启动后
Cisco CallManager,选择Cisco,然CTIManager后点击Restart按钮以重新Cisco CTIManager服务。

- 确认弹出消息,然后点击
OK。等待服务成功重新启动。

- 服务成功重新启动后,验证集群安全模式是否设置为混合模式,然后按照步骤5中的说明导航到CUCM管理。然后检
Cluster Security Mode查。现在,必须将其设置为1。

为CUBE和CVP配置SIP中继安全配置文件
步骤:
- 登录接
CUCM administration口。
- 成功登录CUCM后,导航至
System > Security > SIP Trunk Security Profile 以为CUBE创建设备安全配置文件。

- 在左上角,点击
Add New以添加新配置文件。

- 如
SIP Trunk Security Profile下图所示进行配置,然Save后点击页面左下角的Save位置。

5.确保将CUBE证Secure Certificate Subject or Subject Alternate Name书的公用名(CN)设置为,因为它必须匹配。
6.单击Copy按钮,将CVP呼叫服务器证书的Name更改为SecureSipTLSforCVP ,并将Secure Certificate Subject 更改为CN,因为它必须匹配。单击Save按钮。

将SIP中继安全配置文件关联到各自的SIP中继
步骤:
- 在CUCM Administration页面上,导航至
Device > Trunk。

- 搜索CUBE中继。在本示例中,CUBE中继名称为
vCube。单击Find。

- 点击vCUBE以打开vCUBE中继配置页面。
- 向下滚动到
SIP Information部分,并将更Destination Port改为5061。
- 更
SIP Trunk Security Profile改为SecureSIPTLSForCube。

- 单击
Save然后单击Rest,以便Save应用更改。


- 导航到
Device > Trunk,然后搜索CVP中继。在本示例中,CVP中继名称为cvp-SIP-Trunk。单Find击。

- 单击
CVP-SIP-Trunk,打开CVP中继配置页面。
- 向下滚动到
SIP Information部分,然后更Destination Port改为5061。
- 更
SIP Trunk Security Profile改为SecureSIPTLSForCvp。

- 单击
SaveRest,以便进行save和应用更改。


安全代理与CUCM的设备通信
要启用设备的安全功能,必须安装本地重要证书(LSC)并为该设备分配安全配置文件。LSC拥有终端的公钥,该公钥由证书授权代理功能(CAPF)私钥签名。默认情况下,它不会安装在电话上。
步骤:
- 登录到
Cisco Unified Serviceability Interface。
- 导航至
Tools > Service Activation.

- 选择CUCM服务器并单击
Go .

- 选中
Cisco Certificate Authority Proxy Function,然后单击Save,激活该服务。点击Ok,确认。

- 确保服务已激活,然后导航至
Cisco Unified CM Administration。

- 成功登录CUCM管理后,导航至
System > Security > Phone Security Profile为代理设备创建设备安全配置文件。

- 查找与您的座席设备类型对应的安全配置文件。在本示例中,使用软件电话,因此选择
Cisco Unified Client Services Framework - Standard SIP Non-Secure Profile。单击 Copy
以便复制此配置文件。

- 将配置文件重命名为
Cisco Unified Client Services Framework - Secure Profile,更改参数(如图所示),然后点击页面左上角的Save。

- 成功创建电话设备配置文件后,导航至
Device > Phone。

- 单击
Find“列出所有可用电话”,然后单击“座席电话”。
- 座席电话配置页面打开。查找
Certification Authority Proxy Function (CAPF) Information部分。要安装LSC,请将Certificate Operation设置为Install/Upgrade,并Operation Completes by设置为未来的任何日期。

- 查找
Protocol Specific Information部分。更Device Security Profile改为Cisco Unified Client Services Framework – Secure Profile。

- 单击页面左上角的
Save。确保更改已成功保存,然后点击Reset。

- 此时将打开一个弹出窗口,单击
Reset以确认此操作。

- 代理设备再次向CUCM注册后,刷新当前页面并验证LSC是否安装成功。选中
Certification Authority Proxy Function (CAPF) Information部分Certificate Operation,必须设置为No Pending Operation,Certificate Operation Status设置为Upgrade Success。

- 请参阅步骤。7-13,以保护要用于保护CUCM的SIP的其他代理设备。
验证
要验证SIP信令是否受到适当保护,请执行以下步骤:
- 打开到vCUBE的SSH会话,运行命令
show sip-ua connections tcp tls detail,并确认当前未与CVP(198.18.133.13)建立TLS连接。

注意:此时,在CUCM(198.18.133.3)上仅启用一个与CUCM的SIP选项的活动TLS会话。 如果未启用SIP选项,则不存在SIP TLS连接。
- 登录到CVP并启动Wireshark。
- 拨打联系中心号码。
- 导航至CVP会话;在Wireshark上,运行此过滤器以检查使用CUBE的SIP信令:
ip.addr == 198.18.133.226 && tls && tcp.port==5061

检查:是否已建立SIP over TLS连接?如果是,输出确认CVP和CUBE之间的SIP信号是安全的。
5.检查CVP和CVVB之间的SIP TLS连接。在同一Wireshark会话中,运行此过滤器:
ip.addr == 198.18.133.143 && tls && tcp.port==5061

检查:是否已建立SIP over TLS连接?如果是,输出确认CVP和CVVB之间的SIP信号是安全的。
6.您还可以从CUBE验证与CVP的SIP TLS连接。导航到vCUBE SSH会话,并运行此命令以检查安全SIP信号:
show sip-ua connections tcp tls detail

检查:是否与CVP建立了SIP over TLS连接?如果是,输出确认CVP和CUBE之间的SIP信号是安全的。
7.此时,呼叫处于活动状态,您听到保留音乐(MOH),因为没有座席可以应答呼叫。
8.使座席能够应答呼叫。
.
9.座席将被保留,并且呼叫被路由到他/她。单击Answer,应答呼叫。

10.呼叫连接到座席。
11.为了验证CVP和CUCM之间的SIP信号,请导航到CVP会话,并在Wireshark中运行此过滤器:
ip.addr == 198.18.133.3 && tls && tcp.port==5061

检查:是否所有与CUCM(198.18.133.3)的SIP通信都通过TLS进行?如果是,输出确认CVP和CUCM之间的SIP信号是安全的。
故障排除
如果未建立TLS,请在CUBE上运行以下命令以启用debug TLS进行故障排除:
Debug ssl openssl errors
Debug ssl openssl msg
Debug ssl openssl states