2.5. コマンドラインインターフェイス
このセクションでは、コマンドラインユーティリティーを説明します。
2.5.1. "pki" CLI
pki
コマンドラインインターフェイス (CLI) は、Red Hat Certificate System 計画、インストール、およびデプロイメントのガイド の REST インターフェイス を参照してください。CLI を呼び出すには、以下を実行します。
pki [CLI options] <command> [command parameters]
$ pki [CLI options] <command> [command parameters]
Copy to clipboardCopiedCLI オプションは、コマンドの前に配置する必要があり、コマンドの後にコマンドパラメーターを指定する必要があることに注意してください。
2.5.1.1. pki CLI の初期化
コマンドラインインターフェイスを初めて使用するには、新しいパスワードを指定し、以下のコマンドを使用します。
pki -c <password> client-init
Copy to clipboardCopied$ pki -c <password> client-init
これにより、
~/.dogtag/nssdb
ディレクトリーに新しいクライアント NSS データベースが作成されます。パスワードは、クライアントの NSS データベースを使用するすべての CLI 操作に指定する必要があります。
または、パスワードがファイルに保存されている場合は、-C オプションを使用してファイルを指定できます。以下に例を示します。
pki -C password_file client-init
Copy to clipboardCopied$ 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
Copy to clipboardCopied$ 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
Copy to clipboardCopied$ 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>
Copy to clipboardCopied$ pki -c <password> pkcs12-import --pkcs12-file <file> --pkcs12-password <password>
クライアント証明書を確認するには、次のコマンドを実行します。
certutil -V -u C -n "nickname" -d ~/.dogtag/nssdb
Copy to clipboardCopiedcertutil -V -u C -n "nickname" -d ~/.dogtag/nssdb
2.5.1.2. "pki" CLI の使用
コマンドラインインターフェイスは、階層構造で多数のコマンドをサポートします。トップレベルのコマンドをリスト表示するには、追加のコマンドまたはパラメーターを指定せずに
pki
コマンドを実行します。pki
Copy to clipboardCopied$ pki
コマンドにはサブコマンドがあります。それらをリスト表示するには、コマンド名を指定し、追加オプションは指定せずに
pki
を実行します。以下に例を示します。pki ca
Copy to clipboardCopied$ pki ca
pki ca-cert
Copy to clipboardCopied$ pki ca-cert
コマンドの使用情報を表示するには --help オプションを使用します。
pki --help
Copy to clipboardCopied$ pki --help
pki ca-cert-find --help
Copy to clipboardCopied$ pki ca-cert-find --help
man ページを表示するには、
help
コマンドを指定します。pki help
Copy to clipboardCopied$ pki help
pki help ca-cert-find
Copy to clipboardCopied$ pki help ca-cert-find
認証を必要としないコマンドを実行するには、コマンドとそのパラメーター (必要な場合) を指定します。以下に例を示します。
pki ca-cert-find
Copy to clipboardCopied$ pki ca-cert-find
クライアント証明書の認証を必要とするコマンドを実行するには、証明書のニックネーム、クライアント NSS データベースのパスワード、および任意のサーバーの URL を指定します。
pki -U <server URL> -n <nickname> -c <password> <command> [command parameters]
Copy to clipboardCopied$ pki -U <server URL> -n <nickname> -c <password> <command> [command parameters]
以下に例を示します。
pki -n jsmith -c password ca-user-find ...
Copy to clipboardCopied$ 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
Copy to clipboardCopied$ 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 input.ascii output.bin
Copy to clipboardCopied
詳細、その他のオプション、およびその他の例は、AtoB(1)
の man ページを参照してください。
2.5.3. AuditVerify
AuditVerify ユーティリティーは、ログエントリーの署名を検証して、監査ログの整合性を検証します。
以下に例を示します。
AuditVerify -d ~jsmith/auditVerifyDir -n Log Signing Certificate -a ~jsmith/auditVerifyDir/logListFile -P "" -v
$ AuditVerify -d ~jsmith/auditVerifyDir -n Log Signing Certificate -a ~jsmith/auditVerifyDir/logListFile -P "" -v
Copy to clipboardCopied
この例では、~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 input.bin output.ascii
Copy to clipboardCopied
詳細、その他のオプション、およびその他の例は、BtoA(1)
の man ページを参照してください。
2.5.5. CMCRequest
CMCRequest ユーティリティーは、証明書の発行または失効要求を作成します。以下に例を示します。
CMCRequest example.cfg
$ CMCRequest example.cfg
Copy to clipboardCopied
CMCRequest
ユーティリティーのオプションはすべて、このユーティリティーに渡される設定ファイルの一部として指定されます。設定ファイルのオプションと詳細は、CMCRequest(1)
の man ページを参照してください。4.3 も併せて参照してください。CMC および 「CMCRequest
を使用した証明書の取り消し」 を使用した証明書の要求と受け取り
2.5.6. CMCRevoke
レガシー。使用しないでください。
2.5.8. 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
$ 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
Copy to clipboardCopied
この例では新しい 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.9. HttpClient
HttpClient
ユーティリティーは、CMC 要求を送信するための NSS 対応 HTTP クライアントです。
以下に例を示します。
HttpClient request.cfg
$ HttpClient request.cfg
Copy to clipboardCopied
HttpClient
ユーティリティーへのすべてのパラメーターは request.cfg
ファイルに保存されます。詳細は、HttpClient --help
コマンドの出力を参照してください。
2.5.10. 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
$ OCSPClient -h server.example.com -p 8080 -d /etc/pki/pki-tomcat/alias -c "caSigningCert cert-pki-ca" --serial 2
Copy to clipboardCopied
この例では、ポート 8080
(-p) 上の server.example.com
OCSP サーバー (-h) にクエリーを実行し、シリアル番号 2
(--serial) を持つ caSigningcet cert-pki-ca
(-c) によって署名された証明書が有効かどうかを確認します。/etc/pki/pki-tomcat/alias
ディレクトリーの NSS データベースが使用されます。
詳細情報、その他のオプション、およびその他の例は、OCSPClient --help
コマンドの出力を参照してください。
2.5.11. 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"
$ PKCS10Client -d /etc/dirsrv/slapd-instance_name/ -p password -a rsa -l 2048 -o ~/ds.csr -n "CN=$HOSTNAME"
Copy to clipboardCopied
この例では、/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.12. PrettyPrintCert
PrettyPrintCert ユーティリティーは、人間が判読可能な形式で証明書の内容を表示します。
以下に例を示します。
PrettyPrintCert ascii_data.cert
$ PrettyPrintCert ascii_data.cert
Copy to clipboardCopied
このコマンドは、ascii_data.cert
ファイルの出力を解析して、その内容を人間が読める形式で表示します。出力には、署名アルゴリズム、指数、モジュール、証明書拡張などの情報が含まれます。
詳細、その他のオプション、追加の例については、PrettyPrintCert(1)
の man ページを参照してください。
2.5.13. PrettyPrintCrl
PrettyPrintCrl ユーティリティーは、CRL ファイルの内容を人間が判読できる形式で表示します。
以下に例を示します。
PrettyPrintCrl ascii_data.crl
$ PrettyPrintCrl ascii_data.crl
Copy to clipboardCopied
このコマンドは、ascii_data.crl
ファイルの出力を解析して、その内容を人間が読める形式で表示します。出力には、失効署名アルゴリズム、失効の発行者、取り消された証明書とその理由がリストになったものなどが含まれます。
詳細、その他のオプション、追加の例については、PrettyPrintCrl(1)
の man ページを参照してください。
2.5.14. TokenInfo
TokenInfo ユーティリティーは、NSS データベース内のトークンをリスト表示します。
以下に例を示します。
TokenInfo ./nssdb/
$ TokenInfo ./nssdb/
Copy to clipboardCopiedこのコマンドは、指定のデータベースディレクトリーに登録されたすべてのトークン (HSM、ソフトトークンなど) を表示します。
詳細情報、その他のオプション、追加のについては例は、TokenInfo
コマンドの出力を参照してください。
2.5.15. tkstool
tkstool
ユーティリティーは、トークンキーサービス (TKS) サブシステムと対話します。
以下に例を示します。
tkstool -M -n new_master -d /var/lib/pki/pki-tomcat/alias -h token_name
$ tkstool -M -n new_master -d /var/lib/pki/pki-tomcat/alias -h token_name
Copy to clipboardCopied
このコマンドは、HSM token_name
の /var/lib/pki/pki-tomcat/alias
NSS データベースに new_master
(-n) という名前の新しいマスターキー (-M) を作成します。
詳細情報、その他のオプション、およびその他の例は、tkstool -H
コマンドの出力を参照してください。