我们正在尝试将新续订的证书导入到我们生产的MQ窗口中的密钥库中,但是在部署证书之后,这些渠道将重新定义状态。看起来我们的队列管理器不会从以下错误中读取证书。证书的发行者之前和现在都是相同的。使用的证书是rootCA5,serverCA5和个人证书。当我们放回旧证书时,渠道工作正常。我已经检查了ssl文件夹和密钥库的权限,它们没问题。寻找一些有价值的建议,因为我们的旧证书将在明天到期。我们使用的MQ版本是MQ7.1.0.7。
我们尝试在qm.ini文件中添加以下参数,昨天我们遇到了同样的问题。
SSL:
OCSPAuthentication=OPTIONAL
OCSPCheckExtensions=NO
队列管理器的AMQERR01.LOG中记录了以下错误:
10/18/2017 19:29:45 - Process(3084.1) User(4055TMQU) Program(runmqchl.exe)
Host(abcdefgh) Installation(Installation1)
VRMF(7.1.0.7) QMgr(QMPDBP)
AMQ9642: No SSL or TLS certificate for channel 'xxxxxx.yyyyyy'.
EXPLANATION:
The channel 'xxxxxx.yyyyyy' did not supply a certificate to use during SSL
or TLS handshaking, but a certificate is required by the remote queue manager.
The remote host is 'abcdefgh (10.x.x.x)(1415)'.
The channel did not start.
ACTION:
Ensure that the key repository of the local queue manager or MQ client contains
a certificate which is associated with the queue manager or client.
Alternatively, if appropriate, change the remote channel definition so that its
SSLCAUTH attribute is set to OPTIONAL and it has no SSLPEER value set.
答案 0 :(得分:2)
对于IBM MQ v7.5及更低版本,队列管理器证书的标签必须是与折叠为小写的队列管理器名称连接的确切字符串ibmwebspheremq
。
根据您发布的错误,我可以看到队列管理器名称为QMPDBP
,因此请检查证书的标签是否与字符串ibmwebspheremqqmpdbp
匹配
请注意,对于IBM MQ v8.0及更高版本,您可以通过设置队列管理器CERTLABL
属性来告知队列管理器要使用的证书标签的名称,这默认为匹配所需的值。 v7.5及更低版本。
例如:
ALTER QMGR CERTLABL('DifferentLabel`)