简介
本文档介绍如何配置Cisco Unified Contact Center Express (UCCX)以使用自签名和签名证书。
先决条件
要求
在您继续执行本文档中介绍的配置步骤之前,请确保您有权访问这些应用程序的“操作系统(OS)管理”页面:
管理员还可以访问代理和主管客户端PC上的证书存储区。
FQDN、DNS和域
UCCX配置中的所有服务器都必须安装域名系统(DNS)服务器和域名。此外,还需要代理、主管和管理员通过完全限定域名(FQDN)访问UCCX配置应用。
如果域更改或首次填充,则可以重新生成证书。将域名添加到服务器配置后,先重新生成所有Tomcat证书,然后再将其安装在其他应用程序上、客户端浏览器中或生成用于签名的证书签名请求(CSR)。
使用的组件
本文档中介绍的信息基于以下硬件和软件组件:
- UCCX网络服务
- UCCX通知服务
- UCCX平台Tomcat
- 思科Finesse Tomcat
- 思科统一情报中心(CUIC) Tomcat
- SocialMiner/CCP Tomcat
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
背景信息
引入并存Finesse和CUIC、UCCX与SocialMiner之间电邮和聊天集成,以及使用MediaSense以通过Finesse记录、了解和安装证书,因此排除证书问题的能力现在变得至关重要。
本文档介绍如何在涵盖以下内容的UCCX配置环境中使用自签名证书和签名证书:
- UCCX通知服务
- UCCX网络服务
- UCCX脚本
- 并存Finesse
- 共存CUIC(实时数据和历史报告)
- SocialMiner(聊天)
在UCCX配置中,必须在应用(服务器)以及代理和主管客户端桌面上安装证书(签名或自签名)。
从版本11.6.2开始,在UCCX中添加了多SAN支持。
外部聊天需要公开在SomicalMiner/CCP上签名CA证书,才能在Internet上正常工作。
配置
本节介绍如何配置UCCX以使用自签名和签名证书。
配置图
已签名证书
对于UCCX配置,推荐的证书管理方法是使用已签名的证书。这些证书可以由内部证书颁发机构(CA)或已知的第三方CA签署。
在Mozilla Firefox和Microsoft Edge等主要浏览器中,默认情况下会安装已知第三方CA的根证书。默认情况下,由这些CA签名的UCCX配置应用的证书是受信任的,因为它们的证书链以浏览器中已安装的根证书结尾。
也可以通过组策略或其他当前配置在客户端浏览器中预安装内部CA的根证书。
您可以根据客户端浏览器中CA的根证书的可用性和预安装情况,选择是否由已知的第三方CA或内部CA签署UCCX配置应用证书。
安装签名的Tomcat应用证书
针对UCCX发布服务器和订阅服务器、SocialMiner以及MediaSense发布服务器和订阅服务器管理应用程序的每个节点,完成以下步骤:
- 导航到操作系统管理页面,然后选择安全>证书管理。
- 点击生成 CSR。
- 从Certificate List下拉列表中,选择tomcat作为证书名称并单击Generate CSR。
- 导航到安全>证书管理,然后选择下载CSR。
- 在弹出窗口中,从下拉列表中选择tomcat并单击Download CSR。
如前所述,将新CSR发送到第三方CA或使用内部CA进行签名。此过程可以生成以下签名证书:
- CA的根证书
- UCCX发布服务器应用证书
- UCCX用户应用证书
- SocialMiner/CCP应用证书
注意:将CSR中的Distribution字段保留为服务器的FQDN。
注意:从11.6版开始,UCCX支持多服务器(SAN)证书。但是,SAN只能包括UCCX节点1和节点2。其他服务器(如SocialMiner)不能包含在UCCX的SAN中。请参阅页面底部的CUCM SAN示例,该示例对UCCX也有效。
注意:UCCX仅支持1024和2048位的证书密钥长度。
在每个应用服务器上完成以下步骤,以便将根证书和应用证书上传到节点:
注意:如果在发布服务器(UCCX或MediaSense)上上传根证书和中间证书,则会自动将其复制到订阅服务器。如果所有应用证书都通过同一证书链进行签名,则无需将根证书或中间证书上传到配置中的其他非发布方服务器上。
- 导航到操作系统管理页面,然后选择安全>证书管理。
- 单击Upload Certificate。
- 上传根证书并选择tomcat-trust作为证书类型。
- 单击 Upload File。
- 单击Upload Certificate。
- 上传应用证书并选择tomcat作为证书类型。
- 单击 Upload File。
注意:如果从属CA对证书签名,请上传从属CA的根证书作为tomcat-trust证书,而不是根证书。如果发布了中间证书,则除了应用证书外,还要将此证书上传到tomcat-trust存储区。
- 完成后,重新启动这些应用程序:
- Cisco MediaSense发布服务器和订阅服务器
- 思科SocialMiner
- Cisco UCCX发布服务器和订阅服务器
注意:使用UCCX和SocialMiner 11.5时,会有一个称为tomcat-ECDSA的新证书。将签名的tomcat-ECDSA证书上传到服务器时,请将应用证书作为tomcat-ECDSA证书(而不是tomcat证书)上传。有关ECDSA的详细信息,请参阅链接的相关信息部分,以了解和配置ECDSA证书。从11.6开始,ECDSA证书的使用已从UCCX解决方案中完全删除。这包括UCCX、SM/CCP、CUIC和Finesse。
自签名证书
在外围服务器上安装
UCCX配置中使用的所有证书都预安装在配置应用中,并且是自签名证书。这些自签名证书在提供给客户端浏览器或其他配置应用时不会隐式受信任。虽然建议对UCCX配置中的所有证书进行签名,但您可以使用预安装的自签名证书。
对于每个应用关系,您必须下载适当的证书并将其上传到应用。要获取和上传证书,请完成以下步骤:
- 访问应用程序OS Administration页并选择Security > Certificate Management。
- 点击适当的证书.pem文件并选择下载:
- 要在相应应用上上传证书,请导航到OS Administration 页面并选择Security > Certificate Management。
- 单击Upload Certificate / Certificate Chain:
- 完成后,重新启动这些服务器:
- 思科SocialMiner
- Cisco UCCX发布服务器和订阅服务器
要在客户端计算机上安装自签名证书,请使用组策略或软件包管理器,或在每个代理PC的浏览器中单独安装它们。
对于Microsoft Edge,请将客户端自签名证书安装到受信任的根证书颁发机构库中。
对于Mozilla Firefox,请完成以下步骤:
- 导航到工具>选项。
- 单击 Advanced 选项卡。
- 单击查看证书。
- 导航到Servers选项卡。
- 点击添加例外情况。
重新生成自签名证书
如果自签名证书过期,则需要重新生成这些证书,并重新执行在外围服务器上安装中的配置步骤。
- 访问应用 操作系统管理 页面并选择 Security > Certificate Management.
- 单击适当的证书并选择重新生成。
- 必须重新启动其证书重新生成的服务器。
- 对于每个应用关系,您必须下载适当的证书,并从在外围服务器上安装中的配置步骤将其上传到应用。
集成和客户端配置
UCCX到SocialMiner
UCCX使用SocialMiner REST和通知API来管理邮件联系人和配置。两个UCCX节点必须使用SocialMiner REST API并由SocialMiner通知服务通知,因此请在两个UCCX节点上安装SocialMiner Tomcat证书。
将SocialMiner服务器的签名或自签名证书链上传到UCCX tomcat-trust密钥库。
将发布服务器和订阅服务器节点的UCCX tomcat证书作为tomcat-trust密钥库上传到SocialMiner服务器。
UCCX AppAdmin客户端证书
UCCX AppAdmin客户端证书用于管理UCCX系统。要为UCCX管理员安装UCCX AppAdmin证书,请在客户端PC上,为每个UCCX节点导航到https://<UCCX FQDN>/appadmin/main,然后通过浏览器安装证书。
UCCX平台客户端证书
UCCX网络服务用于向客户端浏览器传送聊天联系人。要安装适用于UCCX代理和超级用户的UCCX平台证书,请在客户端PC上,为每个UCCX节点导航到https://<UCCX FQDN>/appadmin/main,然后通过浏览器安装证书。
通知服务客户端证书
Finesse、UCCX和CUIC使用CCX通知服务通过可扩展消息传送和网真协议(XMPP)将实时信息发送到客户端桌面。用于实时Finesse通信以及CUIC实时数据。
要在使用实时数据的代理和主管或报告用户的PC上安装通知服务客户端证书,请对每个UCCX节点导航到https://<UCCX FQDN>:7443/,并通过浏览器安装证书。
Finesse客户端证书
Finesse客户端证书由Finesse桌面使用,以便连接到Finesse Tomcat实例,以便在桌面和共存Finesse服务器之间进行REST API通信。
要安装代理和主管的Finesse证书,请在客户端PC上,导航到每个UCCX节点的https://<UCCX FQDN>:8445/,然后通过浏览器提示安装证书。
要为Finesse管理员安装Finesse证书,请在客户端PC上,为每个UCCX节点导航到https://<UCCX FQDN>:8445/cfadmin,然后通过浏览器提示安装证书。
SocialMiner/CCP客户端证书
客户端计算机上必须安装SocialMiner Tomcat证书。座席接受聊天请求后,“聊天”小工具会被重定向到代表聊天室的URL。此聊天室由SocialMiner服务器托管,包含客户或聊天联系人。
为了在浏览器中安装SocialMiner证书,请在客户端PC上导航到https://<SocialMiner FQDN>/并通过浏览器提示安装证书。
CUIC客户端证书
CUIC Tomcat证书可以安装在客户端计算机上,供在CUIC网页或桌面小工具中使用CUIC Web界面进行历史报告或实时数据报告的座席、主管和报告用户使用。
为了在浏览器中安装CUIC Tomcat证书,请在客户端PC上导航到https://<UCCX FQDN>:8444/,然后通过浏览器提示安装证书。
CUIC实时数据证书(自11.x起)
CUIC对后端Live数据使用套接字IO服务。对于使用CUIC Web界面访问实时数据或使用Finesse中的实时数据小工具的代理、主管和报告用户,可以在客户端计算机上安装此证书。
要在浏览器中安装套接字IO证书,请在客户端PC上导航到https://<UCCX FQDN>:12015/并通过浏览器提示安装证书。
可从脚本访问的第三方应用程序
如果UCCX脚本旨在访问第三方服务器上的安全位置(例如,将URL Document步骤设置为HTTPS URL或将Rest Call设置为HTTPS REST URL),请将第三方服务的签名或自签名证书链上传到UCCX tomcat-trust密钥库。要获取此证书,请访问UCCX OS Administration页面并选择Upload Certificate。
配置UCCX引擎是为了在第三方应用通过脚本步骤访问安全位置时向其提供这些证书时,在平台Tomcat密钥库中搜索第三方证书链。
必须将整个证书链上传到平台Tomcat密钥库(可通过操作系统管理页面访问),因为Tomcat密钥库在默认情况下不包含根证书。
完成这些操作后,请重新启动Cisco UCCX引擎。
验证
为了验证是否正确安装了所有证书,您可以测试本节中介绍的功能。如果未显示证书错误,并且所有功能均正常工作,则证书安装正确。
- 通过SocialMiner/CCP配置座席网络聊天。通过Web表单插入聊天联系人。确认座席收到接受聊天联系人的标语,同时确认接受聊天联系人后,聊天表单加载正确,并且座席可以接收和发送聊天消息。
- 尝试通过Finesse登录座席。确认未显示证书警告,并且网页未提示将证书安装到浏览器中。验证代理是否可以正常更改状态,并且向UCCX发出的新呼叫是否正确呈现给代理。
- 在座席和主管Finesse桌面布局中配置实时数据小工具后,请登录座席、主管和报告用户。验证实时数据小工具是否正确加载、初始数据是否填充到小工具中,以及底层数据更改时数据是否刷新。
- 尝试从浏览器连接到两个UCCX节点上的AppAdmin URL。验证当系统提示登录页面时是否不显示证书警告。
故障排除
问题- 用户ID/密码无效
UCCX Finesse代理无法登录,出现错误“Invalid User ID/Password”(用户ID/密码无效)。
原因
Unified CCX抛出异常“SSLHandshakeException”,无法与Unified CM建立连接。
解决方案
- 验证Unified CM Tomcat证书未过期。
- 确保您在Unified CM中上传的任何证书都具有标记为重要的以下扩展名之一:
X509v3密钥用法(OID - 2.5.29.15)
X509v3基本限制(OID - 2.5.29.19)
如果将任何其他扩展标记为重要,由于Unified CM证书验证失败,Unified CCX和Unified CM之间的通信将失败。
问题- CSR SAN和证书SAN不匹配
CA签名证书的上传显示错误“CSR SAN和证书SAN不匹配”。
原因
CA可以在Certificate Subject Alternative Names (SAN)字段中添加另一个父域。默认情况下,CSR可以有以下SAN:
SubjectAltName [
example.com (dNSName)
hostname.example.com (dNSName)
]
CA可以返回一个证书,其中另一个SAN已添加到证书中:主机名示例。在这种情况下,证书可以具有额外的SAN:
SubjectAltName [
example.com (dNSName)
hostname.example.com (dNSName)
www.hostname.example.com (dNSName)
]
这会导致SAN不匹配错误。
解决方案
在UCCX Generate Certificate Signing Request(UCCX生成证书签名请求)页的Subject Alternate Name (SANs)(主题备用名称(SAN))部分,使用空的Parent Domain(父域)字段生成CSR。这样,不会使用SAN属性生成CSR,CA可以格式化SAN,并且当您将证书上传到UCCX时,不会出现SAN属性不匹配的情况。请注意,“父域”(Parent Domain)字段默认为UCCX服务器的域,因此配置CSR的设置时必须明确删除该值。
问题- NET::ERR_CERT_COMMON_NAME_INVALID
当您访问任何UCCX、MediaSense或SocialMiner网页时,会收到错误消息。
“您的连接不是专用连接。 攻击者可能会尝试从<Server_FQDN>窃取您的信息(例如,密码、消息或信用卡)。NET::ERR_CERT_COMMON_NAME_INVALID。 此服务器无法证明它是<Server_FQDN>;其安全证书来自[missing_subjectAltName]。这可能是由于配置错误或攻击者拦截您的连接造成的。”
原因
Chrome版本58引入了新的安全功能,它报告网站的公共名称(CN)未作为SAN包含时,其证书是不安全的。
解决方案
- 您可以导航到高级>继续执行<Server_FQDN>(不安全)以继续访问站点并接受证书错误。
- 使用CA签名的证书可以完全避免此错误。生成CSR时,服务器的FQDN作为SAN包含在内。CA可以对CSR签名,在将签名证书上传回服务器后,服务器的证书在SAN字段中具有FQDN,因此不会显示错误。
更多信息
请参阅Chrome 58的弃用和删除部分删除证书中的commonName匹配支持。
证书缺陷
- 思科漏洞ID CSCvb46250 - UCCX:Tomcat ECDSA证书对Finesse实时数据的影响
- 思科漏洞ID CSCvb58580 -无法通过RSA CA签名的tomcat和tomcat-ECDSA登录到SocialMiner
- 思科漏洞ID CSCvd56174 - UCCX:由于SSLHandshakeException导致Finesse代理登录失败
- 思科漏洞ID CSCuv89545 - Finesse堵塞漏洞
相关信息