第 1 章 pkispawn 和 pkidestroy 工具
证书系统包含两个命令行工具来创建和删除子系统:
pkispawn
和 pkidestroy
。
注意
在以前的证书系统版本中,安装和配置被分成两个独立的任务,由
pkicreate
和 pkisilent
工具管理。在证书系统版本 9 及更高版本中,单个 pkispawn
工具现在管理所有这些操作。
pkiremove
工具用于删除之前证书系统版本中子系统。该工具现在使用 pkidestroy
替代。
1.1. pkispawn
实用程序
pkispawn
实用程序创建一个证书系统子系统并配置它。它支持两种安装模式:
- 非互动模式,用户使用命令行选项和配置文件提供安装和配置设置
- 交互模式,其中
pkispawn
会自动提示用户输入安装所需的基本信息
另外,这两种安装模式都可合并,允许您将一些配置直接传递给
pkispawn
,并让实用程序以交互方式提示您输入其他设置。例如,如果您在 pkispawn
中添加 -s
选项,但不是 -f
选项来提供配置文件,安装将使用 /etc/pki/default.cfg
文件中的默认配置设置,并以交互方式提示您输入任何其他自定义信息,如密码。
本节概述了如何使用
pkispawn
安装证书系统子系统。有关 pkispawn
的详情,请参考 pkispawn(8) man page。man page 包括各种 pkispawn
用法示例。
1.1.1. 非互动 pkispawn
模式
该工具只接受几个命令行选项,因为配置参数是通过预先创建的配置文件提供的。
要使用
pkispawn
创建并配置子系统,请使用以下选项运行实用程序:
-s
选项- 指定要创建和配置的子系统:CA、KRA、KRAP、TKS 或 TPS
-f
选项- 指定配置文件的路径
例如,以下命令基于
myconfig.txt
文件创建一个 CA 子系统:
# pkispawn -s CA -f myconfig.txt
pkispawn
的配置文件
证书系统在
/etc/pki/default.cfg
文件中存储一些默认配置设置。要创建可提供给 pkispawn
工具的自定义配置文件,请将 default.cfg
复制到不同的位置。然后修改复制的文件,以定义您希望 pkispawn
应用到新子系统的配置设置。
自定义配置文件优先于默认的
default.cfg
文件。常见做法是将与默认配置不同的参数存储在用户提供的自定义配置文件中。
default.cfg
文件被分为几个部分:
- 常规部分
- 常规部分包含 default 和 Tomcat 配置选项。例如:
[DEFAULT] pki_admin_password= pki_backup_password= pki_client_database_password= pki_client_pkcs12_password= pki_ds_password= pki_replication_password= pki_security_domain_password= pki_token_password= [Tomcat] pki_clone_pkcs12_password=
- 子系统特定部分
- 子系统部分包含特定于子系统的配置选项。例如:
[CA] pki_admin_name=caadmin pki_admin_email=caadmin@example.com
在后续部分中定义的配置优先于前面部分中的配置。例如,特定于子系统的部分的配置优先于
Tomcat
部分,这优先于 DEFAULT
部分中的配置。此行为允许您在 DEFAULT
或 Tomcat
部分中指定所有子系统共享的参数,以及在该子系统的部分中特定于特定子系统的选项。
注意
在运行
pkispawn
后,default.cfg
文件的副本保存在创建的子系统中。然后,在使用 pkidestroy
删除子系统时使用副本。
有关可以为
pkispawn
提供的各种自定义配置文件示例,请查看 pkispawn(8) man page。有关 default.cfg
的详情,请参考 pki_default.cfg(5) man page。
1.1.2. 交互式 pkispawn
模式
如果您没有为
pkispawn
提供任何配置选项,该工具进入交互式安装模式,并自动提示您输入基本所需的安装选项。交互式 pkispawn
安装模式适合熟悉证书系统的用户。有关用于互动模式的基本选项列表,请查看 pkispawn(8) man page。
在互动安装模式中指定的参数保存在
/etc/sysconfig/pki/tomcat/instance_name/subsystem/deployment.cfg
文件中。
1.1.3. 在单个实例中创建多个子系统
单个 Tomcat 实例可以包含多个子系统。但是,一个实例只能包含每种类型的子系统。例如,一个实例可以包含一个 CA 和一个 KRA 子系统,但不能包含两个 CA 或两个 KRA 子系统。
要创建具有多个子系统的实例,请多次运行
pkispawn
,并每次指定不同的子系统。例如,若要创建带有 CA 和 KRA 的实例,请运行 pkispawn -s CA 命令,然后运行 pkispawn -s KRA 命令。