![使用 genkey 在 CentOS/RHEL 上生成 SHA256 SSL CSR](https://linux22.com/image/642264/%E4%BD%BF%E7%94%A8%20genkey%20%E5%9C%A8%20CentOS%2FRHEL%20%E4%B8%8A%E7%94%9F%E6%88%90%20SHA256%20SSL%20CSR.png)
生成 Web 服务器 SSL 证书 CSR 的官方推荐方法(根据 RHEL6 和 CentOS 6 文档)是使用 genkey 实用程序。按照文档使用时,这将生成具有 SHA1 签名的 CSR。我们的 CA 已请求具有 SHA256 签名的 CSR(因为我们希望根据新的 chrome/ie 浏览器要求获得 SHA256 SSL 证书)。我找不到有关如何使用 genkey 执行此操作的任何文档。我尝试了 --sha256 命令行标志,但 genkey 无法识别它。有人可以描述如何做到这一点吗?
答案1
交互式 genkey 命令不会为您提供更改默认值的选项,但如果您确实想使用该命令,您应该能够更新 /etc/pki/tls/openssl.cnf。
改变:
default_md = sha1
到:
default_md = sha256
或者您可以直接使用 openssl 命令。如果哈希算法默认设置为 SHA1,则可以使用开关 -sha256 强制使用 SHA2。
openssl req -new -sha256 -key private.key > new_sha256.csr
答案2
您所指的签名位于 SSL 证书中,而不是 CSR 中。这就是您找不到该选项的原因。:)
您需要做的是确保您的证书颁发者根据您的 CSR 使用正确的选项生成证书。具体方法因 CA 而异。例如,GoDaddy 通常在证书请求屏幕上您粘贴 CSR 的正下方有一个下拉框,您可以选择 SHA-1 或 SHA-2(将生成 SHA256 证书)。