2.2. Certificate System サブシステムの概要


2.2.1. 個別インスタンスと共有インスタンス

Red Hat Certificate System は、すべてのサブシステムに個別の PKI インスタンスのデプロイメントをサポートします。

  • 個別の PKI インスタンスは、単一の Java ベースの Apache Tomcat インスタンスとして実行されます。
  • 個別の PKI インスタンスには、単一の PKI サブシステム (CA、KRA、OCSP、TKS、または TPS) が含まれます。
  • 同じ物理マシンまたは仮想マシン (VM) 上に共存する場合、別の PKI インスタンスは一意のポートを使用する必要があります。

または、Certificate System は、共有 PKI インスタンスのデプロイメントをサポートします。

  • 共有 PKI インスタンスは、単一の Java ベースの Apache Tomcat インスタンスとしても実行されます。
  • 単一の PKI サブシステムを含む共有 PKI インスタンスは、別の PKI インスタンスと同じです。
  • 共有 PKI インスタンスには、各タイプの PKI サブシステムへの任意の組み合わせが含まれる可能性があります。

    • CA のみ
    • TKS のみ
    • CA および KRA
    • CA および OCSP
    • TKS および TPS
    • CA、KRA、TKS、および TPS
    • CA、KRA、OCSP、TKS、および TPS
    • その他
  • 共有 PKI インスタンスを使用すると、そのインスタンスに含まれるサブシステムがすべて同じポートを共有できます。
  • 共有 PKI インスタンスは、複数の同一物理マシンまたは仮想マシンに共存する場合、一意のポートを使用する必要があります。

2.2.2. インスタンスインストールの要件

2.2.2.1. Directory Server インスタンスの可用性

Certificate System インスタンスをインストールする前に、ローカルまたはリモートの Red Hat Directory Server LDAP インスタンスが利用できる必要があります。Red Hat Directory Server のインストール方法は、Red Hat Directory Server インストールガイド を参照してください。

2.2.2.2. PKI パッケージ

Red Hat Certificate System は、以下のパッケージで構成されています。

  • 以下のベースパッケージは Certificate System のコアを形成し、ベースの Red Hat Enterprise Linux リポジトリーで利用できます。

    • pki-core

      • pki-base
      • pki-base-java
      • pki-ca
      • pki-javadoc
      • pki-kra
      • pki-server
      • pki-symkey
      • pki-tools
  • 以下に記載するパッケージは、ベースの Red Hat Enterprise Linux サブスクリプションチャネルでは 利用できません。これらのパッケージをインストールするには、Red Hat Certificate System サブスクリプションプールを割り当て、RHCS リポジトリーを有効にする必要があります。詳細は、「リポジトリーの有効化」 を参照してください。

    • pki-core

      • pki-console
      • pki-ocsp
      • pki-tks
      • pki-tps
    • redhat-pki

      • redhat-pki: pki-core モジュールのすべてのパッケージが含まれます。redhat-pki パッケージを個別に選択する場合は、pki-core モジュールを無効にすることが推奨されます。
      • redhat-pki-console-theme
      • redhat-pki-server-theme

Red Hat Enterprise Linux 8 システム (必要に応じて 4章サポート対象のプラットフォーム に記載されているサポート対象のハードウェアセキュリティーモジュールで設定されているもの) を使用します。Red Hat Certificate System をインストールする前に、すべてのパッケージが最新の状態であることを確認してください。

すべての Certificate System パッケージ (pki-javadoc を除く) をインストールするには、dnf を使用して redhat-pki メタパッケージをインストールします。

# dnf install redhat-pki

必要に応じて 1 つ以上の最上位の PKI サブシステムパッケージをインストールしてください。実際のパッケージ名は、上記のリストを参照してください。この方法を使用する場合は、必ず redhat-pki-server-theme パッケージもインストールし、PKI コンソールを使用する場合のオプションとして redhat-pki-console-themepki-console をインストールします。

開発者と管理者は、JSS および PKI javadoc (jss-javadoc および pki-javadoc) もインストールする必要があります。

注記

jss-javadoc パッケージを使用する場合は、Subscription Manager で Server-Optional リポジトリーを有効にする必要があります。

2.2.2.3. インスタンスのインストールと設定

pkispawn コマンドラインツールを使用して、新しい PKI インスタンスをインストールおよび設定します。個別インストールと設定手順がなく、バッチプロセスとして、または両方の組み合わせ (パスワードを要求するバッチプロセス) のいずれかを対話的に実行することができます。このユーティリティーは、ブラウザーベースのグラフィカルインターフェイスをインストールまたは設定する方法を提供していません。

使用方法の情報が必要な場合は、pkispawn --help コマンドを実行してください。

pkispawn コマンドを実行すると、以下が行われます。

  1. プレーンテキストの設定ファイル (/etc/pki/default.cfg) からデフォルトの name=value ペアを読み取ります。
  2. 指定されたペアを対話的にまたは自動的に上書きし、最終結果を Python ディクショナリーとして保存します。
  3. 順序付けされた スクリプトレット を実行し、サブシステムおよびインスタンスインストールを実行します。
  4. 設定スクリプトレットは、Python ディクショナリーを JavaScript Object Notation (JSON) データオブジェクトとしてパッケージ化し、Java ベースの設定サーブレットに渡されます。
  5. 設定サーブレットはこのデータを使用して新しい PKI サブシステムを設定し、制御を pkispawn 実行可能ファイルに渡して、PKI 設定の最終処理を行います。最終的なデプロイメントファイルのコピーは /var/lib/pki/instance_name/<subsystem>/registry/<subsystem>/deployment.cfg に保存されます。

詳細は、pkispawn の man ページを参照してください。

デフォルトの設定ファイル /etc/pki/default.cfg は、上記のプロセスの開始時に読み込まれるデフォルトのインストールと設定値を含むプレーンテキストのファイルです。これは、[DEFAULT][Tomcat][CA][KRA][OCSP][TKS]、および [TPS] セクションに分割された name=value のペアで構成されます。

pkispawn-s オプションを使用してサブシステム名を指定すると、そのサブシステムのセクションのみが読み取られます。

セクションには階層があります。サブシステムセクションで指定した name=value のペアは、[Tomcat] セクションのペアを上書きし、[DEFAULT] セクションのペアを上書きします。デフォルトのペアは、インタラクティブ入力か、指定された PKI インスタンス設定ファイル内のペアによってさらに上書きできます。

注記

非対話形式ファイルを使用してデフォルトの name=value ペアを上書きする場合は常に、任意の場所に保存され、いつでも指定できます。これらのファイルは、pkispawn の man ページにある myconfig.txt と呼ばれていますが、.ini ファイルと呼ばれることも、より一般的には PKI インスタンス設定オーバーライドファイルと呼ばれることもあります。

詳細は、pki_default.cfg の man ページを参照してください。

設定サーブレット は、/usr/share/java/pki/pki-certsrv.jarcom/netscape/certsrv/system/ConfigurationRequest.class として保存されている Java バイトコードで構成されます。サーブレットは、pkispawn を使用して設定スクリプトレットから JSON オブジェクトとして渡されたデータを処理し、com/netscape/certsrv/system/ConfigurationResponse.class と同じファイルで提供される Java バイトコードを使用して pkispawn に返します。

インタラクティブインストールの例では、root 権限を使用してコマンドラインで pkispawn コマンドの実行のみ行っています。

# pkispawn
重要

現在、インタラクティブなインストールは、非常に基本的なデプロイメントでのみ存在します。たとえば、クローン作成、Elliptic Curve Cryptography (ECC)、外部 CA、Hardware Security Module (HSM)、下位 CA などの高度な機能を使用する場合、デプロイメントは個別の設定ファイルで必要なオーバーライドパラメーターを提供する必要があります。

非対話的なインストールでは、PKI インスタンス設定の上書きファイルが必要ですが、プロセスは以下の例のようになります。

  1. pki ディレクトリーを作成します。

    # mkdir -p /root/pki
  2. vim などのテキストエディターを使用して、以下の内容を含む /root/pki/ca.cfg という名前の設定ファイルを作成します。

    [DEFAULT]
    pki_admin_password=<password>
    pki_client_pkcs12_password=<password>
    pki_ds_password=<password>
  3. # pkispawn -s CA -f /root/pki/ca.cfg

さまざまな設定例は、pkispawn の man ページを参照してください。

2.2.2.4. インスタンスの削除

既存の PKI インスタンスを削除するには、pkidestroy コマンドを使用します。対話的に実行することも、バッチプロセスとして実行することもできます。pkidestroy -h を使用して、コマンドラインで詳細な使用方法を表示します。

pkidestroy コマンドは、サブシステムの作成時に保存された PKI サブシステムデプロイメント設定ファイル (/var/lib/pki/instance_name/<subsystem>/registry/<subsystem>/deployment.cfg) を読み取り、読み込んだファイルを使用して PKI サブシステムを削除し、追加のサブシステムがない場合は PKI インスタンスを削除します。詳細は、pkidestroy の man ページを参照してください。

pkidestroy を使用したインタラクティブな削除手順は、以下のようになります。

# pkidestroy

Subsystem (CA/KRA/OCSP/TKS/TPS) [CA]:
Instance [pki-tomcat]:

Begin uninstallation (Yes/No/Quit)? Yes

Log file: /var/log/pki/pki-ca-destroy.20150928183547.log
Loading deployment configuration from /var/lib/pki/pki-tomcat/ca/registry/ca/deployment.cfg.
Uninstalling CA from /var/lib/pki/pki-tomcat.
rm '/etc/systemd/system/multi-user.target.wants/pki-tomcatd.target'

Uninstallation complete.

非インタラクティブな削除手順は、以下の例のようになります。

# pkidestroy -s CA -i pki-tomcat

Log file: /var/log/pki/pki-ca-destroy.20150928183159.log
Loading deployment configuration from /var/lib/pki/pki-tomcat/ca/registry/ca/deployment.cfg.
Uninstalling CA from /var/lib/pki/pki-tomcat.
rm '/etc/systemd/system/multi-user.target.wants/pki-tomcatd.target'

Uninstallation complete.

2.2.3. 実行管理 (systemctl)

2.2.3.1. 起動、停止、再起動、ステータス取得

Red Hat Certificate System サブシステムインスタンスは、Red Hat Enterprise Linux 8 で systemctl 実行管理システムツールを使用して停止および起動できます。

# systemctl start <unit-file>@instance_name.service
# systemctl status <unit-file>@instance_name.service
# systemctl stop <unit-file>@instance_name.service
# systemctl restart <unit-file>@instance_name.service

<unit-file> には、以下のいずれかの値を使用できます。

pki-tomcatd 			With watchdog disabled
pki-tomcatd-nuxwdog 		With watchdog enabled

watchdog サービスの詳細は、「パスワードとウォッチドッグ (nuxwdog)」 および「Certificate System の Watchdog サービスの使用」 を参照してください。

注記

RHCS 10 では、これらの systemctl アクションは pki-server エイリアスをサポートします。pki-server <command> subsystem_instance_namesystemctl <command> pki-tomcatd@<instance>.service のエイリアスです。

2.2.3.2. インスタンスの自動起動

Red Hat Enterprise Linux の systemctl ユーティリティーは、サーバー上の各プロセスの自動起動およびシャットダウン設定を管理します。これは、システムが再起動すると、一部のサービスを自動的に再起動できることを意味します。システムユニットファイルは、サービスの起動を制御し、サービスが正しい順序で起動されるようにします。systemd サービスと systemctl ユーティリティーは、Red Hat Enterprise Linux 8 の基本的なシステム設定 ガイドで説明されています。

Certificate System インスタンスは systemctl で管理できます。したがって、このユーティリティーは、インスタンスを自動的に再起動するかどうかを設定できます。Certificate System インスタンスが作成されると、システムの起動時に有効になります。これは systemctl を使用することで変更できます。

# systemctl disable pki-tomcatd@instance_name.service

インスタンスを再度有効にするには、以下を実行します。

# systemctl enable pki-tomcatd@instance_name.service
注記

systemctl enable コマンドおよび systemctl disable コマンドは、Certificate System をすぐに起動したり、停止したりしません。

2.2.4. プロセス管理 (pki-server および pkidaemon)

2.2.4.1. pki-server コマンドラインツール

Red Hat Certificate System の主なプロセス管理ツールは、pki-server です。使用方法は、pki-server --help コマンドを使用して、pki-server の man ページを参照してください。

pki-server コマンドラインインターフェイス (CLI) は、ローカルサーバーインスタンス (サーバー設定やシステム証明書など) を管理します。以下のように CLI を起動します。

$ pki-server [CLI options] <command> [command parameters]

CLI はサーバーインスタンスの設定ファイルおよび NSS データベースを使用するため、CLI では事前に初期化は必要ありません。CLI はファイルに直接アクセスできるため、これは root ユーザーがのみ実行でき、クライアント証明書は必要ありません。また、CLI はサーバーのステータスに関係なく実行できます。実行中のサーバーは必要ありません。

CLI は、階層構造で多数のコマンドをサポートしています。トップレベルのコマンドをリスト表示するには、追加のコマンドまたはパラメーターを指定せずに CLI を実行します。

$ pki-server

コマンドにはサブコマンドがあります。それらをリスト表示するには、コマンド名を実行します。追加のオプションは指定しません。以下に例を示します。

$ pki-server ca
$ pki-server ca-audit

コマンドの使用情報を表示するには --help オプションを使用します。

$ pki-server --help
$ pki-server ca-audit-event-find --help

2.2.4.2. pki-server を使用したインストール済みサブシステムの有効化および無効化

インストール済みのサブシステムを有効または無効にするには、pki-server ユーティリティーを使用します。

# pki-server subsystem-disable -i instance_id subsystem_id
# pki-server subsystem-enable -i instance_id subsystem_id

subsystem_id を、有効なサブシステム識別子 (cakratksocsp または tps) に置き換えます。

注記

1 つのインスタンスにはサブシステムのタイプのみを設定できます。

たとえば、pki-tomcat という名前のインスタンスで OCSP サブシステムを無効にするには、次のコマンドを実行します。

# pki-server subsystem-disable -i pki-tomcat ocsp

インスタンスのインストールされたサブシステムをリスト表示するには、以下を実行します。

# pki-server subsystem-find -i instance_id

特定のサブシステムの状態を表示するには、次のコマンドを実行します。

# pki-server subsystem-find -i instance_id subsystem_id

2.2.4.3. pkidaemon コマンドラインツール

Red Hat Certificate System 用の別のプロセス管理ツールとして、pkidaemon ツールがあります。

# pkidaemon {start|status} instance-type [instance_name]
  • pkidaemon status tomcat - システム上のすべての PKI インスタンスの PKI サブシステムのオン/オフ、ポート、URL などのステータス情報を提供します。
  • pkidaemon status tomcat instance_name - 特定のインスタンスの各 PKI サブシステムのオン/オフ、ポート、URL などのステータス情報を提供します。
  • pkidaemon start tomcat instance_name.service - systemctl を内部で使用します。

詳細は、pkidaemon の man ページを参照してください。

2.2.4.4. サブシステムの Web サービス URL の検索

CA、KRA、OCSP、TKS、および TPS サブシステムには、エージェント用の Web サービスページと、通常のユーザーおよび管理者が含まれます。これらの Web サービスには、サブシステムのセキュアなエンドユーザーのポートを介してサブシステムホストへの URL を開くことでアクセスできます。CA の場合の例を以下に示します。

https://server.example.com:8443/ca/services
注記

インスタンスのインターフェイス、URL、およびポートの全リストを取得するには、サービスのステータスを確認します。以下に例を示します。

pkidaemon status instance_name

各サブシステムの主な Web サービスページには、利用可能なサービスページの一覧があります。これらは以下の表に要約されています。特定のサービスにアクセスするには、適切なポートにアクセスし、適切なディレクトリーを URL に追加します。たとえば、CA のエンドエンティティー (通常のユーザー) の Web サービスにアクセスするには、以下を実行します。

https://server.example.com:8443/ca/ee/ca

DNS が設定されていない場合は、IPv4 アドレスまたは IPv6 アドレスを使用して、サービスページに接続できます。以下に例を示します。

https://192.0.2.1:8443/ca/services
https://[2001:DB8::1111]:8443/ca/services
注記

すべてのユーザーがサブシステムのエンドユーザーページにアクセスできます。ただし、エージェントまたは管理 Web サービスページにアクセスするには、エージェントまたは管理者の証明書を Web ブラウザーにインストールする必要があります。それ以外の場合は、Web サービスへの認証に失敗します。

表2.1 デフォルトの Web サービスページ
ポートSSL/TLS に使用クライアント認証に使用 [a]Web ServicesWeb サービスの場所

Certificate Manager

8080

いいえ

 

エンドエンティティー

ca/ee/ca

8443

はい

いいえ

エンドエンティティー

ca/ee/ca

8443

はい

はい

エージェント

ca/agent/ca

8443

はい

いいえ

サービス

ca/services

8443

はい

いいえ

コンソール

pkiconsole https://host:port/ca

キーリカバリー認証局

8080

いいえ

 

エンドエンティティー

kra/ee/kra

8443

はい

いいえ

エンドエンティティー

kra/ee/kra

8443

はい

はい

エージェント

kra/agent/kra

8443

はい

いいえ

サービス

kra/services

8443

はい

いいえ

コンソール

pkiconsole https://host:port/kra

オンライン証明書ステータスマネージャー

8080

いいえ

 

エンドエンティティー

ocsp/ee/ocsp

8443

はい

いいえ

エンドエンティティー

ocsp/ee/ocsp

8443

はい

はい

エージェント

ocsp/agent/ocsp

8443

はい

いいえ

サービス

ocsp/services

8443

はい

いいえ

コンソール

pkiconsole https://host:port/ocsp

トークンキーサービス

8080

いいえ

 

エンドエンティティー

tks/ee/tks

8443

はい

いいえ

エンドエンティティー

tks/ee/tks

8443

はい

はい

エージェント

tks/agent/tks

8443

はい

いいえ

サービス

tks/services

8443

はい

いいえ

コンソール

pkiconsole https://host:port/tks

トークン処理システム

8080

いいえ

 

安全でないサービス

tps/tps

8443

はい

 

安全なサービス

tps/tps

8080

いいえ

 

Enterprise Security Client Phone Home

tps/phoneHome

8443

はい

 

Enterprise Security Client Phone Home

tps/phoneHome

8443

はい

はい

管理、エージェント、および Operator サービス [b]

tps/ui

[a] クライアント認証値が No のサービスは、クライアント認証を要求するように再設定できます。Yes または No のいずれかの値を持たないサービスは、クライアント認証を使用するように設定することはできません。
[b] エージェント、管理者、および Operator サービスはすべて、同じ Web サービスページを介してアクセスされます。各ロールは、そのロールのメンバーにのみ表示される特定のセクションにのみアクセスできます。

2.2.4.5. Certificate System コンソールの起動

重要

このコンソールは非推奨になりました。

CA、KRA、OCSP、および TKS サブシステムには、管理機能を実行するための Java インターフェイスがあります。KRA、OCSP、および TKS では、ユーザーおよびグループのログ設定や管理など、非常に基本的なタスクが含まれます。CA の場合は、証明書プロファイルの作成や公開の設定など、その他の設定が含まれます。

pkiconsole ユーティリティーを使用して SSL/TLS ポート経由でサブシステムインスタンスに接続すると、コンソールが開きます。このユーティリティーは、以下の形式を使用します。

# pkiconsole -d nssdb -n 'optional client cert nickname' https://server.example.com:admin_port/subsystem_type

subsystem_typecakraocsp、または tks にすることができます。たとえば、これにより KRA コンソールが開きます。

# pkiconsole -d nssdb -n 'optional client cert nickname' https://server.example.com:8443/kra

DNS が設定されていない場合は、IPv4 アドレスまたは IPv6 アドレスを使用してコンソールに接続できます。以下に例を示します。

https://192.0.2.1:8443/ca
https://[2001:DB8::1111]:8443/ca
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat, Inc.