2.4. サポートされている pki コマンドの概要


本セクションでは、pki コマンドとそのサブコマンドの一部と、その機能を紹介します。特定の pki サブコマンドの使用方法に関する詳細情報は、--help オプションを追加して実行します。以下に例を示します。
$ pki cert-find --help
usage: cert-find [OPTIONS...]
--certTypeSecureEmail <on|off>         Certifiate Type: Secure Email
--certTypeSSLClient <on|off>           Certifiate Type: SSL Client
--certTypeSSLServer <on|off>           Certifiate Type: SSL Server
...
サブコマンドの一部は、pki(1) の man ページにも記載されています。

2.4.1. pki クライアントによるクライアント管理

pki client-* コマンドを使用すると、Certificate System クライアント環境を管理できます。これらのコマンドの詳細は、pki-client(1) の man ページを参照してください。

クライアントの初期化

pki client-init
新しいクライアント環境を初期化します。このコマンドは、デフォルトの証明書データベースディレクトリー ~/.dogtag/nssdb/ にセキュリティーデータベースを作成します。新しいセキュリティーデータベースのパスワードは、-c オプションまたは -C オプションで指定する必要があります。以下に例を示します。
$ pki -c Secret123 client-init
------------------
Client initialized
------------------
注記
この操作は管理者にとっては任意です。管理者が新しいサブシステムを作成すると、クライアントセキュリティーデータベースが自動的に作成されます。

ローカル証明書の一覧表示

pki client-cert-find
クライアントセキュリティーデータベース内のすべての証明書を一覧表示します。

証明書および秘密鍵のインポート

pki client-cert-import
PKCS #12 ファイルから CA 証明書またはクライアント証明書をインポートします。

例2.1 CA サーバーからの CA 証明書のインポート

CA サーバーから CA 証明書をダウンロードしてインポートするには、以下を実行します。
$ pki -c Secret123 -n "CA Signing Certificate - EXAMPLE" client-cert-import --ca-server
-------------------------------------------------------
Imported certificate "CA Signing Certificate - EXAMPLE"
-------------------------------------------------------

例2.2 ファイルからの CA 証明書のインポート

ファイルから CA 証明書をインポートするには、以下を実行します。
$ pki -c Secret123 -n "CA Signing Certificate - EXAMPLE" client-cert-import --ca-cert ca.pem
-------------------------------------------------------
Imported certificate "CA Signing Certificate - EXAMPLE"
-------------------------------------------------------
注記
CA 証明書のインポートは任意です。コマンドラインから SSL 経由でサーバーに接続するときに CA 証明書がクライアントセキュリティーデータベースに存在しない場合は、CA サーバーから CA 証明書をダウンロードしてインポートするかどうかが尋ねられます。

例2.3 クライアント証明書および秘密鍵のインポート

PKCS #12 から秘密鍵をインポートするには、以下を実行します。
$ pki -c Secret123 client-cert-import --pkcs12 ca_admin_cert.p12 --pkcs12-password Secret123
----------------------------------------
Imported certificates from PKCS #12 file
----------------------------------------
注記
管理者では、証明書と秘密鍵のインポートは任意です。管理者が新しいサブシステムを作成すると、管理者証明書と秘密鍵はクライアントセキュリティーデータベースに自動的に保存されます。

ローカル証明書の削除

pki client-cert-del
ローカル証明書を削除します。

2.4.2. pki証明書を使用した証明書管理

pki cert-* コマンドを使用すると、CA で証明書および証明書要求を管理できます。これらのコマンドの詳細は、pki-cert(1) の man ページを参照してください。

証明書の一覧表示

pki cert-find
すべての証明書を一覧表示します。

例2.4 有効な証明書のみの一覧表示

有効な証明書のみを一覧表示するには、以下を実行します。
$ pki cert-find --status VALID

例2.5 検索制約が設定されたファイルに基づく証明書の一覧表示

ファイルで定義された検索制約で証明書を一覧表示するには、以下を実行します。
  1. 検索制約を定義する XML ファイルを準備します。ファイルは以下の形式に従う必要があります。
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <CertSearchRequest>
    
        <serialNumberRangeInUse>true</serialNumberRangeInUse>
        <serialFrom></serialFrom>
        <serialTo></serialTo>
        
        <subjectInUse>false</subjectInUse>
        <eMail></eMail>
        <commonName></commonName>
        <userID></userID>
        <orgUnit></orgUnit>
        <org></org>
        <locality></locality>
        <state></state>
        <country></country>
        
        <matchExactly>false</matchExactly>
        
        <status></status>
        
        <revokedByInUse>false</revokedByInUse>
        <revokedBy></revokedBy>
        
        <revokedOnFrom>false</revokedOnFrom>
        <revokedOnTo></revokedOnTo>
        
        <revocationReasonInUse>false</revocationReasonInUse>
        <revocationReason></revocationReason>
        
        <issuedByInUse>false</issuedByInUse>
        <issuedBy></issuedBy>
        
        <issuedOnInUse>false</issuedOnInUse>
        <issuedOnFrom></issuedOnFrom>
        <issuedOnTo></issuedOnTo>
        
        <validNotBeforeInUse>false</validNotBeforeInUse>
        <validNotBeforeFrom></validNotBeforeFrom>
        <validNotBeforeTo></validNotBeforeTo>
        
        <validNotAfterInUse>false</validNotAfterInUse>
        <validNotAfterFrom></validNotAfterFrom>
        <validNotAfterTo></validNotAfterTo>
        
        <validityLengthInUse>false</validityLengthInUse>
        <validityOperation></validityOperation>
        <validityCount></validityCount>
        <validityUnit></validityUnit>
        
        <certTypeInUse>false</certTypeInUse>
        <certTypeSubEmailCA></certTypeSubEmailCA>
        <certTypeSubSSLCA></certTypeSubSSLCA>
        <certTypeSecureEmail></certTypeSecureEmail>
        
    </CertSearchRequest>
    
  2. コマンドにファイルパスを追加して、pki cert-find コマンドを実行します。
    $ pki cert-find --input filename

証明書の表示

pki cert-show
指定した証明書を表示または取得します。

例2.6 証明書のダウンロード

pki cert-show を使用して証明書をダウンロードするには、次のコマンドを実行します。
$ pki cert-show certificate ID --encoded --output filename

証明書要求の作成

pki cert-request-profile-show および pki cert-request-submit
これらのコマンドは、証明書要求を作成して送信するために使用できます。

例2.7 証明書要求の作成および送信

pki cert-request-profile-show および pki cert-request-submit を使用して証明書 要求を作成して送信 するには、以下を実行します。
  1. CSR を生成します。
    $ certutil -R -d security database directory -s subject DN -a
  2. 以下のコマンドを使用して、プロファイルテンプレートを取得します。
    $ pki cert-request-profile-show profile --output file
  3. 出力ファイルを編集し、CSR を cert_request 属性に挿入します。以下に例を示します。
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <CertEnrollmentRequest>
    
    ...
    
        <Input id="i1">
    	
    ...
    
          <Attribute name="cert_request_type">
            <Value>pkcs10</Value>
    
    ...
    
          </Attribute>
          <Attribute name="cert_request">
            <Value>
    MIIBZTCBzwIBADAmMRAwDgYDVQQKEwdFWEFNUExFMRIwEAYDVQQDEwlUZXN0IFVz
    ZXIwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAL7hYQp/g4FblKRd3Cjyfh8e
    MFGZLbTDZcY+YBxOk43JeqIDLkGZRHpr/84hK4lgISuyXpvz8owKel2jw6q7bP9Z
    0D8AGrrJfEvAuMQrAJiMd/O3U6CKF9+U/z8RjzHPXjzAKl/cIVpqnPuAQOMWQGmx
    HkxmLYZww0hKcc9nl5KPAgMBAAGgADANBgkqhkiG9w0BAQUFAAOBgQCtpV2ts1Hp
    w+s7ev90d2gRpmPBtNGfOz4OsOpNYbDX3fGabkLFIJAWQ8arjQqToGawIh0nZpND
    UJ9hSa1gIfI+4uxYKjk6cFQAPnZeVgLg1KgELVIzYZ0Qem5NXHmRsR/Vwxh5abzX
    XeuHTCnFT0Elpva9mnR+tqe1agZwHghDwQ==
            </Value>
    
    ...
    
          </Attribute>
        </Input>
    
    ...
    
    </CertEnrollmentRequest>
    
  4. pki cert-request-submit コマンドを使用して要求を送信します。
    $ pki cert-request-submit filename

証明書要求ステータスの確認

pki cert-request-show
証明書要求のステータスを表示します。

証明書要求の管理

重要
証明書リクエストの表示または処理は、エージェントの認証情報を使用して実行する必要があります。pki コマンドの使用時に認証する方法は、「認証」 を参照してください。
pki cert-request-find
すべての証明書要求を表示します。
pki cert-request-review
証明書要求を確認し、approve または reject などのアクションを実行します。

例2.8 pki cert-requestを使用した証明書の確認

pki cert-request-review を使用して証明書を確認するには、次のコマンドを実行します。
  1. 指定の証明書要求で ファイルを生成します。
    $ pki agent authentication cert-request-review request_ID --output filename
  2. 生成された出力ファイルを手動で確認し、必要に応じて編集します。
  3. コマンドラインに以下のアクションの 1 つを入力してレビューを完了します。
    • approve
    • reject
    • cancel
    • update
    • validate
    • assign
    • unassign
注記
--action を使用して、必要なレビューアクションを直接コマンドに渡すことで、承認プロセスを 1 つのステップで実行することができます。以下に例を示します。
$ pki agent authentication cert-request-review request_ID --action approve

証明書の取り消し

重要
証明書の取り消し、保持、またはリリースは、エージェントの認証情報を使用して実行する必要があります。pki コマンドの使用時に認証する方法は、「認証」 を参照してください。
pki cert-revoke
証明書の取り消し
pki cert-hold
一時的に証明書を保持します。
pki cert-release-hold
保持されている証明書を解放します。

2.4.3. pki ユーザーおよび pki グループを使用したユーザー および グループの管理

pki user-* コマンドおよび pki group-* コマンドを使用すると、ユーザーおよびグループを管理できます。これらのコマンドでは、操作が適用されるサブシステムを指定する必要があります。これらのコマンドの詳細は、pki-user(1) および pki-group(1) の man ページを参照してください。
重要
これらのコマンドはすべて、管理者の認証情報を使用して実行する必要があります。pki コマンドの使用時に認証する方法は、「認証」 を参照してください。
pki subsystem-user-find
ユーザーを一覧表示します。
pki subsystem-group-find
グループを一覧表示します。
pki subsystem-user-show
指定したユーザーの詳細を表示します。
pki subsystem-group-show
指定したグループの詳細を表示します。
pki subsystem-user-add
新しいユーザーを追加します。
pki subsystem-group-add
新規グループを追加します。
pki subsystem-user-mod
既存のユーザーエントリーを変更します。
pki subsystem-group-mod
既存のグループエントリーを変更します。
pki subsystem-user-del
ユーザーを削除します。
pki subsystem-group-del
グループを削除します。

2.4.4. pki group-member および pki user-membershipを使用したグループメンバーおよびユーザーメンバーシップの管理

pki group-member-* コマンド
グループメンバー管理用のコマンド
pki user-membership-* コマンド
ユーザーメンバーシップ管理のコマンド
利用可能なグループメンバーおよびユーザーメンバーシップの管理コマンドの完全なリストについては、pki group-member または pki user-membership を実行します。コマンドの詳細は、pki-group-member(1) および pki-user-membership(1) の man ページを参照してください。

2.4.5. pki セキュリティードメインを使用したセキュリティードメイン管理

pki securitydomain-show
セキュリティードメイン情報を表示します。このコマンドの詳細は、pki-securitydomain(1) の man ページを参照してください。

2.4.6. pki key-*を使用したキー管理

pki key-* コマンドを使用すると、KRA でキーを管理できます。これらのコマンドの詳細は、pki-key(1) の man ページを参照してください。

テンプレート

pki key-template-find
利用可能なすべてのキーテンプレートを一覧表示します。
pki key-template-show
キーテンプレートを表示するか、キーテンプレートをファイルに保存します。

例2.9 キーテンプレートのファイルへの保存

キーテンプレートをファイルに保存するには、以下を実行します。
$ pki key-template-show retrieveKey --output retrieveKey.xml

主要なリクエスト

重要
すべてのキー要求は、KRA エージェントの認証情報で実行する必要があります。pki コマンドの使用時に認証する方法は、「認証」 を参照してください。
pki key-request-find
送信されたすべてのキー要求を一覧表示します。
pki key-request-show
指定したキーリクエストを表示します
pki key-request-review
キー要求を確認します。レビュープロセスは、例2.8「pki cert-requestを使用した証明書の確認」 で説明されているように、証明書要求の確認と同じルールに従います。

重要
すべてのキー操作は、KRA エージェントの認証情報で実行する必要があります。pki コマンドの使用時に認証する方法は、「認証」 を参照してください。
pki key-find
アーカイブされたすべての鍵を一覧表示します。
pki key-generate
サーバーで新しいキーを生成します。
pki key-archive
コマンドラインで指定されたシークレットをアーカイブする
テンプレートですでに暗号化されたシークレットをアーカイブするには、以下を実行します。
$ pki -d ~/.dogtag/pki-tomcat/ca/alias/ -c Secret123 -n caadmin key-archive --input archiveKey.xml
pki key-retrieve
キーを取得します。

例2.10 ランダムセキュリティーパラメーターを使用した鍵の取得

無作為に生成されるセキュリティーパラメーターでキーを取得するには、以下を実行します。
$ pki -d ~/.dogtag/pki-tomcat/ca/alias/ -c Secret123 -n caadmin key-retrieve --keyID 0x1

Retrieve Key Information
------------------------
  Key Algorithm: RSA
  Key Size: 1024
  Nonce data: rYkeh4Rb+MI=

  Actual archived data: MIICdwIBADANBgkqhkiG9w0BAQEFAASCAmEwggJdAgEAAoGBALTyleypbSGRnb8+
P/BItA74mTdLX4eFY+fKE4hraeOV4ts+4M9qfry/FJkbMq3dpIpsxuMmGclbHEUQ
J/MfLAHgaxwVLGK8qCGb0IeY0Z7qIbGucSCLcDVpODlsTvqftK/SJZm56ODu7xXh
...

例2.11 カスタムセキュリティーパラメーターによるキーの取得

テンプレートで指定されたカスタムセキュリティーパラメーターでキーを取得するには、以下を実行します。
$ pki -d ~/.dogtag/pki-tomcat/ca/alias/ -c Secret123 -n caadmin key-retrieve --input retrieveKey.xml
pki key-recover
キーを復元します。
pki key-show
指定したキーの詳細を表示します。

例2.12 キー ID を指定する際のキーの表示

キー ID を指定するときにキーを表示するには、次のコマンドを実行します。
$ pki -d ~/.dogtag/pki-tomcat/ca/alias/ -c Secret123 -n caadmin key-show 0x1
  Key ID: 0x1
  Client Key ID: test
  Status: active
  Algorithm: RSA
  Size: 1024
  Owner: kraadmin
  Public Key: 

MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC08pXsqW0hkZ2/Pj/wSLQO+Jk3
S1+HhWPnyhOIa2njleLbPuDPan68vxSZGzKt3aSKbMbjJhnJWxxFECfzHywB4Gsc
FSxivKghm9CHmNGe6iGxrnEgi3A1aTg5bE76n7Sv0iWZuejg7u8V4QmU+jBc79O4
ydfTGLzZvtTVrYbgdQIDAQAB

例2.13 クライアントキー ID を指定する際のキーの表示

クライアントキー ID を指定するときにキーを表示するには、次のコマンドを実行します。
$ pki -d ~/.dogtag/pki-tomcat/ca/alias/ -c Secret123 -n caadmin key-show --clientKeyID test
  Key ID: 0x1
  Client Key ID: test
  Status: active
  Algorithm: RSA
  Size: 1024
  Owner: kraadmin
  Public Key: 

MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC08pXsqW0hkZ2/Pj/wSLQO+Jk3
S1+HhWPnyhOIa2njleLbPuDPan68vxSZGzKt3aSKbMbjJhnJWxxFECfzHywB4Gsc
FSxivKghm9CHmNGe6iGxrnEgi3A1aTg5bE76n7Sv0iWZuejg7u8V4QmU+jBc79O4
ydfTGLzZvtTVrYbgdQIDAQAB
pki key-mod --status active
キーをアクティブにします。--status オプションを inactive に設定すると、キーが無効になります。

2.4.7. pki ca-kraconnectorを使用した KRA コネクター管理

pki ca-kraconnector-* コマンドを使用すると、KRA コネクターを管理できます。
重要
pki ca-kraconnector-* コマンドはすべて CA に送信され、管理者として実行される必要があります。pki コマンドの使用時に認証する方法は、「認証」 を参照してください。
pki ca-kraconnector-show
KRA コネクターを表示します。
pki ca-kraconnector-add
新しい KRA コネクターを追加します。
pki ca-kraconnector-del
KRA コネクターを削除します。

2.4.8. pki caを使用した CA 管理

pki ca-* コマンドを使用すると、さまざまな CA サービスにアクセスできます。

プロファイルの一覧表示

pki ca-profile-find
指定されたデータベース内のすべての CA プロファイルを一覧表示します。

プロファイルの表示

pki ca-profile-show
データベースで指定されたプロファイルを表示します

2.4.9. pki tpsを使用した TPS 管理

pki tps-* コマンドを使用すると、さまざまな TPS サービスにアクセスできます。

アクティビティー

tps-activity-find
すべての TPS アクティビティーを表示します
tps-activity-show
指定したアクティビティーを表示します

Audit

tps-audit-mod
監査設定を変更します。
tps-audit-show
監査設定をファイルに表示します。

Users

pki tps-user-find
すべての TPS ユーザーを表示します。
pki tps-user-show
指定した TPS ユーザーを表示します
pki tps-user-add
新しい TPS ユーザーを追加します。
pki tps-user-mod
既存の TPS ユーザーの変更
pki tps-user-del
TPS ユーザーを削除します。

プロファイル

pki tps-profile-find
すべての TPS プロファイルを表示します。
pki tps-profile-show
指定した TPS ユーザーを表示します
pki tps-profile-add
新しい TPS プロファイルを追加します。
pki tps-profile-mod
既存の TPS プロファイルの変更
pki tps-profile-del
TPS プロファイルを削除します。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.