【发布时间】:2020-10-03 20:33:37
【问题描述】:
我正在尝试使用以下命令连接到我工作的公司的远程 MQ,该命令是在我的机器上安装 MQ 客户端 (IBM MQ version 9.04.0) 后出现的,
输入:
P:\>amqssslc -s TLS_RSA_WITH_AES_256CBC_SHA256 -k "t:\Desktop\certificates\key" -x "server.com(1414)" -c "0000%XXXX%QMGR" -m QMGR
输出:
Sample AMQSSSLC start Connecting to queue manager
Using the server connection channel 0000%XXXX%QMGR
on connection name server.com(1414).
Using SSL CipherSpec TLS_RSA_WITH_AES_256CBC_SHA256
Using SSL key repository stem t:\Desktop\certificates\key
No OCSP configuration specified
MQCONNX ended ith reason code 2393
其中-k表示key.*路径,即一组文件(kdb、rdb、sht)。这些文件是使用IKeyMan - IBM Key Manager 从cer.jks 文件创建的,当前开发人员使用该文件连接网络应用程序。
错误日志文件显示以下错误:
06/11/202020 19:29:45 - Process(25780.1) User(username) Program(amqssslc.exe)
Host(myhost) Installation(Installation1)
VRMF(9.1.3.0)
Time(2020-06-11T09:24:53.270Z)
RemoteHost(xx.xx.xxx.56)
CommenInsert1(0000%XXXX%QMGR)
CommenInsert2(server.com(1414))
AMQ9642: No SSL or TLS certificate for channel '0000%XXXX%QMGR'.
EXPLANATION:
The channel '0000%XXXX%QMGR' 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 'server.com(1414)'.
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.
这让我相信该错误与通道端的握手有关。 Jks 证书适用于与服务器上的队列建立连接的其他开发人员。
我的 mqclient.ini 文件添加了以下配置:
TCP:
KeepAlive = Yes
CLientExithPath:
ExitsDefaultPath=C:\ProgramData\IBM\MQ\exits
ExitsDefaultPath64=C:\ProgramData\IBM\MQ\exits64
SSL:
OCSPAuthentication=NO
OCSPCheckExtension=NO
CDPCheckExtension=NO
可能是什么问题?我还尝试更改 我的证书的标签 以指示 key.kdb 文件中有个人证书,但是,它会丢弃一个不同的错误,这是公司 IT 人员告诉我的我工作,就是不需要这个证书标签。
【问题讨论】:
-
嗨乔希,感谢您的快速建议。版本是 9.1.3.0,我们有不同的机器,我用这个当前版本重新运行了所有东西。当使用 -l 运行以指示个人证书时(正如您在运行
runmqakm时提到的那样,它包含-)返回完全相同的错误。我使用 IBM 密钥管理 GUI 将jks转换为kdb。首先打开 jks,然后打开saving askdb。这一步错了吗? @JoshMC -
对不起,我更正了密码并使用带有
-l的证书标签重新运行命令,这是我现在得到的错误,MQCONNX ended with reason code 2035 -
这是一个安全错误,但您正在通过 tls 协商。
-
你知道可能是什么问题吗?
-
检查的最佳位置是队列管理器的
AMQERR01.LOG文件。
标签: ssl ssl-certificate ibm-mq keystore