Cisco Application Control Engine モジュール SSL コンフィギュレーション ガイド Software Version A3(1.0)
証明書および鍵の管理
証明書および鍵の管理
発行日;2012/02/06 | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 2MB) | フィードバック

目次

証明書および鍵の管理

SSL デジタル証明書および鍵ペア

鍵ペアおよび CSR の生成

RSA 鍵ペアの生成

CSR パラメータ セットの作成と定義

CSR パラメータ セットの作成

通常名の指定

国の指定

州または行政区分の指定

シリアル番号の指定

地域の指定

組織名の指定

組織ユニットの指定

E メール アドレスの指定

CSR の生成

グローバル サイト証明書の準備

証明書および鍵ペア ファイルのインポートまたはエクスポート

証明書と鍵ペア ファイルのインポート

証明書と鍵ペア ファイルのエクスポート

SSL 証明書のアップグレード

鍵ペアに対する証明書の確認

証明書と鍵ペア ファイルの削除

チェーン グループの作成

認証の証明書グループの設定

証明書および鍵の管理

この章では、インポート機能とエクスポート機能を使用して、Cisco 4700 Series Application Control Engine(ACE)appliance上で各種の証明書と RSA 鍵ペア ファイルを管理する方法について説明します。また、Certificate Authority(CA; 認証局)から証明書を取得するために使用する Certificate Signing Request(CSR; 証明書署名要求)を作成し送信するプロセスについても説明します。

この章の主な内容は、次のとおりです。

SSL デジタル証明書および鍵ペア

鍵ペアおよび CSR の生成

グローバル サイト証明書の準備

証明書および鍵ペア ファイルのインポートまたはエクスポート

SSL 証明書のアップグレード

鍵ペアに対する証明書の確認

証明書と鍵ペア ファイルの削除

チェーン グループの作成

認証の証明書グループの設定

SSL デジタル証明書および鍵ペア

デジタル証明書と鍵ペアは、ユーザ認証のためのデジタル識別情報の一種です。VeriSign や Thawte などの CA が、その公開鍵の有効性を保証する証明書を発行します。クライアント証明書またはサーバ証明書には、次の識別アトリビュートが含まれます。

CA(証明書の発行元)の名前と CA デジタル署名

シリアル番号

証明書が認証するクライアントまたはサーバの名前(証明書のサブジェクト)

サブジェクトの公開鍵

証明書の有効期限を示すタイム スタンプ

1 つのCA が SSL 証明書と Certificate Revocation List(CRL; 証明書失効リスト)を作成する 1 つ、または複数の署名証明書を保持しています。署名証明書ごとに、CA 署名の作成に使用する、照合秘密鍵があります。CA は、署名証明書(埋め込まれた公開鍵とともに)を公開し、誰もがその署名証明書にアクセスし、それを使用して、SSL 証明書または CRL が特定の CA によって実際に署名されたことを確認できるようにします。

ACE では、次のアプリケーションの場合に、証明書と対応する鍵ペアが必要となります。

SSL 終了 ― ACE は SSL プロキシ サーバとして動作し、クライアントとの間の SSL セッションを終了します。SSL 終了の場合は、サーバ証明書と対応する鍵ペアを取得する必要があります。

SSL 開始 ― ACE はクライアントとして動作し、SSL サーバとの間で SSL セッションを開始します。SSL 開始ではクライアント証明書と対応する鍵ペアを使用できますが、SSL サーバでクライアントの認証がイネーブルになっていないかぎり必須ではありません。


) ACE は、ワイルドカード証明書をサポートしています。


ACE とピア間で SSL セッションを確立するには、それら 2 つのデバイス間で SSL ハンドシェイクを実行するときに RSA 鍵ペアが必要となります。鍵ペアとは、公開鍵とそれに対応する秘密鍵です。RSA 鍵ペアは、ハンドシェイクの実行時にセッション キーを暗号化するために使用されます。セッション キーは、両方のデバイスがハンドシェイクに従ってデータを暗号化するために使用されます。

SSL ハンドシェイク プロセスの詳細については、「概要」「SSL ハンドシェイク」を参照してください。

ACE を SSL 終了または SSL 開始用に設定する前に、デジタル証明書および対応する公開鍵と秘密鍵のペアを必要な ACE コンテキストにインポートする必要があります。

冗長構成では、ACE はアクティブ コンテキスト内にある SSL 証明書と鍵ペアを、フォールト トレラント(FT)グループのスタンバイ コンテキストと同期化しません。ACE が設定の同期化を行った場合にスタンバイ コンテキストに必要な証明書と鍵がないと、設定の同期化は失敗し、スタンバイ コンテキストは STANDBY_COLD 状態になります。

証明書と鍵をスタンバイ コンテキストにコピーするには、 crypto export コマンドを使用して、証明書と鍵をアクティブ コンテキストから FTP サーバまたは TFTP サーバにエクスポートします。次に、 crypto import コマンドを使用して、証明書と鍵をスタンバイ コンテキストにインポートします。アクティブ コンテキストに証明書をインポートした方法を使用して、証明書と鍵を直接スタンバイ コンテキストにインポートすることもできます。証明書と鍵がアクティブ コンテキストに「エクスポート不可」としてインポートされている場合、この方法を使用します。証明書と鍵のインポートとエクスポートの詳細については、「証明書および鍵ペア ファイルのインポートまたはエクスポート」を参照してください。

ここでスタンバイ コンテキストを STANDBY_HOT 状態に戻すには、必要な SSL 証明書と鍵をスタンバイ コンテキストにインポートする必要があります。次に、FT グループのアクティブ コンテキストにおいて、コンフィギュレーション モードで以下のコマンドを入力してアクティブ コンテキスト設定のバルク同期化を実行します。

1. no ft auto-sync running-config

2. ft auto-sync running-config

冗長性の詳細については、『 Cisco 4700 Series Application Control Engine Appliance Administration Guide 』を参照してください。

証明書と対応する鍵ペアがない場合は、ACE を使用して、最大 2048 ビットの RSA 鍵ペアと CSR を生成できます。CA に証明書を要求する必要がある場合に、CSR を作成できます。CA は CSR に署名し、認定されたデジタル証明書を返します。


) 鍵ペアの生成時や証明書と鍵ペアのインポート時に、強力なセキュリティ ポリシーを実装するには、ACE のユーザ ロールを理解する必要があります。ユーザ ロールの詳細については、『Cisco 4700 Series Application Control Engine Appliance Virtualization Configuration Guide』を参照してください。


図2-1 に、ACE 対応の RSA 鍵ペアと SSL 証明書を設定する方法の概要を示します。

図2-1 SSL 鍵および証明書の設定の概要

 

鍵ペアおよび CSR の生成

既存の証明書と照合鍵ペアがない場合は、鍵ペアと CSR を生成するための一連の証明書および鍵管理ユーティリティが ACE に組み込まれています。CA が CSR に署名すると、それが ACE で使用できる証明書になります。

既存の証明書と照合鍵ペアがある場合は、ACE の必要なコンテキストにそれらをインポートできます。証明書と秘密鍵をインポートする方法の詳細については、「証明書および鍵ペア ファイルのインポートまたはエクスポート」を参照してください。

ここで説明する内容は、次のとおりです。

RSA 鍵ペアの生成

CSR パラメータ セットの作成と定義

CSR の生成

RSA 鍵ペアの生成

ACE は、最大 2048 ビットの RSA 鍵ペアの生成をサポートします。RSA 鍵ペアを生成するには、 crypto generate key コマンドを EXEC モードで実行します。

このコマンドの構文は次のとおりです。

crypto generate key [non-exportable] bitsize filename

引数とキーワードは次のとおりです。

non-exportable ― (任意) ACE で鍵ペア ファイルを「エクスポート不可」としてマークします。鍵ペア ファイルを ACE からエクスポートできなくなります。

bitsize ― 鍵ペアのセキュリティ強度。鍵ペア ファイルのビット数によって、Web トランザクションの安全を確保するために使用される RSA 鍵ペアのサイズが決まります。鍵が長いほど、RSA セキュリティ ポリシーの強度が高まるため、より安全な実装になります。使用可能なエントリ(ビット単位)は次のとおりです。

512(最低のセキュリティ)

768(通常のセキュリティ)

1024(高度なセキュリティ、レベル 1)

1536(高度なセキュリティ、レベル 2)

2048(高度なセキュリティ、レベル 3)

filename ― 生成された RSA 鍵ペア ファイルに割り当てる名前。40 文字以内で、引用符のない英数字を入力します。鍵ペア ファイル名は、ACE が識別する目的でのみ使用します。

たとえば、RSA 鍵ペア ファイル MYRSAKEY.PEM を生成するには、次のように入力します。

host1/Admin# crypto generate key non-exportable 2048 MYRSAKEY.PEM
Generating 2048 bit RSA key pair
host1/Admin#
 

RSA 鍵ペアを生成したあと、次のタスクを実行できます。

CSR パラメータ セットの作成 ― CSR パラメータ セットは、ACE が CSR 生成プロセスで使用する認定者名アトリビュートを定義します。CSR コンフィギュレーション ファイルの作成方法の詳細については、「CSR パラメータ セットの作成と定義」を参照してください。

RSA 鍵ペア ファイルの CSR を生成し、その CSR を CA に転送して署名を要求します。このアクションでは、RSA 秘密鍵が ACE 内部で直接作成されるので外部に転送されることなく、セキュリティはさらに強化されます。生成された各鍵ペアには、必ず対応する証明書が付随しています。CSR の生成方法の詳細については、「CSR の生成」を参照してください。

CSR パラメータ セットの作成と定義

CSR パラメータ セットは、ACE が CSR 生成プロセスで CSR に適用する 認定者名 アトリビュートを定義します。認定者名アトリビュートは、サイトを認証するために必要な情報を CA に提供します。CSR パラメータ セットを作成すると、同じ認定者名アトリビュートを持つ複数の CSR を作成できます。

ACE のコンテキストごとに最大 8 つの CSR パラメータ セットを指定できます。

ここで説明する内容は、次のとおりです。

CSR パラメータ セットの作成

通常名の指定

国の指定

州または行政区分の指定

シリアル番号の指定

地域の指定

組織名の指定

組織ユニットの指定

E メール アドレスの指定

CSR パラメータ セットの作成

CSR パラメータ セットを作成するには、コンフィギュレーション モードで crypto csr-params コマンドを使用します。コンテキストごとに最大 8 つの CSR パラメータ セットを作成できます。

このコマンドの構文は次のとおりです。

crypto csr-params csr_param_name

csr_param_name 引数 は、CSR パラメータ セットの名前です。64 文字以内で、引用符やスペースを含めずに、英数字を入力します。

たとえば、CSR パラメータ セット CSR_PARAMS_1 を作成するには、次のように入力します。

host1/Admin(config)# crypto csr-params CSR_PARAMS_1
 

CSR パラメータ セットを作成すると、CLI が CSR パラメータ コンフィギュレーション モードに切り替わります。このモードで認定者名パラメータを定義します。

host1/Admin(config-csr-params)#
 

認定者名は、複数の必須パラメータと省略可能なパラメータから構成されます。ACE では、次の CSR パラメータ セット アトリビュートを定義する必要があります。

国名

州または行政区分

通常名


) 必須の CSR パラメータ セット アトリビュートを設定しないと、ACE が CSR パラメータ セットを使用して CSR を生成するときに、エラー メッセージが表示されます。


既存の CSR パラメータ セットを削除するには、次のように入力します。

host1/Admin(config)# no csr-params CSR_PARAMS_1
 

既存の CSR パラメータ セットに関連する情報を表示するには、 show crypto csr-params コマンドを使用します(「SSL 証明書および鍵ペア情報の表示」を参照)。

通常名の指定

CSR パラメータ セットの必須の通常名パラメータを定義するには、CSR パラメータ コンフィギュレーション モードで common-name コマンドを使用します。

このコマンドの構文は次のとおりです。

common-name name

name 引数 は、SSL サイトのドメイン名または個々のホスト名です。64 文字以内で、引用符やスペースを含めずに、英数字を入力します。

たとえば、通常名 WWW.ABC123.COM を指定するには、次のように入力します。

host1/Admin(config-csr-params)# common-name WWW.ABC123.COM
 

CSR パラメータ セットから既存の通常名を削除するには、次のように入力します。

host1/Admin(config-csr-params)# no common-name

国の指定

CSR パラメータ セットの必須の国名パラメータを定義するには、CSR パラメータ コンフィギュレーション モードで country コマンドを使用します。

このコマンドの構文は次のとおりです。

country name

name 引数は、SSL サイトが常駐する国の 2 文字コードです(ISO 3166 の国コード リストを参照)。2 文字以内で、引用符やスペースを含まないテキスト文字列を入力します。

たとえば、国として US(米国)を指定するには、次のように入力します。

host1/Admin(config-csr-params)# country US
 

CSR パラメータ セットから既存の国を削除するには、次のように入力します。

host1/Admin(config-csr-params)# no country

州または行政区分の指定

CSR パラメータ セットの必須の州名パラメータを定義するには、CSR パラメータ コンフィギュレーション モードで state コマンドを使用します。

このコマンドの構文は次のとおりです。

state name

name 引数は、SSL サイトが常駐する州の名前です。40 文字以内で、引用符やスペースを含めずに、英数字を入力します。

たとえば、州として GA(ジョージア)を指定するには、次のように入力します。

host1/Admin(config-csr-params)# state GA
 

CSR パラメータ セットから既存の州を削除するには、次のように入力します。

host1/Admin(config-csr-params)# no state
 

シリアル番号の指定

CSR パラメータ セットの必須のシリアル番号パラメータを定義するには、CSR パラメータ コンフィギュレーション モードで serial-number コマンドを使用します。


) CA は、ユーザが指定したシリアル番号を CA 専用のシリアル番号で上書きする場合があります。


このコマンドの構文は次のとおりです。

serial-number number

number 引数は、証明書に割り当てるシリアル番号です。16 文字以内で、引用符やスペースを含めずに、英数字を入力します。

たとえば、シリアル番号 1001 を指定するには、次のように入力します。

host1/Admin(config-csr-params)# serial-number 1001
 

CSR パラメータ セットから既存のシリアル番号を削除するには、次のように入力します。

host1/Admin(config-csr-params)# no serial-number

地域の指定

CSR パラメータ セットの地域パラメータ(省略可能)を定義するには、CSR パラメータ コンフィギュレーション モードで locality コマンドを使用します。

このコマンドの構文は次のとおりです。

locality name

name 引数は、証明書に含まれる地域名です。40 文字以内で、引用符やスペースを含めずに、英数字を入力します。

たとえば、地域として ATHENS を指定するには、次のように入力します。

host1/Admin(config-csr-params)# locality ATHENS
 

CSR パラメータ セットから既存の地域を削除するには、次のように入力します。

host1/Admin(config-csr-params)# no locality ATHENS

組織名の指定

CSR パラメータ セットの組織名パラメータ(省略可能)を定義するには、CSR パラメータ コンフィギュレーション モードで organization-name コマンドを使用します。

このコマンドの構文は次のとおりです。

organization-name name

name 引数は、証明書に含まれる組織の名前です。64 文字以内で、引用符やスペースを含めずに、英数字を入力します。

たとえば、組織 ABC123 SYSTEMS INC を指定するには、次のように入力します。

host1/Admin(config-csr-params)# organization-name ABC123 SYSTEMS INC
 

CSR パラメータ セットから既存の組織名を削除するには、次のように入力します。

host1/Admin(config-csr-params)# no organization-name ABC123 SYSTEMS INC

組織ユニットの指定

CSR パラメータ セットの組織ユニット パラメータ(省略可能)を定義するには、CSR パラメータ コンフィギュレーション モードで organization-unit コマンドを使用します。

このコマンドの構文は次のとおりです。

organization-unit unit

unit 引数は、組織内の部署の名前です。64 文字以内で、引用符やスペースを含めずに、英数字を入力します。

たとえば、組織ユニット SSL ACCELERATOR を指定するには、次のように入力します。

host1/Admin(config-csr-params)# organization-unit SSL ACCELERATOR
 

CSR パラメータ セットから既存の組織ユニットを削除するには、次のように入力します。

host1/Admin(config-csr-params)# no organization-unit SSL ACCELERATOR
 

E メール アドレスの指定

CSR パラメータ セットの E メール アドレス パラメータ(省略可能)を定義するには、CSR パラメータ コンフィギュレーション モードで email コマンドを使用します。

このコマンドの構文は次のとおりです。

email address

address 引数は、サイトの E メール アドレスです。40 文字以内で、引用符やスペースを含めずに、英数字を入力します。

たとえば、E メール アドレス WEBADMIN@ABC123.COM を指定するには、次のように入力します。

host1/Admin(config-csr-params)# email WEBADMIN@ABC123.COM
 

CSR パラメータ セットから既存の E メール アドレスを削除するには、次のように入力します。

host1/Admin(config-csr-params)# no email
 

CSR の生成

新しい証明書を要求する場合、または証明書を更新する場合には、CSR ファイルを生成する必要があります。生成した CSR を CA に送信すると、CA が RSA 秘密鍵を使用して CSR に署名します。その CSR が証明書になります。

RSA 鍵ペア ファイルに対応した CSR ファイルを生成し、証明書要求を CA に転送するには、RSA 鍵ペア ファイルを含むコンテキストの EXEC コマンド モードで crypto generate csr コマンドを使用します。このコマンドは、PEM 形式で PKCS10 符号化された CSR を生成します。

このコマンドの構文は次のとおりです。

crypto generate csr csr_params key_filename

引数は、次のとおりです。

csr_params 認定者名アトリビュートを含む CSR パラメータ セット(「CSR パラメータ セットの作成と定義」を参照)。64 文字以内で、引用符やスペースを含めずに、英数字を入力します。ACE は、CSR パラメータ セットに含まれる認定者名アトリビュートを CSR に適用します。

key_filename CSR の作成に使用する鍵を含む RSA 鍵ペア ファイル名(この鍵は、ACE が CSR に埋め込む公開鍵となります)。40 文字以内で、引用符やスペースを含めずに、英数字を入力します。RSA 鍵ペア ファイルは、必ず、ACE の現在のコンテキストにロードされます。適切な鍵ペアが存在しない場合、ACE はエラー メッセージをログに記録します。

たとえば、CSR パラメータ セット CSR_PARAMS_1 と、ファイル
MYRSAKEY_1.PEM 内の RSA 鍵ペアに基づいて CSR を生成するには、次のように入力します。

host1/Admin# crypto generate csr CSR_PARAMS_1 MYRSAKEY_1.PEM
-----BEGIN CERTIFICATE REQUEST-----
MIIBcDCCARoCAQAwgbQxCzAJBgNVBAYTAlVTMRIwEAYDVQQIEwlTb21lU3RhdGUx
ETAPBgNVBAcTCFNvbWVDaXR5MRcwFQYDVQQKEw5BIENvbXBhbnkgTmFtZTEbMBkG
A1UECxMSV2ViIEFkbWluaXN0cmF0aW9uMR0wGwYDVQQDExR3d3cuYWNvbXBhbnlu
YW1lLmNvbTEpMCcGCSqGSIb3DQEJARYad2ViYWRtaW5AYWNvbXBhbnluYW1lLmNv
bSAwXDANBgkqhkiG9w0BAQEFAANLADBIAkEAtBNcNXMBqh5cJHbWFsqe9LMUO90T
pYG7gF5ODvtFGREMkHh7s6S1GF131IBWCSelG4Q/qEztjCO7y3pyjruVNQIDAQAB
oAAwDQYJKoZIhvcNAQEEBQADQQCMmXRdNPBDtMQPFvylpED5UMbeaMRm2iaC+1uZ
IaHmdoX4h5eckauu9pPgSxczau8w68PF+PDS9DAAMeRDxisL
-----END CERTIFICATE REQUEST-----
(config)#
 

crypto generate csr コマンドは、PEM 形式の PKCS10 CSR を生成し、その CSR を画面に出力します。大半の CA は、ユーザに証明書要求を画面にカット アンド ペーストするように要求する Web ベースのアプリケーションを保持しています。必要な場合は、CSR をファイルにカット アンド ペーストすることもできます。ACE は CSR のコピーをローカルには保存しません。ただし、いつでも、同じ CSR パラメータ セットと鍵ペア ファイルを使用して、同じ要求を再生成できます。


) 輸出規制されたブラウザ向けに 128 ビット暗号化が可能なグローバル サイト証明書が必要な場合は、CA に StepUp/GSC 証明書またはチェーン証明書を要求する必要があります。証明書を受信したら、それを ACE で使用できるように準備する必要があります。詳細については、「グローバル サイト証明書の準備」を参照してください。


CSR を CA に送信したあと 1 ~ 7 営業日以内に、署名付き証明書を受け取ります。証明書を受信したら、その証明書を必要な ACE コンテキストにインポートする必要があります(「証明書と鍵ペア ファイルのインポート」を参照)。

グローバル サイト証明書の準備

エクスポート ブラウザは、40 ビット暗号化を使用して SSL サーバへの接続を開始できます。通常のサーバ証明書を使用する場合、ブラウザとサーバは SSL ハンドシェイクを完了し、40 ビット鍵を使用してアプリケーション データを暗号化します。

グローバル サイト証明書は、輸出規制されたブラウザ向けの 128 ビット暗号化が可能な拡張サーバ証明書です。サーバがグローバル証明書を送信してブラウザに応答すると、クライアントは自動的に 128 ビット暗号化を使用して接続を再度ネゴシエーションします。

CA にグローバル サイト証明書を要求した場合は、必ず、グローバル証明書とその中間 CA 証明書の両方を取得します。中間 CA 証明書は、グローバル証明書の有効性を証明します。次の URL から、VeriSign 中間証明書を取得できます。

http://www.verisign.com/support/install/intermediate.html

グローバル サイト証明書と中間 CA 証明書を受信したら、それらを必要な ACE コンテキストにインポートする必要があります(「証明書と鍵ペア ファイルのインポート」を参照)。その後、両方の証明書を含む証明書チェーン グループを作成します(「チェーン グループの作成」を参照)。ACE は、初期 SSL ハンドシェイクの間にチェーン グループをクライアントに送信します。

証明書および鍵ペア ファイルのインポートまたはエクスポート

証明書と鍵ペア ファイルは、リモート セキュア サーバから ACE へインポートできます。これらのファイルを転送する場合は、ACE とリモート サーバ間で安全な暗号化された転送メカニズムを使用することを推奨します。

ACE は、Secure Shell(SSHv2)プロトコルをサポートしています。このプロトコルは、安全でないネットワークを経由する 2 台のホスト間に安全な暗号化通信を提供します。ネットワーク デバイス間のファイル転送用として、ACE は Secure File Transfer Protocol(SFTP; セキュア ファイル転送プロトコル)、File Transfer Protocol(FTP; ファイル転送プロトコル)、および Trivial File Transfer Protocol(TFTP; 簡易ファイル転送プロトコル)をサポートしています。これらの 3 つのプロトコルの中で、SFTP のみが安全で暗号化された接続を提供できるため、SFTP を使用することを推奨します。

証明書または鍵ペア ファイルを ACE にインポートする前に、次のタスクを実行する必要があります。

ACE で、ACE への SSH アクセスが有効で、SSH クライアントからの接続が受け入れ可能であることを確認します。デフォルトでは、SSH アクセスは有効です。SSH アクセスを制限すると、ACE は SSH クライアントからの接続を受け入れず、import コマンドは失敗します(エラー メッセージが生成されます)。


) Catalyst 6500 シリーズ スイッチまたは Cisco 7600 シリーズ ルータで Secure Shell デーモンを設定する方法の詳細については、『Catalyst 6500 Series Switch Cisco IOS Software Configuration Guide』または『Cisco 7600 Series Router Cisco IOS Software Configuration Guide』を参照してください。


SFTP サーバで、サーバが適切に設定されていることを確認します。ユーザ ディレクトリは、証明書と鍵ペアが常駐するディレクトリをポイントしている必要があります。このパスは、ACE が、証明書と鍵が SFTP サーバとの間で正しくコピーされていることを確認するために必要です。

ここで説明する内容は、次のとおりです。

証明書と鍵ペア ファイルのインポート

証明書と鍵ペア ファイルのエクスポート

証明書と鍵ペア ファイルのインポート

ACE は、鍵ペアと、最大 2048 ビットの鍵で署名された証明書のインポートをサポートします。証明書または鍵ペア ファイルをリモート サーバから ACE にインポートするには、EXEC モードで crypto import コマンドを使用します。ネットワーク デバイスは、SSL ハンドシェイク時に、自身の証明書と対応する公開鍵を使用して自分のアイデンティティを証明するため、必ず、証明書ファイルとそれに対応する鍵ペア ファイルの両方をインポートしてください。

このコマンドの構文は次のとおりです。

crypto import [non-exportable] {{ftp | sftp} [passphrase passphrase ] ip_addr username remote_filename local_filename } | {tftp [passphrase passphrase ] ip_addr remote_filename local_filename } | terminal local_filename [passphrase passphrase ]

キーワード、引数、およびオプションは次のとおりです。

non-exportable ― (任意)インポートしたファイルをエクスポート不可としてマークします。そのファイルは ACE からエクスポートできなくなります。

ftp FTP ファイル転送プロセスを指定します。

sftp ― SFTP ファイル転送プロセスを指定します。SFTP は FTP または TFTP より安全なため、SFTP を使用することを推奨します。

tftp ― TFTP ファイル転送プロセスを指定します。

terminal ― 証明書と鍵ペア情報を端末表示にペーストすることで、カット アンド ペーストを使用してファイルをインポートできます。ASCII 形式の PEM ファイルを表示するには、端末方式を使用する必要があります。

passphrase passphrase ― (任意)ファイルを使用するためにファイル転送要求と一緒に送信する必要のあるパスフレーズ付きでファイルが作成されたことを示します。パスフレーズは、暗号化された PEM ファイルと PKCS ファイルにのみ関係します。

ip_addr ― リモート サーバの IP アドレス。ドット付き 10 進表記で IP アドレスを入力します(たとえば、192.168.12.15)。

username ― リモート サーバにアクセスするために必要なユーザ名。ACE は、ユーザがコマンドを実行するときにパスワードの入力を求めます。

remote_filename ― リモート サーバに常駐するインポート対象の証明書または鍵ペア ファイルの名前。

local_filename ― ACE にインポートしたときにファイルを保存する名前。40文字以内で、引用符の付いていない英数字を入力します。


) ACE は、ワイルドカード証明書をサポートしています。


たとえば、RSA 鍵ファイル MYRSAKEY.PEM を SFTP サーバからインポートするには、次のように入力します。

host1/Admin# crypto import non-exportable sftp 1.1.1.1 JOESMITH /USR/KEYS/MYRSAKEY.PEM MYKEY.PEM
Password: ********
Passive mode on.
Hash mark printing on (1024 bytes/hash mark).
#
Successfully imported file from remote server.
host1/Admin#
 

次の例は、 terminal キーワードを使用して、証明書情報をファイル MYCERT.PEM にペーストできるようにする方法を示しています。

host1/Admin# crypto import terminal MYCERT.PEM
Enter PEM formatted data ending with a blank line or “quit” on a line by itself
--------BEGIN CERTIFICATE-----------------------
MIIC1DCCAj2gAwIBAgIDCCQAMA0GCSqGSIb3DQEBAgUAMIHEMQswCQYDVQQGEwJa
QTEVMBMGA1UECBMMV2VzdGVybiBDYXBlMRIwEAYDVQQHEwlDYXBlIFRvd24xHTAb
BgNVBAoTFFRoYXd0ZSBDb25zdWx0aW5nIGNjMSgwJgYDVQQLEx9DZXJ0aWZpY2F0
aW9uIFNlcnZpY2VzIERpdmlzaW9uMRkwFwYDVQQDExBUaGF3dGUgU2VydmVyIENB
MSYwJAYJKoZIhvcNAQkBFhdzZXJ2ZXItY2VydHNAdGhhd3RlLmNvbTAeFw0wMTA3
-----------END CERTIFICATE------------------------
quit

証明書と鍵ペア ファイルのエクスポート

証明書または鍵ペア ファイルを ACE からリモート サーバまたは端末画面にエクスポートするには、EXEC コマンド モードで crypto export コマンドを使用します。


) ファイルを ACE にインポートしたとき、エクスポート不可としてマークされた証明書または鍵ペア ファイルはエクスポートできません。


このコマンドの構文は次のとおりです。

crypto export local_filename {ftp | sftp | tftp | terminal} { ip_addr } { username } { remote_filename }

キーワード、引数、およびオプションは次のとおりです。

local_filename ACE に常駐するエクスポート対象のファイルの名前。40 文字以内で、引用符の付いていない英数字を入力します。

ftp FTP ファイル転送プロセスを指定します。

sftp ― SFTP ファイル転送プロセスを指定します。SFTP は FTP または TFTP より安全なため、SFTP を使用することを推奨します。

tftp ― TFTP ファイル転送プロセスを指定します。

terminal ― コピー アンド ペーストするために、ファイルの内容を端末に表示します。 terminal キーワードは、証明書または秘密鍵情報をコンソールからカット アンド ペーストする必要がある場合に使用します。ASCII 形式の PEM ファイルを表示するには、端末方式を使用する必要があります。

ip_addr ― リモート サーバの IP アドレスまたは名前。ドット付き 10 進表記で IP アドレスを入力します(たとえば、192.168.12.15)。

username ― リモート サーバにアクセスするために必要なユーザ名。 ACE は、ユーザがコマンドを実行するときにパスワードの入力を求めます。

remote_filename ― リモート サーバにファイルを保存する名前。

terminal キーワードのあとのリモート サーバ変数は、転送タイプとして ftp sftp 、または tftp を選択したときに、 ACE によって使用されます(変数は terminal に対して使用されるわけではありません)。これらの転送タイプのいずれかを選択し、リモート サーバ変数を定義しなかった場合は、 ACE が変数情報の入力を求めます。

たとえば、SFTP を使用して、鍵ファイル MYKEY.PEM を ACE からリモート SFTP サーバにエクスポートするには、次のように入力します。

host1/Admin# crypto export MYKEY.PEM sftp 192.168.1.2 JOESMITH /USR/KEYS/MYKEY.PEM
User password: ****
Writing remote file /usr/keys/mykey.pem
host1/Admin#

SSL 証明書のアップグレード

アクティブな SSL セッションや保留中の SSL セッションを中断することなく、SSL 証明書をアップグレードするには、以下の手順を実行します。


ステップ 1 EXEC モードで crypto import コマンドを使用して、新しい SSL 証明書をインポートし、新しい名前で保存します。「証明書と鍵ペア ファイルのインポート」を参照してください。たとえば、証明書を SFTP サーバからインポートするには、次のコマンドを入力します。

host1/Admin# crypto import non-exportable sftp 1.1.1.1 JOESMITH /USR/CERTS/MY_CERT.PEM MY_NEW_CERT.PEM
Password: ********
Passive mode on.
Hash mark printing on (1024 bytes/hash mark).
#
Successfully imported file from remote server.
host1/Admin#
 

ステップ 2 SSL プロキシ サービスによってフローがアクティブに処理されている間に、SSL プロキシ サービス内部の証明書ファイルの関連付けを変更します。それには、SSL プロキシ コンフィギュレーション モードで cert コマンドを使用します。「SSL 終了の設定」「証明書の指定」を参照してください。

たとえば、MY_NEW_CERT.PEM 証明書ファイル内の証明書を PSERVICE_SERVER SSL プロキシ サービスに関連付けるには、次のコマンドを入力します。

host1/Admin(config)# ssl-proxy service PSERVICE_SERVER
host1/Admin(config-ssl-proxy)# cert MY_NEW_CERT.PEM
 


 

鍵ペアに対する証明書の確認

デジタル証明書は、1 つの鍵ペアの公開鍵に基づいて作成され、1 つの鍵ペアのみと一緒に使用できます。証明書ファイル内の公開鍵と鍵ペア ファイル内の公開鍵を比較し、それらが同一であることを確認するには、EXEC コマンド モードで crypto verify コマンドを使用します。


) 証明書内の公開鍵が鍵ペア ファイル内の公開鍵と一致しない場合、ACE はエラー メッセージをログに記録します。


このコマンドの構文は次のとおりです。

crypto verify key_filename cert_filename

引数は、次のとおりです。

key_filename ― ACE が指定した証明書と照合するために使用するコンテキスト鍵ペア ファイルの名前。40 文字以内で、引用符のない英数字を入力します。

cert_filename ― ACE が指定した鍵ペアと照合するために使用するコンテキスト証明書ファイルの名前。40 文字以内で、引用符のない英数字を入力します。

たとえば、ファイル MYRSAKEY.PEM と MYCERT.PEM 内の公開鍵が一致するかどうかを確認するには、次のように入力します。

host1/Admin# crypto verify myrsakey.pem mycert.pem
keypair in myrsakey.pem matches certificate in mycert.pem
 

次の例は、公開鍵が一致しない場合に、ACE が表示する内容を示しています。

host1/Admin# crypto verify myrsakey_2.pem mycert.pem
Keypair in myrsakey_2.pem does not match certificate in mycert.pem
host1/Admin#
 

証明書と鍵ペア ファイルの削除

既に無効になった証明書と鍵ペア ファイルを削除するには、EXEC コマンド モードで crypto delete コマンドを使用します。

このコマンドの構文は次のとおりです。

crypto delete { filename | all}

キーワードと引数は次のとおりです。

filename ― 削除する特定の証明書または鍵ペア ファイルの名前。40 文字以内で、引用符のない英数字を入力します。

all ― コンテキストからすべての証明書と鍵ペア ファイルを削除します。

ACE にロードされた使用可能な証明書と鍵ペア ファイルのリストを表示するには、 show crypto files コマンドを使用します。


crypto delete コマンドは、指定したコンテキスト クリプト ファイルをフラッシュ メモリから削除しますが、既存の SSL サービスは中断されません。削除した SSL ファイルを別の SSL ファイルと置き換えなかった場合は、次回 vip inservice コマンドを入力したとき、またはデバイスのリロードが実行されたときに、その SSL サービスは無効になります。


たとえば、鍵ペア ファイル MYRSAKEY.PEM を削除するには、次のように入力します。

host1/Admin# crypto delete MYRASKEY.PEM

チェーン グループの作成

チェーン グループは、ACE がハンドシェイク時にピアに送信する 証明書チェーン を指定します。証明書チェーンは、サブジェクトの証明書、ルート CA 証明書、および中間 CA 証明書を含む証明書の階層リストです。証明書の検証者は、証明書チェーンで提供された情報を使用して、証明書階層リストをルート CA まで遡って、信頼できる CA を検索できます。検証者は、ルート CA 証明書に達する前に、信頼できるとみなせる CA を見つけることがあります。その場合、検証者は検索を停止します。

SSL プロキシ サービスを定義すると、サービスにチェーン グループを設定できます(「SSL 終了の設定」「SSL プロキシ サービスの作成と定義」を参照)。

ACE は、次の証明書チェーン グループ機能をサポートします。

チェーン グループには、最大 8 つの証明書チェーンを含めることができます。

ACE のコンテキストごとに最大 8 つのチェーン グループを指定できます。

チェーン グループの最大サイズは 16 KB です。

チェーン グループを作成するには、コンフィギュレーション モードで crypto chaingroup コマンドを使用します。

このコマンドの構文は次のとおりです。

crypto chaingroup group_name

group_name 引数は、チェーン グループの名前です。64 文字以内で、引用符やスペースを含めずに、英数字を入力します。

たとえば、チェーン グループ MYCHAINGROUP を作成するには、次のように入力します。

host1/Admin(config)# crypto chaingroup MYCHAINGROUP
 

チェーン グループが作成されると、CLI はチェーングループ コンフィギュレーション モードに切り替わります。このモードで、グループに必要な証明書ファイルを追加します。

host1/Admin(config-chaingroup)#
 

既存のチェーン グループを削除するには、次のように入力します。

host1/Admin(config)# no crypto chaingroup MYCHAINGROUP
 

証明書ファイルをチェーン グループに追加するには、チェーン グループ コンフィギュレーション モードで cert コマンドを使用します。1 つのチェーングループに最大 9 つの証明書を設定できます。

このコマンドの構文は次のとおりです。

cert cert_filename

cert_filename 引数は、ACE に格納されている既存の証明書ファイルの名前です。40 文字以内で、引用符のない英数字を入力します。


) チェーングループ証明書を変更した場合、SSL プロキシ サービス内で関連のあるチェーン グループを chaingroup コマンドで再指定しないと変更は適用されません。「SSL 終了の設定」「SSL プロキシ サービスの作成と定義」を参照してください。


既存の証明書ファイルのリストを表示するには、 show crypto files コマンドを使用します(「SSL 証明書および鍵ペア情報の表示」「証明書情報の表示」を参照)。証明書を検証するデバイスが正しい順序を判断するため、階層の順序で証明書を追加する必要はありません。

たとえば、証明書ファイル MYCERTS.PEM と MYCERTS_2.PEM をチェーン グループに追加するには、次のように入力します。

host1/Admin(config-chaingroup)# cert MYCERTS.PEM
host1/Admin(config-chaingroup)# cert MYCERTS_2.PEM
 

証明書ファイルをチェーン グループから削除するには、次のように入力します。

host1/Admin(config-chaingroup)# no cert MYCERTS_2.PEM

認証の証明書グループの設定

ACE で、認証グループを作成して証明書の署名者として信頼される、4 つの SSL 証明書のグループを実装できます。認証グループを作成して証明書を割り当てると、SSL 終了設定内のサービスに認証グループを割り当てて、クライアント認証をイネーブルにすることができます。クライアント認証についての詳細は、「SSL 終了の設定」「クライアント認証のイネーブル化」を参照してください。

また、グループを SSL 開始設定内のサービスに割り当てて、ACE がグループ証明書を使ってサーバ証明書の認証を行うようにすることができます。サーバ認証についての詳細は、「SSL 開始の設定」「サーバ認証での認証グループの使用」を参照してください。

認証グループを作成し、authgroup コンフィギュレーション モードにアクセスするには、コンフィギュレーション モードで crypto authgroup コマンドを使用します。このコマンドの構文は次のとおりです。

crypto authgroup group_name

group_name 引数は、証明書の認証グループの名前です。64 文字以内で、引用符やスペースを含めずに、英数字を入力します。

たとえば、認証グループ AUTH-CERT1 を作成するには、次のように入力します。

host1/Admin(config)# crypto authgroup AUTH-CERT1
 

認証グループの作成後、authgroup コンフィギュレーション モードにアクセスして、グループに必要な証明書ファイルを追加します。

host1/Admin(config-authgroup)#
 

既存の認証グループを削除するには、次のように入力します。

host1/Admin(config)# no crypto authgroup AUTH-CERT1
 

証明書ファイルを認証グループに追加するには、authgroup コンフィギュレーション モードで cert コマンドを使用します。最大 4 つの証明書を持つ認証グループを設定できます。

このコマンドの構文は次のとおりです。

cert cert_filename

cert_filename 引数は、ACE に格納されている既存の証明書ファイルの名前です。40 文字以内で、引用符のない英数字を入力します。


) 認証グループに変更を加えると、変更はただちに適用されます。


既存の証明書ファイルのリストを表示するには、 show crypto files コマンドを使用します(「SSL 証明書および鍵ペア情報の表示」「証明書情報の表示」を参照)。証明書を検証するデバイスが正しい順序を判断するため、階層の順序で証明書を追加する必要はありません。

たとえば、証明書ファイル MYCERTS.PEM と MYCERTS_2.PEM を認証グループに追加するには、次のように入力します。

host1/Admin(config-authgroup)# cert MYCERTS.PEM
host1/Admin(config-authgroup)# cert MYCERTS_2.PEM
 

証明書ファイルを認証グループから削除するには、次のように入力します。

host1/Admin(config-authgroup)# no cert MYCERTS_2.PEM