从认证中心接收到的 PEM 密钥库可以转换为用于 Build Forge 的密钥库。
关于此任务
如果您有来自认证中心的一组 PEM 文件,必须用它们为 Build Forge 创建一组 OpenSSL 和 JSSE 按键。
过程
- 在您的 PATH 中包括 Build Forge 工具目录。
- <bfinstall>/openssl
- <bfinstall>/ibmjdk/bin (Windows)
- <bfinstall>server/ibmjdk/bin(UNIX 或 Linux)
对于 UNIX 和 Linux,在 LD_LIBRARY_PATH 中包括以下目录:
<bfinstall>/openssl
- 将 PEM 文件转换为 PKCS12 密钥库。
请使用以下命令:
openssl pkcs12
-export
-name "buildforge"
-out buildForgeKeyStore.p12
-inkey <key.pem>
-passin pass:<pempassword>
-in <crt.pem>
-password pass:<bfpassword>
- 验证证书已添加且可读。
keytool -v
-list
-keystore buildForgeKeyStore.p12
-storepass <bfpassword>
-storetype pkcs12
如果您收到有关密钥大小无效的错误,请下载未受限制的策略文件。使用本部分开始处的指示信息。
- 导出公用证书。
在命令窗口中,转至 <bfinstall>/keystore,然后运行以下命令:
keytool -export
-alias buildforge
-file cert.der
-keystore buildForgeKeyStore.p12
-storepass <bfpassword>
-storetype pkcs12
- 证书存储在文件 cert.der 中。
- 使用在安装期间为密钥库指定的同一 <bfpassword>。否则,您需要更改配置。
- 创建信任库并导入公用证书。
在命令窗口中,转至 <bfinstall>/keystore,然后运行以下命令:
keytool -import
-noprompt -trustcacerts
-alias buildforge
-file cert.der
-keystore buildForgeTrustStore.p12
-storepass <bfpassword>
-storetype pkcs12
- 将公用客户机证书放在 buildForgeCert.pem 中。
在命令窗口中,转至 <bfinstall>/keystore,然后运行以下命令:
openssl pkcs12 -clcerts -nokeys
-in buildForgeKeyStore.p12
-passin: pass:<bfpassword>
-out buildForgeCert.pem
- 将证书和密钥放在 buildForgeKey.pem 中
在命令窗口中,转至 <bfinstall>/keystore,然后运行以下命令:
openssl pkcs12
-in buildForgeKeyStore.p12
-passin pass:<bfpassword>
-passout pass:<bfpassword>
-out buildForgeKey.pem
- 创建 PEM 认证中心 buildForgeCA.pem。
- 将 CA 根证书下载到 <bfinstall>/keystore 中。 该证书名为 CARootCert.crt。需要将其添加到 PEM 密钥库中,并且可以导入 buildForgeTrustStore.p12 中。
- 在命令窗口中,转至 <bfinstall>/keystore,然后运行以下命令:
cat CARootCert.crt > buildForgeCA.pem
keytool -import -noprompt -v -trustcacerts
-alias "CA Root"
-file CARootCert.crt
-keystore buildForgeTrustStore.p12
-storepass <bfpassword>
-storetype pkcs12
结果
Build Forge 使用受密码保护的 PEM 密钥库 buildForgeKey.pem。Apache 服务器启动时将提示输入密码。
如果不希望在启动时看到输入密码的提示,那么生成不受密码保护的 PEM 密钥库,从而允许 Apache 服务器使用该密钥库。以下命令是一个示例。
openssl rsa -in buildForgeKey.pem
-passin pass:<password>
-out buildForgeKeyForApache.pem
请确保需要访问运行 Build Forge 的进程标识的任何用户都可以读取不受保护的 PEM 密钥库。