7.3. 设置根证书颁发机构(示例)


注意

如果您已熟悉 pkispawn,您可以直接转至 第 7.4 节 “安装 PKI 子系统”

本节提供了如何安装 root CA 的两个示例:

  • 使用 pkispawn 单步方法安装 root CA。
  • 使用 pkispawn 双步骤方法安装 root CA。

7.3.1. 使用 pkispawn 单步方法安装 root CA

使用单步方法配置 RootCA 实例需要创建配置文件并运行 pkispawn 工具。

在本例中,根CA 安装在 rhcs10.example.com (以及其他实例)上,其内部目录服务器位于 rhds11.example.com 上。

先决条件

流程

  1. 在要托管 RHCS 实例的机器上的所选位置(如 /root/pki_rsa)创建一个 CA 安装文件,该文件将托管 RHCS 实例(rhcs10.example.com)。

    Copy to Clipboard Toggle word wrap
    # cd /root/pki_rsa
    # vi rootca_inst.cfg
    注意

    除非明确指定,否则系统证书别名将自动命名为 pki_instance_name 的值。为了避免共享 HSM 上的证书别名冲突,请为每个实例创建使用不同的实例名称。

    以下安装文件中指定的值是示例。除了更改 HSM 密码外,还要相应地编辑值,如 ports, directory, nicknames, domains…​

    Copy to Clipboard Toggle word wrap
    [DEFAULT]
    pki_instance_name=rhcs10-RSA-RootCA
    pki_https_port=8443
    pki_http_port=8080
    
    # Crypto Token
    pki_hsm_enable=True
    pki_hsm_libfile=/opt/nfast/toolkits/pkcs11/libcknfast.so
    pki_hsm_modulename=nfast
    pki_token_name=NHSM-CONN-XC
    pki_token_password=<YourHSMpassword>
    
    pki_audit_signing_token=NHSM-CONN-XC
    pki_audit_signing_key_algorithm=SHA256withRSA
    pki_audit_signing_key_size=2048
    pki_audit_signing_key_type=rsa
    pki_audit_signing_signing_algorithm=SHA256withRSA
    
    pki_subsystem_token=NHSM-CONN-XC
    pki_subsystem_key_algorithm=SHA256withRSA
    pki_subsystem_signing_algorithm=SHA256withRSA
    pki_subsystem_key_size=2048
    pki_subsystem_key_type=rsa
    
    pki_sslserver_token=NHSM-CONN-XC
    pki_sslserver_key_algorithm=SHA256withRSA
    pki_sslserver_signing_algorithm=SHA256withRSA
    pki_sslserver_key_size=2048
    pki_sslserver_key_type=rsa
    
    # Bootstrap Admin
    pki_admin_password=SECret.123
    pki_admin_key_type=rsa
    pki_admin_key_size=2048
    pki_admin_key_algorithm=SHA256withRSA
    
    # Bootstrap Admin client dir
    # by default, if pki_client_dir, pki_client_database_dir,
    # and pki_client_admin_cert_p12 are not specified, items will be placed
    # under some default directories in /root/.dogtag
    pki_client_admin_cert_p12=/opt/pki_rsa/rhcs10-RSA-RootCA/ca_admin_cert.p12
    pki_client_database_dir=/opt/pki_rsa/rhcs10-RSA-RootCA/certs_db
    pki_client_database_password=SECret.123
    pki_client_dir=/opt/pki_rsa/rhcs10-RSA-RootCA
    pki_client_pkcs12_password=SECret.123
    
    # Internal LDAP
    pki_ds_bind_dn=cn=Directory Manager
    pki_ds_ldap_port=389
    pki_ds_ldaps_port=636
    pki_ds_password=SECret.123
    pki_ds_remove_data=True
    pki_ds_secure_connection=True
    pki_ds_secure_connection_ca_pem_file=/opt/pki_rsa/temp-dirsrv-rootca-cert.pem
    pki_ds_secure_connection_ca_nickname=DS temp CA certificate
    
    # Security Domain
    pki_security_domain_hostname=rhcs10.example.com
    pki_security_domain_name=Example-rhcs10-RSA-RootCA
    pki_security_domain_password=SECret.123
    
    
    [Tomcat]
    pki_ajp_port=8009
    pki_tomcat_server_port=8005
    
    
    [CA]
    pki_import_admin_cert=False
    pki_admin_nickname=PKI Bootstrap Administrator for RSA-RootCA
    pki_admin_name=caadmin
    pki_admin_uid=caadmin
    pki_admin_email=caadmin@example.com
    
    pki_ca_signing_token=NHSM-CONN-XC
    pki_ca_signing_key_algorithm=SHA256withRSA
    pki_ca_signing_key_size=3072
    pki_ca_signing_key_type=rsa
    pki_ca_signing_nickname=CA Signing Cert - %(pki_instance_name)s
    pki_ca_signing_signing_algorithm=SHA256withRSA
    
    pki_ocsp_signing_token=NHSM-CONN-XC
    pki_ocsp_signing_key_algorithm=SHA256withRSA
    pki_ocsp_signing_key_size=3072
    pki_ocsp_signing_key_type=rsa
    pki_ocsp_signing_signing_algorithm=SHA256withRSA
    
    pki_ds_hostname=rhds11.example.com
    pki_ds_base_dn=dc=RSA-RootCA
    pki_ds_database=CC-RSA-RootCA-LDAP
    pki_share_db=False
  2. 运行 pkispawn 工具来安装 RHCS CA 实例:

    Copy to Clipboard Toggle word wrap
    pkispawn -s CA -f rootca_inst.cfg --debug

验证步骤

  1. 显示已安装 CA 的状态:

    Copy to Clipboard Toggle word wrap
    pki-server status rhcs10-RSA-RootCA
  2. 运行以下命令,验证 CA 的健全性。它应该显示证书:

    Copy to Clipboard Toggle word wrap
    pki -p 8443 -h rhcs10.example.com ca-cert-find
    注意

    当第一次使用 pki 命令连接到 RootCA 时,将显示 CA 签名证书的不受信任的签发者警告,如下所示:

    Copy to Clipboard Toggle word wrap
    WARNING: UNTRUSTED ISSUER encountered on 'CN=rhcs10.example.com,OU=rhcs10-RSA-RootCA,O=Example-rhcs10-RSA-RootCA' indicates a non-trusted CA cert 'CN=CA Signing Certificate,OU=rhcs10-RSA-RootCA,O=Example-rhcs10-RSA-RootCA'
    Trust this certificate (y/N)?

    如果主题 DN 与主机名匹配,请选择 y 以信任 CA 签名证书。警告不会再次显示。

7.3.2. 使用 pkispawn 双步骤方法安装 root CA

使用两步方法配置 RootCA 实例需要创建配置文件并运行 pkispawn 工具两次。

在本例中,根CA 安装在 rhcs10.example.com 上。

先决条件

  • 以 root 用户身份登录 rhcs10.example.com
  • 您已运行第 6.3.2 节 中的步骤,"设置 DS 实例" [NEEDS UPDATING].在我们的示例中,CC-RSA-RootCA-LDAP 是 RootCA 的内部数据库。

7.3.2.1. RootCA 安装的第一步

  1. 在所选位置(例如 /root/pki_rsa )创建一个 CA 安装文件,该文件将托管 RHCS 实例 rhcs10.example.com

    Copy to Clipboard Toggle word wrap
    cd /root/pki_rsa
    
    vi rootca_inst.cfg
    Copy to Clipboard Toggle word wrap
    [DEFAULT]
    pki_instance_name=rhcs10-RSA-RootCA
    pki_https_port=8443
    pki_http_port=8080
    
    # Crypto Token
    pki_hsm_enable=True
    pki_hsm_libfile=/opt/nfast/toolkits/pkcs11/libcknfast.so
    pki_hsm_modulename=nfast
    pki_token_name=NHSM-CONN-XC
    pki_token_password=<YourHSMpassword>
    
    pki_audit_signing_token=NHSM-CONN-XC
    pki_audit_signing_key_algorithm=SHA256withRSA
    pki_audit_signing_key_size=2048
    pki_audit_signing_key_type=rsa
    pki_audit_signing_signing_algorithm=SHA256withRSA
    
    pki_subsystem_token=NHSM-CONN-XC
    pki_subsystem_key_algorithm=SHA256withRSA
    pki_subsystem_signing_algorithm=SHA256withRSA
    pki_subsystem_key_size=2048
    pki_subsystem_key_type=rsa
    
    pki_sslserver_token=NHSM-CONN-XC
    pki_sslserver_key_algorithm=SHA256withRSA
    pki_sslserver_signing_algorithm=SHA256withRSA
    pki_sslserver_key_size=2048
    pki_sslserver_key_type=rsa
    
    # Bootstrap Admin
    pki_admin_password=SECret.123
    pki_admin_key_type=rsa
    pki_admin_key_size=2048
    pki_admin_key_algorithm=SHA256withRSA
    
    # Bootstrap Admin client dir
    # by default, if pki_client_dir, pki_client_database_dir,
    # and pki_client_admin_cert_p12 are not specified, items will be placed
    # under some default directories in /root/.dogtag
    pki_client_dir=/opt/pki_rsa/rhcs10-RSA-RootCA
    pki_client_admin_cert_p12=/opt/pki_rsa/rhcs10-RSA-RootCA/ca_admin_cert.p12
    pki_client_database_dir=/opt/pki_rsa/rhcs10-RSA-RootCA/certs_db
    pki_client_database_password=SECret.123
    pki_client_pkcs12_password=SECret.123
    
    # Internal LDAP
    pki_ds_bind_dn=cn=Directory Manager
    pki_ds_ldap_port=389
    pki_ds_ldaps_port=636
    pki_ds_password=SECret.123
    pki_ds_remove_data=True
    pki_ds_secure_connection=True
    pki_ds_secure_connection_ca_pem_file=/opt/pki_rsa/temp-dirsrv-rootca-cert.pem
    pki_ds_secure_connection_ca_nickname=DS temp CA certificate
    
    # Security Domain
    pki_security_domain_hostname=rhcs10.example.com
    pki_security_domain_name=Example-rhcs10-RSA-RootCA
    pki_security_domain_password=SECret.123
    
    
    [Tomcat]
    pki_ajp_port=8009
    pki_tomcat_server_port=8005
    
    
    [CA]
    pki_import_admin_cert=False
    pki_admin_nickname=PKI Bootstrap Administrator for RSA-RootCA
    pki_admin_name=caadmin
    pki_admin_uid=caadmin
    pki_admin_email=caadmin@example.com
    
    pki_ca_signing_token=NHSM-CONN-XC
    pki_ca_signing_key_algorithm=SHA256withRSA
    pki_ca_signing_key_size=3072
    pki_ca_signing_key_type=rsa
    pki_ca_signing_nickname=CA Signing Cert - %(pki_instance_name)s
    pki_ca_signing_signing_algorithm=SHA256withRSA
    
    pki_ocsp_signing_token=NHSM-CONN-XC
    pki_ocsp_signing_key_algorithm=SHA256withRSA
    pki_ocsp_signing_key_size=3072
    pki_ocsp_signing_key_type=rsa
    pki_ocsp_signing_signing_algorithm=SHA256withRSA
    
    pki_ds_hostname=rhds11.example.com
    pki_ds_base_dn=dc=RSA-RootCA
    pki_ds_database=CC-RSA-RootCA-LDAP
    pki_share_db=False
    注意

    除非明确指定,否则系统证书别名将自动命名为 pki_instance_name 的值。为了避免共享 HSM 上的证书别名冲突,请为每个实例创建使用不同的实例名称。但是,在两步安装中,两个文件的 pki_instance_name 值应该匹配。以下值只是示例。

  2. 第一次运行 pkispawn 工具来安装 RHCS CA 实例:

    Copy to Clipboard Toggle word wrap
    pkispawn -s CA -f rootca_inst.cfg --skip-configuration --debug

7.3.2.2. RootCA 配置的第二步

第 7.2.2 节 “安装方法(单步或两步)” 所述,第二步安装方法中有两个子步骤。

自定义

在这个子步骤中,您可以自定义某些内容,如系统证书的证书配置文件。

  • 为 CA 签名证书设置 Subject Key Identifier 扩展消息摘要算法:

    1. 打开此 CA 的签名证书的注册配置集:

      Copy to Clipboard Toggle word wrap
      # vi /var/lib/pki/rhcs10-RSA-RootCA/ca/conf/caCert.profile
    2. 添加以下参数:

      Copy to Clipboard Toggle word wrap
      7.default.params.messageDigest=SHA-256
    3. 保存该文件。
  • 同样,对于此 CA 将在以后发布的 CA 签名证书执行相同的操作:

    1. 为 CA 签名证书打开注册配置集:

      Copy to Clipboard Toggle word wrap
      # vi /var/lib/pki/rhcs10-RSA-RootCA/ca/profiles/ca/caInstallCACert.cfg
      
      # vi /var/lib/pki/rhcs10-RSA-RootCA/ca/profiles/ca/caCMCcaCert.cfg
    2. 添加以下参数:

      Copy to Clipboard Toggle word wrap
      policyset.caCertSet.8.default.params.messageDigest=SHA-256
    3. 保存该文件。
  • 也可以在此处进行其他自定义更改。例如,如果要扩展此子系统审计签名证书的有效性周期:

    1. 打开对应的配置文件:

      Copy to Clipboard Toggle word wrap
      # vi /var/lib/pki/rhcs10-RSA-RootCA/ca/profiles/ca/caInternalAuthAuditSigningCert.cfg
    2. 将以下范围参数改为所需的值:

      Copy to Clipboard Toggle word wrap
      policyset.auditSigningCertSet.2.constraint.params.range=720
      policyset.auditSigningCertSet.2.default.params.range=720
    3. 保存该文件。在下一部分中完成 pkispawn 的第二步骤后,您应该预期此子系统的审计签名证书的有效性,以匹配您更改的值。

运行 pkispawn the second time (Configuration)

pkispawn 的第二步涉及以不同方式针对同一文件运行工具,从而配置 RHCS CA 实例。

  • 运行 pkispawn 工具来配置 CA:

    Copy to Clipboard Toggle word wrap
    # pkispawn -s CA -f rootca_inst.cfg --skip-installation --debug

验证步骤

  1. 显示已安装 CA 的状态:

    Copy to Clipboard Toggle word wrap
    # pki-server status rhcs10-RSA-RootCA

    请注意 Unsecure EE、Secure EE、Agent、Admin 和 pkiconsole URL。

  2. 运行以下命令,验证 CA 的健全性。它应该显示证书:

    Copy to Clipboard Toggle word wrap
    # pki -p 8443 -h rhcs10.example.com ca-cert-find
    注意

    当第一次使用 pki 命令连接到 RootCA 时,将显示 CA 签名证书的不受信任的签发者警告,如下所示:

    Copy to Clipboard Toggle word wrap
    WARNING: UNTRUSTED ISSUER encountered on 'CN=rhcs10.example.com,OU=rhcs10-RSA-RootCA,O=Example-rhcs10-RSA-RootCA' indicates a non-trusted CA cert 'CN=CA Signing Certificate,OU=rhcs10-RSA-RootCA,O=Example-rhcs10-RSA-RootCA'
    Trust this certificate (y/N)?

    如果主题 DN 与主机名匹配,请选择 y 以信任 CA 签名证书。警告不会再次显示。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat, Inc.