2015-09-07 135 views
2

我们的一个队列管理器证书即将过期,建议更新它比替换旧版本更便宜。这些就是我们下面(通过IBM密钥管理)下面的步骤:更新队列管理器的证书

  1. 选择个人证书,然后选择重新创建 - Renewal.csr
  2. 发送Renewal.csr到CA的证书COMODO - RenewedComodo
  3. 选择个人证书并选择Receive以导入RenewedComodo。 (刷新安全)

创建新证书时,我们选择个人证书申请并选择new.This是第一步。我们遵循2和3步骤。

这里是我的查询,比选择重新创建其他的,没有任何区别我已经建立了。

  1. 当我有两个证书作为RenewalCOMODO和oldCOMODO时,队列管理器如何知道哪个是正确的。

  2. 如果选择未过期,不会它是具有在数据库中的过期一个?

  3. 如果我们需要删除旧的,添加一个更新后,它怎么会从更换证书有什么不同?

回答

1

这将需要一点背景才能得到答案。

当您最初创建的CSR你真正得到的是一个公钥/私钥对和证书签名请求或“企业社会责任”。 CSR包含公钥和请求的属性,如可分辨名称。 CSR使用您的私钥签名,以便任何收件人都可以使用嵌入的公钥来验证CSR和所请求的属性没有被篡改。

什么是少为人知的是,CA未绑定应用在CSR中提供的所有属性。例如,如果购买的证书是域验证证书,并且CSR包含OU字段的值,则CA将仅删除它们,只留下DN和SAN字段以及它们自己的信息。因此,您取回的证书可能与原始CSR有不同的字段。

当您从正在使用的证书相同的过程,除了新的CSR再次发生重新创建CSR反映了CA最初所做的任何更改。仔细检查原始CSR和新生成的CSR通常会在SAN中显示出差异,或者已将电子邮件联系人添加到DN中。但是,从CA的角度来看,这些差异是美观的。

考虑到这一点,我们再来看看这些问题。

当我有两个证书作为RenewalCOMODO和oldCOMODO时,队列管理器如何知道哪个是正确的?

假设您正在讨论CA在响应原始和续订CSR后提供的工件,QMgr不知道哪个是哪个。您可以运行receive命令,并假设它们都由相同的CA签名并使用相同的签署者链,则可以使用。

这是管理员的责任,以验证正确安装证书。

如果选择哪一个没有过期,是不是已经在数据库中过期了?

不可以。每个成功的receive命令都会保留个人证书的私人部分并替换公开部分。该标签与私营部分相关联,这是检查的唯一性,所以你不能(或至少应该不是如果没有错误)能够在同一个KDB两个副本。

如果我们需要删除旧的,添加更新的后,与替换证书有什么区别?

只要确保你得到正确的证书。始终执行runmqakm -cert -details命令或使用GUI检查证书。

补充建议:

  • 它的工作之前,务必使KDB的副本。
  • 将您的CSR和证书的副本保存在KDB目录中。
  • 我喜欢在文件名中使用时间戳,所以很明显历史是什么。我的文件名全部以YYYYMMDD开头,如20150908_QMName_CSR.arm20150908_QMName_CSR_signed.arm
  • 确保证书文件,KDB和目录拿着他们被设置为拒绝被比MQM服务帐户之外的任何人的任何访问的文件权限。如果不可行,请允许组访问,但要确保mqm组的成员尽可能少。 任何可以读取证书的人都可以使用它们。没有必要知道KDB使用其包含的证书的密码
  • 在进行维护,我喜欢做的KDB的新副本(带时间戳的文件名如前面所述),当我敢肯定,这是我准备改变QMGR的SSLKEYR属性指向它。然后我将旧文件更改为只读并在QMgr上发出RESET SECURITY TYPE(SSL)
  • 请务必记得在QMgr上发出RESET SECURITY TYPE(SSL)。这是一个相当具有破坏性的命令,所以尽量不要在QMgr忙时发布它。它将要求所有通道关闭,并且大量重新连接尝试将阻止它快速完成。