请求 MQIPT 的 CA 签名证书

请求由可信认证中心 (CA) 签署的证书,以允许 MQIPT 使用 TLS。

开始之前

在开始执行此任务之前,请完成 MQ 中列出的步骤。

[MQ 9.4.0 2024 年 6 月][MQ 9.4.0 2024 年 6 月] 此任务假定您使用 mqiptKeytool 命令向 CA 申请新的证书,并且您的个人证书以文件的形式返回给您。 一个证书足以为与 MQIPT 路由建立的 TLS 连接启用服务器认证。 如果需要对 MQIPT 到路由目标的 TLS 连接进行客户机认证,请通过完成此任务中的步骤两次以创建两个密钥库来请求第二个证书。

关于本任务

[MQ 9.4.0 2024 年 6 月][MQ 9.4.0 2024 年 6 月]使用mqiptKeytool命令创建证书请求,并将签名的证书接收到密钥库中。 根据证书是由入站连接还是出站连接使用,在 SSLServerKeyRingSSLClientKeyRing MQIPT 路由属性中指定包含证书的密钥库的名称。

过程

  1. 输入以下命令以在 PKCS #12 密钥库中创建密钥对和关联证书:
    mqiptKeytool -genkeypair -keystore keystore_name -storetype pkcs12 -storepass password
                 -alias label -dname DN_identity
                 -keyalg key_algorithm -keysize key_size -sigalg signature_algorithm
    其中:
    -keystore 密钥库名称
    指定密钥库的名称。 例如,mqiptKeys.p12。 如果密钥库不存在,那么将创建该密钥库。
    -storepass 密码
    指定密钥库密码。
    -alias 标签
    指定证书标签。
    -dname DN_身份
    指定以双引号括起的证书的 X.500 专有名称。 例如, "CN=Test Certificate , OU=Sales , O=Example , C = US"
    -keyalg 密钥算法
    指定用于创建密钥对的算法。 例如, RSA
    -keysize 键大小
    指定密钥大小。 例如, 2048
    -sigalg 签名算法
    指定用于对证书进行签名的算法。 例如, SHA256WithRSA
    如果使用示例值,那么此命令将创建具有 2048 位 RSA 公用密钥的数字证书,并创建将 RSA 与 SHA-256 散列算法配合使用的数字签名。
    根据组织的安全需求,选择相应的公用密钥加密算法,密钥大小和数字签名算法。 有关更多信息,请参阅 MQIPT的数字证书注意事项
  2. 输入以下命令以创建证书签名请求:
    mqiptKeytool -certreq -keystore keystore_name -storetype pkcs12 -storepass password
                 -alias label -file certreq_filename
    其中:
    -keystore 密钥库名称
    指定密钥库的名称。 例如,mqiptKeys.p12。 如果密钥库不存在,那么将创建该密钥库。
    -storepass 密码
    指定密钥库密码。
    -alias 标签
    指定证书标签。
    -文件 certreq_filename
    指定证书请求的文件名。
    将命令创建的证书请求文件发送到要签名的 CA。
  3. 从 CA 接收签名证书时,请输入以下命令以将证书添加到密钥库:
    mqiptKeytool -importcert -keystore keystore_name -storetype pkcs12 -storepass password
                 -file cert_filename
    其中:
    -keystore 密钥库名称
    指定密钥库的名称。 例如,mqiptKeys.p12。 如果密钥库不存在,那么将创建该密钥库。
    -storepass 密码
    指定密钥库密码。
    -文件 cert_filename
    指定包含签名证书的文件的名称。
  4. 确保签署个人证书的 CA 的 CA 证书存在于 CA 密钥库中。 您可以选择是将 CA 证书添加到与个人证书相同的密钥库,还是添加到仅用于 CA 证书的单独密钥库。
    要使用单独的 CA 密钥库,可以使用 MQIPT随附的名为 sslCAdefault.pfx 的样本 CA 密钥库,或者创建新的 PKCS #12 密钥库。 将签署个人证书的 CA 的公用 CA 证书添加到 CA 密钥库,除非样本密钥库中已存在该证书。
    公用 CA 证书可能随您的个人证书一起返回。 如果未随证书一起返回公用 CA 证书,那么必须从提供个人证书的同一 CA 请求 CA 证书,然后将其添加到密钥库。
    输入以下命令以将 CA 证书添加到 CA 密钥库:
    mqiptKeytool -importcert -keystore keystore_name -storetype pkcs12 -storepass password
                 -file cert_filename -alias label
    其中:
    -keystore 密钥库名称
    指定 CA 密钥库的名称。 如果密钥库不存在,那么将创建该密钥库。
    -storepass 密码
    指定 CA 密钥库密码。
    -文件 cert_filename
    指定包含 CA 证书的文件的名称。
    -alias 标签
    指定要提供给 CA 证书的标签

后续操作

发出以下命令以加密密钥库密码:
mqiptPW
在提示时输入要加密的密钥库密码。 将 mqipt.conf 配置文件中相应属性的值设置为 mqiptPW 命令输出的加密密码。 根据证书由入站连接还是出站连接使用,设置 SSLServerKeyRingPWSSLClientKeyRingPW 属性的值或加密密码。 有关加密密钥库密码的更多信息,请参阅 加密存储的密码
要将这些新密钥库用于服务器认证,请将这些密钥库放在 MQIPT 主目录下名为 ssl 的目录中,并设置以下路由属性:
SSLClientCAKeyRing=C:\\mqiptHome\\ssl\\sslCAdefault.pfx
SSLClientCAKeyRingPW=encrypted_password
SSLServerKeyRing=C:\\mqiptHome\\ssl\\myServer.pfx
SSLServerKeyRingPW=encrypted_password
SSLServerCAKeyRing=C:\\mqiptHome\\ssl\\sslCAdefault.pfx
SSLServerCAKeyRingPW=encrypted_password
有关配置 MQIPT 以使用TLS的更多信息,请参阅 “TLS服务器身份验证 ”。