简介
本文档介绍在11.x版中实施的Cisco Unified Communications Manager(CUCM)的证书管理方面所取得的进步。
先决条件
要求
Cisco 建议您了解以下主题:
使用的组件
本文档中的信息基于以下软件版本:
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您使用的是真实网络,请确保您已经了解所有命令的潜在影响。
背景信息
CUCM证书管理可帮助统一通信或安全管理员利用优势更高效地管理证书。所做增强的优势包括在CUCM和IM&Presence中删除不需要的过期证书时减少时间。
证书管理
旧版本
在CUCM版本11之前,如果删除证书,则显示此消息。

证书仅从启动删除操作的节点删除。
如果其他节点中未删除同一证书,则删除的证书将重新填充到最初删除该证书的节点中。这是由于名为Certificate Change Notification的证书监控服务。在旧版CUCM中,最佳做法是在删除证书之前,在所有CUCM节点上停止证书更改通知服务。旧版本的另一个缺点是需要登录每个节点的操作系统管理部分,以删除单个不需要或过期的证书,这将变得繁琐且耗时,对于大集群而言尤其如此。
新版本
从CUCM版本11.0或更高版本开始,从当前节点删除的任何不需要或过期的证书也会从集群中的所有其他节点删除。

该增强功能用于解决以下缺陷:
CSCto86463 — 已删除的证书重新出现,无法从CUCM中删除证书
CSCus28550 — 证书管理增强功能,可从所有节点删除证书
常见问题
问:此增强中包含哪些类型的证书?
答:对于Cisco Unified Communications Manager:
- tomcat-trust
- CallManager-trust
- phone-sast-trust
对于Cisco Unified Communications Manager IM & Presence:
问:在后端,此增强会发生什么情况?
答:在任何一个CUCM节点中删除证书后:
- 证书从本地节点删除
- 平台事件会触发将同一证书删除到所有其他节点。
弗里菲
通过节点中的OS Administration页面删除证书后,登录到其他节点并检查证书是否存在。如果未从所有节点删除已删除的证书,请检查通过证书删除实例生成的日志。
在常见工作场景中,这些是预期日志。
系统日志
平台事件在其他节点(发起证书删除的节点除外)中可见。 在本示例中,从发布方删除了名为CUCMSUB1.pem的tomcat-trust证书,在用户的系统日志中显示此证书。
Aug 6 20:20:47 CUCMSUB1 user 6 ilog_impl: Received request for platform-event (--no-wait platform-event-clusterwide-certificate-delete HOSTNAME=CUCM-PUB UNIT=tomcat-trust NAME=CUCMSUB1.pem)
IPT平台CertMgr日志
在CertMgr日志中,记录确认证书处于从数据库条目删除的队列中。
2016-08-06 21:22:06,151 INFO [main] - IN -- CertDBAction.java - deleteCertificateInDB(certInfo) -
2016-08-06 21:22:06,151 INFO [main] -
DBParameters ...
PKID : null
CN : L=BGL,ST=Karnataka,CN=CUCMSUB1,OU=TAC,O=Cisco,C=IN
serialNo : 4d6dc0cb7bc73e70c3ded20690d15fa8
hostName : CUCMSUB1
issuerName : L=BGL,ST=Karnataka,CN=CUCMSUB1,OU=TAC,O=Cisco,C=IN
Certificate : Not Printing huge Certificate String..
IPV4Address : 10.106.99.196
IPV6Address :
TimeToLive : NULL
TkCertificateDistribution :1
UNIT : tomcat-trust
TYPE : trust-certs
ROLE : null
RoleMoniker : null
RoleEnum :null
SERVICE : null
ServiceMoniker : null
ServiceEnum :0
2016-08-06 21:22:06,151 INFO [main] - DB - Certifciate Store Plugin Handler is :com.cisco.ccm.certmgmt.db.CertDBImpl
2016-08-06 21:22:06,156 INFO [main] - IN -- CertDBImpl.java - deleteCertificate(certInfo) –
在CertMgr日志中可以看到为删除证书而触发的SQL命令。
2016-08-06 21:22:08,980 DEBUG [main] - Delete query of CERTIFICATEPROCESSNODEMAP :DELETE FROM CERTIFICATEPROCESSNODEMAP WHERE FKCERTIFICATE="cdd0365a-2d17-3483-4d00-1bf08f942cf5" AND SERVERNAME = "CUCMSUB1"
2016-08-06 21:22:08,980 DEBUG [main] - execute(DELETE FROM CERTIFICATEPROCESSNODEMAP WHERE FKCERTIFICATE="cdd0365a-2d17-3483-4d00-1bf08f942cf5" AND SERVERNAME = "CUCMSUB1")
从CertMgr日志中,条目确认证书已从FILE-SYSTEM(带pem或der扩展的证书)中删除。
2016-08-06 21:22:09,009 DEBUG [main] - deleteDERandPEM: sCertDir = /usr/local/platform/.security/tomcat/trust-certs --- sAlias = CUCMSUB1
2016-08-06 21:22:09,009 INFO [main] - IN -- TomcatCertMgr.java - removeFromKeyStore(..) -
2016-08-06 21:22:09,010 INFO [main] - IN -- RSACryptoEngine.java - removeFromKeyStore(keystoreFile, keystorePass, alias) -
2016-08-06 21:22:09,010 INFO [main] - IN -- RSACryptoEngine.java - loadKeyStore(keystoreFile, keystorePass) -
2016-08-06 21:22:09,086 INFO [main] - OUT -- RSACryptoEngine.java - loadKeyStore -
2016-08-06 21:22:09,103 DEBUG [main] - Removing certificate from keystore : CUCMSUB1
如果证书删除仍未反映到集群中的其余节点或日志显示错误,请继续向CUCM团队提交TAC案例。