SSH Tectia

ssh-scepclient-g3

ssh-scepclient-g3 — SCEP 登録クライアント

書式

ssh-scepclient-g3 command [options] access [name]

Where command is one of the following:
     GET-CA
     GET-CHAIN
     ENROLL psk keypair template

Most commands can accept the following options:
     -o prefix       Save result into files with prefix.
     -S url          Use this socks server to access CA.
     -H url          Use this HTTP proxy to access CA.

The following identifiers are used to specify options:
     psk      -p key (used as revocationPassword or challengePassword)
     keypair  -P url (private-key URL)
     ca       -C file (CA certificate file)
              -E file (RA encryption certificate file)
              -V file (RA validation certificate file)
     template -T file (certificate template)
              -s subject-ldap[;type=value]
              -u key-usage-name[;key-usage-name]
              -U extended-key-usage-name[;extended-key-usage-name]
     access   URL where the CA listens for requests.

GET-CA and GET-CHAIN take name argument, that is something
interpreted by the CA to specify a CA entity managed by the responder.

Key URLs are either valid external key paths or in the format:
     "generate://savetype:password@keytype:size/save-file-prefix"
     "file://savetype:password@/file-prefix"
     "file://passphrase/file-prefix"
     "file:/file-prefix"
     "key-filename"

The "keytype" for the SCEP protocol has to be "rsa".

The key generation "savetype" can be:
 - ssh2 (Secure Shell 2 key type)
 - ssh1 (Legacy Secure Shell 1 key type)
 - ssh  (SSH proprietary crypto library format, passphrase-protected)
 - pkcs1 (PKCS#1 format)
 - pkcs8s (passphrase-protected PKCS#8, "shrouded PKCS#8")
 - pkcs8 (plain-text PKCS#8)
 - x509 (SSH proprietary X.509 library key type)

説明

ssh-scepclient-g3 コマンドライン ツール (Windows では ssh-scepclient-g3.exe) は、SCEP プロトコルを使用する証明書登録クライアントです。これによって RSA 公開鍵ペアを生成し、その公開コンポーネント用の証明書を取得できます。SCEP プロトコルは、Cisco 社のルータで使用するために Cisco 社と Verisign 社によって開発されました。現在はほとんどの CA プラットフォームが、クライアント証明書登録用にこのプロトコルをサポートしています。

コマンド

ssh-scepclient-g3 のコマンドライン コマンド キーワードを以下に示します。3 文字以上のショートハンドを使用してコマンドを識別できます。コマンドでは、大文字と小文字が区別されません。ユーザは、コマンドごとに CA アドレスの URL を指定する必要があります。ここで用語「ユーザ」は、ユーザ、プログラム、またはハードウェア デバイスを指します。

GET-CA

CA からの CA または RA 証明書のダウンロードを要求し、CA を検証するための証明書フィンガープリントを表示します。フィンガープリントは、通信以外の方法で CA から入手する必要があります。

GET-CHAIN

CA/RA から最上位レベル CA への証明書チェーンを要求します。

ENROLL

CA からの新しい証明書を要求します。CA は、通信以外の方法で要求を承認します。または、CA から受信したパスワードを含めることができます。

オプション

-o prefix

出力証明書を、指定された接頭辞が付加されたファイル名で保存します。接頭辞は数字で始まり、続いてファイル拡張子である .ca (CA 証明書の場合) または .crt (ユーザ証明書の場合) が付加されます。

-S url

SOCKS が有効化されているファイアウォールの向こう側に CA がある場合に SOCKS URL を指定します。URL の形式は socks://[username@]server[:port][/network/bits[,network/bits]] となります。

-H url

指定された HTTP プロキシ サーバを使用して CA にアクセスします。URL の形式は http://server[:port]/ となります。

usage の行では以下のメタ コマンドを使用します。

psk

CA または RA から提供される事前共有鍵。または、クライアントが作成し、発行された証明書の無効化をユーザが希望したときに CA に提供される失効パスワード。種類と必要性は、CA が使用する PKI プラットフォームによって異なります。

-p key

証明書要求または失効要求を承認するために暗号化された形式で CA に転送される、認証パスワードまたは失効パスワード。

keypair

証明されるサブジェクト鍵のペアを表します。

-P url

秘密鍵の場所を示す URL を表します。これは外部鍵の URLで、形式は書式項で規定されています。

ca

CA/RA 証明書。

-C file

登録の実行時に、指定したファイル パスから CA 証明書を読み込みます。

-E file

オプションで、RA 暗号化証明書を指定できます。

-V file

オプションで、RA 署名証明書を指定します。

template

証明されるサブジェクト名およびフラグを表します。

-T file

操作用のテンプレートとして使用される証明者が含まれたファイルを表します。サブジェクトを特定するために使用される値はここから読み取られますが、ユーザは鍵、鍵の使用フラグ、またはサブジェクト名を上書きできます。

-s subject-ldap[;type=value]*

リバース LDAP 形式のサブジェクト名を表します。これは最も一般的な形式ですが、代替サブジェクト名を指定することもできます。subject-ldap という名前は、要求に対してそのままコピーされます。

一般的には、"C=US,O=SSH,CN=Some Body" という形式で DN を選択しますが、証明書の使用に影響がなければ、任意の形式を使用できます。

指定可能な type の値は、ipemaildndnsuri、および rid です。

-u key-usage-name[;key-usage-name]*

要求された鍵の使用目的コードです。digitalSignaturenonRepudiationkeyEnciphermentdataEnciphermentkeyAgreementkeyCertSigncRLSignencipherOnlydecipherOnly、および help のコードが認識されます。特殊キーワード ヘルプには、RFC 3280 で定義されている、サポートされる鍵の使用法が一覧表示されています。

-U extended-key-usage-name[;extended-key-usage-name]*

要求された拡張鍵の使用コードを表します。ユーザ指定のドット区切り OID 値の他、serverAuthclientAuthcodeSigningemailProtectiontimeStampingikeIntermediate、および smartCardLogon のコードが認識されます。

access

CA のアドレスを URL 形式で指定します。ホスト アドレスが IPv6 アドレスの場合は角カッコで囲み、http://[IPv6-address]:port/ のようにする必要があります。

name

宛先 CA 名を指定します。

以下の例では、最初に CA 証明書を受信します。CA のアドレスは pki.ssh.com で、ポートは 8080、CA の名前は test-ca1.ssh.com です。

$ ssh-scepclient-g3 GET-CA \ 
   -o ca http://pki.ssh.com:8080/scep/ \
   test-ca1.ssh.com

Received CA/RA certificate ca-0.ca:

fingerprint 9b:96:51:bb:29:0d:c9:e0:75:c8:03:0d:0d:92:60:6c

次に、RSA 証明書を登録します。ユーザは ssh 鍵で CA に認証されます。サブジェクト名および代替 IP アドレスとともに鍵の使用フラグが指定されます。

$ ssh-scepclient-g3 ENROLL \
    -C ca-0.ca -p ssh \
    -o subject -P generate://pkcs8:ssh@rsa:1024/subject \
    -s 'C=FI,O=SSH,CN=SCEP Example;IP=1.2.3.4' \
    -u digitalsignature \
    http://pki.ssh.com:8080/scep/

Received user certificate subject-0.crt: 
fingerprint 4b:7e:d7:67:27:5e:e0:54:2f:5b:56:69:b5:01:d2:15
$ ls subject*
subject-0.crt   subject.prv