使用提供的工具创建新的自签名证书。
开始之前
您需要的是在安装期间为密钥库指定的密码。如果您不知道该密码,请在 bfinstall/Apache/tomcat/conf/server.xml 中查找。
SSL/HTTP 连接器上的 keystorePass 属性包含密码。
关于此任务
此过程描述了如何替换在 Build Forge 安装期间自动创建的证书。
它创建具有以下属性的证书:
- 密钥库:buildForgeKeyStore.p12
- 期限:15 年(设置为 5475 天)
- 主题 DN:CN=hostname,其中 hostname 是标准主机名。
使用 openssl 和 ibmjdk 工具创建证书。Build Forge 软件中包含了这些工具。
需要以下 5 个密钥库:
- buildForgeKeyStore.p12 - 密钥库,证书和密钥的容器
- buildForgeTrustStore.p12 - 信任库,证书和密钥的容器
- buildForgeKey.pem - PEM 密钥库
- buildForgeCert.pem - 公用证书
- buildForgeCA.pem - PEM 认证中心(CA)
注: 为了清楚起见,在示例命令中使用了换行符。
请勿在命令中使用换行符。将其作为一个字符串输入,或使用连行字符(对于 Windows 是 ^,对于 UNIX 或 Linux 是 \)。
要点: 对所有密钥库使用相同密码。该密码在示例中显示为 password。
过程
- 登录至安装了 Build Forge 引擎的主机。
- 将工具目录放入 PATH 中。
- <bfinstall>/openssl
- <bfinstall>/ibmjdk/bin
- 将 openssl 目录置于 LD_LIBRARY_PATH 中。
- 创建密钥库 buildForgeKeyStore.p12、证书和公用/专用密钥对。
- 在临时目录中,运行 keytool 以创建密钥库:
keytool -genkey -alias buildforge
-keyalg RSA -keysize 1024 -validity 5475 -dname "CN=hostname"
-keystore buildForgeKeyStore.p12
-storepass password
-storetype pkcs12
- 将密钥库文件 (buildForgeKeyStore.p12) 复制到 <bfinstall>/keystore。它会覆盖现有文件。
- 导出公用证书。 在目录 <bfinstall>/keystore 中,运行以下命令:
keytool -export -alias buildforge
-file cert.der -keystore buildForgeKeyStore.p12
-storepass password
-storetype pkcs12
- 创建信任库。
- 在临时目录中,运行 keytool 以创建信任库:
cd /temp
keytool -import -noprompt -trustcacerts -alias buildforge
-file cert.der -keystore buildForgeTrustStore.p12
-storepass password
-storetype pkcs12
- 将信任库文件 (buildForgeTrustStore.p12) 复制到 <bfinstall>/keystore。它会覆盖现有文件。
- 将公用客户机证书放在 buildForgeCert.pem 中 在目录 <bfinstall>/keystore 中,运行以下命令:
openssl pkcs12 -clcerts -nokeys
-in buildForgeKeyStore.p12 -passin pass:password
-out buildForgeCert.pem
- 将证书和密钥放在 buildForgeKey.pem 中 在目录 <bfinstall>/keystore 中,运行以下命令:
openssl pkcs12
-in buildForgeKeyStore.p12 -passin pass:password
-passout pass:password -out buildForgeKey.pem
- 创建 PEM 认证中心 buildForgeCA.pem。 它是 buildForgeKey.pem 的副本。在目录 <bfinstall>/keystore 中,运行以下命令:
cat buildForgeCert.pem > buildForgeCA.pem
下一步做什么
BuildForgeKey.pem 是受密码保护的 PEM 密钥库。Apache 服务器启动时将提示输入该密码。如果不希望在启动时看到输入此密码的提示,请生成用于 Apache 服务器的不受密码保护的 PEM 密钥库。
要从专用密钥除去密码,可以运行以下步骤。确保需要访问运行 Build Forge 的进程标识的那些人员可以读取
buildForgeKeyForApache.pem 文件。
openssl rsa -in buildForgeKey.pem -passin pass:password
-out buildForgeKeyForApache.pem