gpt4 book ai didi

ssl - 没有用于 MQ channel 的 SSL 或 TLS 证书(从终端运行 - Windows 10)

转载 作者:行者123 更新时间:2023-12-04 22:37:19 24 4
gpt4 key购买 nike

我正在尝试使用以下命令连接到我工作的公司的远程 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当前开发人员用于连接 Web 应用程序的文件。

错误日志文件显示以下错误:
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.

它使我相信该错误与 channel 端的握手有关。 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 人员告诉我,不需要此证书标签。

最佳答案

最后,OP (@EdgarHernandez) 注意到该错误是 CipherSpec 中的拼写错误,TLS_RSA_WITH_AES_256CBC_SHA256而不是正确的名称TLS_RSA_WITH_AES_256_CBC_SHA256导致/促成了 2393

将我的故障排除注释从这个答案的评论中放入,以便将来查看类似错误的 SO 用户可以搜索它们。

Java/JMS 如何选择证书发送到队列管理器和使用 C 库的客户端如何选择证书发送到队列管理器是不同的。

Java/JMS:

Java 不使用证书标签,它根据队列管理器信任的颁发者提供它认为匹配的证书以呈现给队列管理器,因此拥有由 CA 颁发的个人证书就足够了队列管理器信任。

C 库客户端:

C 库客户端(amqssslc 是)根据证书标签选择证书。默认情况下,它将查找标签 ibmwebspheremq<lowercase username> , 所以如果你以用户身份运行 edgar MQ 客户端将查找的证书是 ibmwebspheremqedgar

  • 在 MQ v8.0 和更高版本中,您可以指定一个替代标签而不是默认值。 amqssslc使用 -l 执行此操作标签选项。因此,如果您的证书仅标记为 edgar ,您应该可以添加-l edgar拿起证书。


  • 使用以下命令检查您是否列出了个人证书,它应该以 - 为前缀在第一列中,如果它仅以 ! 为前缀那么它只是 key 的公共(public)部分,而不是私有(private)部分。
    runmqakm -cert -list -db t:\Desktop\certificates\key.kdb -stashed

    关于ssl - 没有用于 MQ channel 的 SSL 或 TLS 证书(从终端运行 - Windows 10),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62371139/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com