4.3. 准备将证书加载到浏览器

在将用户证书导入到浏览器前,请确保证书和对应的私钥都是 PKCS #12 格式。有两种常见情况需要额外的准备工作:

之后,要将 PEM 格式的 CA 证书和 PKCS #12 格式的用户证书导入到浏览器中,请按照 配置浏览器来启用证书身份验证使用证书作为身份管理用户来验证到身份管理 Web UI 中描述的流程。

4.3.1. 将证书和私钥从 NSS 数据库导出到 PKCS #12 文件中

流程

  1. 使用 pk12util 命令将证书从 NSS 数据库导出为 PKCS12 格式。例如,将 ~/certdb 目录中存储的 NSS 数据库中的 some_user 昵称的证书导出到 ~/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
  2. .p12 文件设置合适的权限:

    # chmod 600 ~/some_user.p12

    由于 PKCS #12 文件也包含私钥,因此必须对其进行保护以防止其他用户使用该文件。否则,他们能够模拟用户。

4.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