2.5. コマンドラインインターフェイス


このセクションでは、コマンドラインユーティリティーを説明します。

2.5.1. "pki" CLI

pki コマンドラインインターフェイス (CLI) では、REST インターフェイスを使用してサーバー上のさまざまなサービスにアクセスできます (計画、インストール、デプロイメントのガイド (Common Criteria Edition) の 2.3.4 REST インターフェイス を参照)。CLI を呼び出すには、以下を実行します。

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

CLI オプションは、コマンドの前に配置する必要があり、コマンドの後にコマンドパラメーターを指定する必要があることに注意してください。

2.5.1.1. pki CLI の初期化

  • コマンドラインインターフェイスを初めて使用するには、新しいパスワードを指定し、以下のコマンドを使用します。

    $ pki -c <password> client-init

    これにより、~/.dogtag/nssdb ディレクトリーに新しいクライアント NSS データベースが作成されます。パスワードは、クライアントの NSS データベースを使用するすべての CLI 操作に指定する必要があります。

    または、パスワードがファイルに保存されている場合は、-C オプションを使用してファイルを指定できます。以下に例を示します。

    $ pki -C password_file client-init
  • CA 証明書をクライアント NSS データベースにインポートするには、計画、インストール、デプロイメントのガイド (Common Criteria Edition) の 10.5 NSS データベースへの証明書のインポート を参照してください。
  • コマンドによっては、クライアント証明書の認証が必要な場合があります。既存のクライアント証明書とその鍵をクライアント NSS データベースにインポートするには、PKCS #12 ファイルとパスワードを指定して、以下のコマンドを実行します。

    1. まず、.p12 ファイルから管理者クライアント証明書を抽出します。

      $ openssl pkcs12 -in file -clcerts -nodes -nokeys -out file.crt
    2. 計画、インストール、デプロイメントのガイド (Common Criteria Edition) の第 10 章 証明書/キー暗号トークンの管理 の説明に従って、管理クライアント証明書を検証してインポートします。

      $ PKICertImport -d ~/.dogtag/nssdb -n "nickname" -t ",," -a -i file.crt -u C
重要

CA 管理クライアント証明書をインポートする前に、中間証明書とルート CA 証明書がインポートされていることを確認します。

  • 既存のクライアント証明書とその鍵をクライアント NSS データベースにインポートするには、PKCS #12 ファイルとパスワードを指定して、以下のコマンドを実行します。

    $ pki -c <password> pkcs12-import --pkcs12-file <file> --pkcs12-password <password>
  • クライアント証明書を確認するには、次のコマンドを実行します。

    $ certutil -V -u C -n "nickname" -d ~/.dogtag/nssdb

2.5.1.2. "pki" CLI の使用

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

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

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

    $ pki --help
    $ pki ca-cert-find --help
  • man ページを表示するには、help コマンドを指定します。

    $ pki help
    $ pki help ca-cert-find
  • 認証を必要としないコマンドを実行するには、コマンドとそのパラメーター (必要な場合) を指定します。以下に例を示します。

    $ pki ca-cert-find
  • クライアント証明書の認証を必要とするコマンドを実行するには、証明書のニックネーム、クライアント NSS データベースのパスワード、および任意のサーバーの URL を指定します。

    $ pki -U <server URL> -n <nickname> -c <password> <command> [command parameters]

    以下に例を示します。

    $ pki -n jsmith -c password ca-user-find ...
  • デフォルトでは、CLI は http://local_host_name:8080 でサーバーと通信します。別の場所でサーバーと通信するには、URL を -U オプションで指定します。以下はその例です。

    $ pki -U https://server.example.com:8443 -n jsmith -c password ca-user-find

2.5.2. AtoB

AtoB ユーティリティーは、Base64 でエンコードされた証明書を、同等のバイナリーにデコードします。以下に例を示します。

$ AtoB input.ascii output.bin

詳細、その他のオプション、およびその他の例は、AtoB(1) の man ページを参照してください。

2.5.3. AuditVerify

AuditVerify ユーティリティーは、ログエントリーの署名を検証して、監査ログの整合性を検証します。

以下に例を示します。

$ AuditVerify -d ~jsmith/auditVerifyDir -n Log Signing Certificate -a ~jsmith/auditVerifyDir/logListFile -P "" -v

この例では、~jsmith/auditVerifyDir NSS データベース (-d) 内の Log Signing Certificate (-n) を使用して監査ログを検証します。検証するログのリスト (-a) は ~jsmith/auditVerifyDir/logListFile ファイルにあります。こちらは、コンマ区切りで時系列順に並べられています。証明書の先頭に接頭辞 (-P) を追加し、キーデータベースのファイル名を空にします。出力レベルは verbose (-v) です。

詳しい内容、その他のオプション、追加の例については、AuditVerify(1) の man ページまたは 「署名付き監査ログの表示と検証」 を参照してください。

2.5.4. BtoA

BtoA ユーティリティーは、バイナリーデータを Base64 でエンコードします。以下に例を示します。

$ BtoA input.bin output.ascii

詳細、その他のオプション、およびその他の例は、BtoA(1) の man ページを参照してください。

2.5.5. CMCRequest

CMCRequest ユーティリティーは、証明書の発行または失効要求を作成します。以下に例を示します。

$ CMCRequest example.cfg
注記

CMCRequest ユーティリティーのオプションはすべて、このユーティリティーに渡される設定ファイルの一部として指定されます。設定ファイルのオプションと詳細は、CMCRequest(1) の man ページを参照してください。「CMC を使用した証明書の要求と受信」 および CMCRequest を使用した証明書の取り消し」 も参照してください。

2.5.6. CMCResponse

CMCResponse ユーティリティーは、CMC の発行要求または失効要求から返された CMC 応答を解析するために使用されます。以下に例を示します。

$ *CMCResponse -d /home/agentSmith/certdb_dir -i /home/agentSmith/certdb_dir/cmc.dirsrv_pkcs10.resp -o /home/agentSmith/certdb_dir/Server-Cert.crt*

詳細、その他のオプション、追加の例については、CMCResponse(1) の man ページを参照してください。

重要

"-v" オプションを指定して CMCResponse を実行すると、チェーン内の各証明書の PEM が Cert:0Cert:1 などとして返されます。この出力では、すべての PEM の下に、チェーン内の各証明書も整った出力形式で表示されます。証明書は決まった順序で表示されないため、チェーン内での位置を確認するには、各 "Certificate" の下にある "Subject:" を確認する必要があります。対応する PEM が上と同じ位置に表示されます。

2.5.7. CMCRevoke

レガシー。使用しないでください。

2.5.8. CMCSharedToken

CMCSharedToken ユーティリティーは、共有シークレットの CMC 要求のユーザーパスフレーズを暗号化します。以下に例を示します。

$ CMCSharedToken -d . -p myNSSPassword -s "shared_passphrase" -o cmcSharedTok2.b64 -n "subsystemCert cert-pki-tomcat"

共有パスフレーズ (-s) は、現行ディレクトリー (-d) の NSS データベースにある、subsystemCert cert-pki-tomcat (-n) という名前の証明書を使用して暗号化され、cmcSharedtok2.b64 ファイル (-o) に保存されます。デフォルトのセキュリティートークンである internal が使用され (-h が指定されていないため)、トークンへのアクセスにはトークンパスワード myNSSPassword が使用されます。

詳しい情報、その他のオプション、追加の例については、CMCSharedtoken(1) の man ページと 「共有シークレットトークンの作成」 を参照してください。

2.5.9. CRMFPopClient

CRMFPopClient ユーティリティーは、NSS データベースを使用する Certificate Request Message Format (CRMF) クライアントであり、Proof of Possession を提供します。

以下に例を示します。

$ CRMFPopClient -d . -p password -n "cn=subject_name" -q POP_SUCCESS -b kra.transport -w "AES/CBC/PKCS5Padding" -t false -v -o /user_or_entity_database_directory/example.csr

この例では新しい CSR を作成します。その CSR では、cn=subject_name サブジェクト DN (-n)、現行ディレクトリー (-d) の NSS データベース、トランスポートに使用する証明書 kra.transport (-b)、AES/CBC/PKCS5Padding キーラップアルゴリズムの verdose 出力が指定され (-v)、生成される CSR が /user_or_entity_database_directory/example.csr ファイル (-o) に書き込まれます。

詳細やその他のオプション、追加の例は、CRMFPopClient --help コマンドの出力を参照してください。また、「CRMFPopClient を使用して CSR を作成する」 も併せて参照してください。

2.5.10. HttpClient

HttpClient ユーティリティーは、CMC 要求を送信するための NSS 対応 HTTP クライアントです。

以下に例を示します。

$ HttpClient request.cfg
注記

HttpClient ユーティリティーへのすべてのパラメーターは request.cfg ファイルに保存されます。詳細は、HttpClient --help コマンドの出力を参照してください。

2.5.11. OCSPClient

OCSPClient は、証明書失効リストのステータスを確認する Online Certificate Status Protocol (OCSP) クライアントです。

以下に例を示します。

$ OCSPClient -h server.example.com -p 8080 -d /etc/pki/pki-tomcat/alias -c "caSigningCert cert-pki-ca" --serial 2

この例では、ポート 8080 (-p) 上の server.example.com OCSP サーバー (-h) にクエリーを実行し、シリアル番号 2 (--serial) を持つ caSigningcet cert-pki-ca (-c) によって署名された証明書が有効かどうかを確認します。/etc/pki/pki-tomcat/alias ディレクトリーの NSS データベースが使用されます。

詳細情報、その他のオプション、およびその他の例は、OCSPClient --help コマンドの出力を参照してください。

2.5.12. PKCS10Client

PKCS10Client ユーティリティーは、必要に応じて HSM 上に RSA キーおよび EC キーの CSR を PKCS10 形式で作成します。

以下に例を示します。

$ PKCS10Client -d /etc/dirsrv/slapd-instance_name/ -p password -a rsa -l 2048 -o ~/ds.csr -n "CN=$HOSTNAME"

この例では、/etc/dirsrv/slapd-instance_name/ ディレクトリー (-d に 2048 ビット (-l) で、新しい RSA (-a) キーを、データベースパスワード password (-p) で作成します。出力 CSR は ~/ds.cfg ファイル (-o) に保存されます。証明書 DN は CN=$HOSTNAME (-n) になります。

詳細、その他のオプション、追加の例については、PKCS10Client(1) の man ページを参照してください。

2.5.13. PrettyPrintCert

PrettyPrintCert ユーティリティーは、人間が読める形式で証明書の内容を表示します。

以下に例を示します。

$ PrettyPrintCert ascii_data.cert

このコマンドは、ascii_data.cert ファイルの出力を解析して、その内容を人間が読める形式で表示します。出力には、署名アルゴリズム、指数、モジュール、証明書拡張などの情報が含まれます。

詳細、その他のオプション、追加の例については、PrettyPrintCert(1) の man ページを参照してください。

2.5.14. PrettyPrintCrl

PrettyPrintCrl ユーティリティーは、CRL ファイルの内容を人間が読める形式で表示します。

以下に例を示します。

$ PrettyPrintCrl ascii_data.crl

このコマンドは、ascii_data.crl ファイルの出力を解析して、その内容を人間が読める形式で表示します。出力には、失効署名アルゴリズム、失効の発行者、取り消された証明書とその理由がリストになったものなどが含まれます。

詳細、その他のオプション、追加の例については、PrettyPrintCrl(1) の man ページを参照してください。

2.5.15. TokenInfo

TokenInfo ユーティリティーは、NSS データベース内のすべてのトークンをリスト表示します。

以下に例を示します。

$ TokenInfo ./nssdb/

このコマンドは、指定のデータベースディレクトリーに登録されたすべてのトークン (HSM、ソフトトークンなど) を表示します。

詳細情報、その他のオプション、追加のについては例は、TokenInfo コマンドの出力を参照してください。

2.5.16. tkstool

tkstool ユーティリティーは、トークンキーサービス (TKS) サブシステムと対話します。

以下に例を示します。

$ tkstool -M -n new_master -d /var/lib/pki/pki-tomcat/alias -h token_name

このコマンドは、HSM token_name/var/lib/pki/pki-tomcat/alias NSS データベースに new_master (-n) という名前の新しいマスターキー (-M) を作成します。

詳細情報、その他のオプション、およびその他の例は、tkstool -H コマンドの出力を参照してください。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.