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

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

2.5.1. pkiCLI

pki コマンドラインインターフェイス (CLI) は、『Red Hat Certificate System 計画、インストール、およびデプロイメントのガイド』の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
クライアントの NSS データベースに CA 証明書をインポートするには、『Red Hat Certificate System 計画、インストール、およびデプロイメントのガイド』のNSS データベースへの証明書のインポートセクションを参照してください。
コマンドによっては、クライアント証明書の認証が必要な場合があります。既存のクライアント証明書とその鍵をクライアント NSS データベースにインポートするには、PKCS #12 ファイルとパスワードを指定して、以下のコマンドを実行します。
以下のコマンドを実行して、.p12 ファイルから管理クライアント証明書を抽出します。
$ openssl pkcs12 -in file -clcerts -nodes -nokeys -out file.crt
Red Hat Certificate System 計画、インストール、およびデプロイメントのガイド』の証明書/キー暗号化トークンの管理セクションに記載の手順に従って、管理クライアント証明書の検証およびインポートを行います。
$ 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