60.3. 准备将证书加载到浏览器
在将用户证书导入到浏览器前,请确保证书和相应的私钥为 PKCS #12
格式。通常有两种情况需要额外的准备工作:
- 证书位于 NSS 数据库中。有关在这种情况下如何处理的详情,请参考 将 NSS 数据库中的证书和私钥导出到 PKCS #12 文件中。
-
证书和私钥位于两个单独的
PEM
文件中。有关在这种情况下如何处理的详情,请参考 将证书和私钥 PEM 文件合并到 PKCS #12 文件中。
之后,要将 PEM
格式的 CA 证书以及 PKCS #12
格式的用户证书导入到浏览器中,请按照 配置浏览器以启用证书身份验证 和 以身份管理用户的身份使用证书验证身份管理 Web UI 中的流程。
60.3.1. 将证书和私钥从 NSS 数据库导出到 PKCS #12 文件中
流程
使用
pk12util
命令将证书从 NSS 数据库导出为PKCS12
格式。例如,要将昵称为some_user
的证书从存储在~/certdb
目录中的 NSS 数据库导出到~/some_user.p12
文件中:$ pk12util -d
~/certdb
-o~/some_user.p12
-n some_user Enter Password or Pin for "NSS Certificate DB": Enter password for PKCS12 file: Re-enter password: pk12util: PKCS12 EXPORT SUCCESSFUL为
.p12
文件设置合适的权限:# chmod 600 ~/some_user.p12
由于
PKCS #12
文件也包含私钥,因此必须对其进行保护,以防止其他用户使用该文件。否则,他们可以模拟用户。
60.3.2. 将证书和私钥 PEM 文件合并到 PKCS #12 文件中
按照以下流程将证书和存储在单独的 PEM
文件中的相应密钥合并到 PKCS #12
文件中。
流程
将存储在
certfile.cer
中的证书和存储在certfile.key
中的密钥合并到包含证书和密钥的certfile.p12
文件中:$ openssl pkcs12 -export -in certfile.cer -inkey certfile.key -out certfile.p12