IBM MQ docker将个人证书添加到.kdb



我使用以下命令在IBMMQ(docker(中创建了一个kdb文件:

runmqakm -keydb -create -db key.kdb -stash -pw password -type cms

我创建了一个自签名证书:

openssl genrsa -out ca.key 2048
openssl req -new -x509 -key ca.key -subj "$prefix/CN=ca" -out ca.crt
openssl pkcs12 -export -out ca.pfx -in ca.crt -nokeys
openssl pkcs12 -export -in ca.crt -inkey ca.key -out ca.p12 -name myca -CAfile ca.crt -passin pass:mypass -passout pass:mypass

现在我想把我自己的ca.crt作为个人证书添加到kdb中,我的意思如下:

runmqakm -cert -list -db key.kdb -stashed
Certificates found
* default, - personal, ! trusted, # secret key
-   CAlabel

我尝试过以下命令:

runmqckm -cert -import -file ca.pfx -pw mypass -type pkcs12 -target filename -target_pw password -target_type cms -label CAlabel
runmqckm -cert -import -file ca.p12 -pw mypass -type pkcs12 -target filename -target_pw password -target_type cms -label CAlabel

但是继续面对这个错误(在docker中以root身份登录:docker exec-it-u 0 contained sh(:

The database doesn't contain an entry with label 'CAlabel'.
Check the label and try again.

还有(正常登录docker:docker exec-ti contained/bin/bash(

Dec 19, 2021 7:48:57 AM java.util.prefs.FileSystemPreferences$1 run
WARNING: Couldn't create user preferences directory. User preferences are unusable.
Dec 19, 2021 7:48:57 AM java.util.prefs.FileSystemPreferences$1 run
List item
WARNING: java.io.IOException: No such file or directory
The input file '/mnt/mqm/data/qmgrs/QM1/ssl/ca.pfx' could not be found.
Check the database path.

有人建议我如何解决这个问题吗?

此命令将把p12文件中包含的所有证书导入kdb。

runmqcakm -cert -import -file ca.p12 -pw mypass -type pkcs12 -target key.kdb -target_stashed -target_type cms

最新更新