Citrix ADC

MPX 9700/10500/12500/15500 FIPSアプライアンス

米国国立標準技術研究所が発行する連邦情報処理規格 (FIPS) は、セキュリティシステムで使用される暗号化モジュールのセキュリティ要件を規定しています。Citrix ADC FIPS アプライアンスは、この規格の第 2 バージョンである FIPS-140-2 に準拠しています。

注: これ以降、FIPS への参照はすべて FIPS-140-2 を意味しています。

FIPS アプライアンスには、改ざん防止(改ざん防止)暗号化モジュールと、MPX 9700/10500/12500/15500 FIPS アプライアンスのキャビウム CN1620-NFBE3-2.0-G が搭載されており、FIPS 140-2 レベル 2 仕様に準拠するように設計されています。重要なセキュリティパラメータ (CSP) は、主にサーバーの秘密キーであり、暗号化モジュール (HSM) とも呼ばれます。暗号化モジュール (HSM) 内に安全に保存され、生成されます。CSP は、HSM の境界外でアクセスされることはありません。スーパーユーザー(nsroot)だけが、HSM 内に格納されているキーに対して操作を実行できます。

次の表は、標準のCitrix ADCアプライアンスとCitrix ADC FIPSアプライアンスの違いをまとめたものです。

設定 Citrix ADC アプライアンス Citrix ADC FIPSアプライアンス
キーストレージ ハードディスク上 FIPS カードで
暗号のサポート すべての暗号 FIPS承認された暗号
キーへのアクセス ハードディスクから アクセス不可

FIPS アプライアンスの設定には、汎用設定プロセスの完了直後に HSM の設定が含まれます。次に、FIPS キーを作成またはインポートします。FIPS キーを作成したら、バックアップ用にエクスポートする必要があります。FIPS キーを別のアプライアンスにインポートできるように、FIPS キーをエクスポートする必要がある場合もあります。たとえば、高可用性 (HA) セットアップで FIPS アプライアンスを構成するには、標準の HA セットアップが完了した直後に、プライマリノードから 2 次ノードに FIPS キーを転送する必要があります。

FIPS カードのファームウェアバージョンをバージョン 4.6.0 から 4.6.1 にアップグレードできます。また、ロックされた HSM をリセットして、不正なログオンを防止できます。Citrix ADC FIPSアプライアンスでは、FIPS承認暗号のみがサポートされています。

HSM の構成

Citrix ADC FIPSアプライアンスのHSMを構成する前に、ハードウェアの初期構成を完了する必要があります。MPX アプライアンスの詳細については、初期構成を参照してください。SDX アプライアンスの詳細については、ここをクリックしてください。

Citrix ADC FIPSアプライアンスのHSMを設定すると、HSM上の既存のデータがすべて消去されます。HSM を設定するには、スーパーユーザー(nsroot アカウント)としてアプライアンスにログオンする必要があります。HSM には、セキュリティ担当者 (SO) パスワードとユーザーパスワードのデフォルト値があらかじめ設定されています。このパスワードは、HSM の設定やロックされた HSM のリセットに使用します。パスワードの最大長は 14 文字の英数字です。記号は使用できません。

重要: set ssl fips コマンドを実行しないでください。最初に FIPS カードをリセットし、MPX FIPS アプライアンスを再起動する必要があります。

FIPS アプライアンスはデフォルトのパスワード値で使用できますが、使用する前に変更する必要があります。HSM を構成できるのは、スーパーユーザーとしてアプライアンスにログオンし、SO および User パスワードを指定した場合だけです。

重要: セキュリティ上の制約により、アプライアンスは SO パスワードを取得するための手段を提供しません。パスワードのコピーを安全に保管してください。HSM を再初期化する必要がある場合は、このパスワードを古い SO パスワードとして指定する必要があります。

HSM を初期化する前に、ソフトウェアの最新ビルドにアップグレードできます。最新のビルドにアップグレードするには、「システムソフトウェアのアップグレードまたはダウングレード」を参照してください。

アップグレード後、アプライアンスで /nsconfig/fips ディレクトリが正常に作成されたことを確認します。

CLI を使用して、MPX アプライアンスで HSM を設定します

スーパーユーザーとしてアプライアンスにログオンし、初期設定が完了したら、コマンドプロンプトで次のコマンドを入力して HSM を設定し、設定を確認します。

show ssl fips

reset ssl fips

reboot

set ssl fips -initHSM Level-2 <newSOpassword> <oldSOpassword> <userPassword> [-hsmLabel <string>]

save ns config

reboot

show ssl fips

例:

show fips

    FIPS Card is not configured
    Done
    reset fips
    reboot
    Are you sure you want to restart NetScaler (Y/N)? [N]:y

    set ssl fips -initHSM Level-2 sopin12345 so12345 user123 -hsmLabel cavium

    This command will erase all data on the FIPS card. You must save the configuration

    (saveconfig) after executing this command.


    Do you want to continue?(Y/N)y
    Done

    save ns config

    reboot

    Are you sure you want to restart NetScaler (Y/N)? [N]:y

    show fips

            FIPS HSM Info:
    HSM Label              : Citrix ADC FIPS
    Initialization         : FIPS-140-2 Level-2
    HSM Serial Number      : 2.1G1008-IC000021
    HSM State              : 2
    HSM Model              : NITROX XL CN1620-NFBE
    Firmware Version       : 1.1
    Firmware Release Date  : Jun04,2010
    Max FIPS Key Memory    : 3996
    Free FIPS Key Memory   : 3994
    Total SRAM Memory      : 467348
    Free SRAM Memory       : 62564
    Total Crypto Cores      : 3
    Enabled Crypto Cores    : 1
    Done

    Note: If you upgrade the firmware to version 2.2, the firmware release date is replaced with the firmware build.



    > show fips

    FIPS HSM Info:

    HSM Label                : Citrix ADC FIPS
    Initialization              : FIPS-140-2 Level-2
    HSM Serial Number    : 3.0G1235-ICM000264
    HSM State                : 2
    HSM Model               : NITROX XL CN1620-NFBE
    Hardware Version       : 2.0-G
    Firmware Version        : 2.2
    Firmware Build           : NFBE-FW-2.2-130009
    Max FIPS Key Memory : 3996
    Free FIPS Key Memory : 3958
    Total SRAM Memory    : 467348
    Free SRAM Memory     : 50524
    Total Crypto Cores      : 3
    Enabled Crypto Cores  : 3
    Done

GUIを使用して、MPX 9700/10500/12500/15500 FIPSアプライアンス上でHSMを構成する

  1. [トラフィック管理] > [SSL] > [FIPS] に移動します。

  2. 詳細ウィンドウの [FIPS 情報] タブで、[FIPS のリセット] をクリックします。

  3. ナビゲーションウィンドウで、[システム] をクリックします。

  4. 詳細ウィンドウで、[再起動] をクリックします。

  5. 詳細ペインの [FIPS 情報] タブで、[HSM の初期化] をクリックします。

  6. [HSM の初期化] ダイアログボックスで、次のパラメータの値を指定します。

    • セキュリティ担当者 (SO) パスワード* — 新しい SO パスワード
    • 古い SO パスワード* — 古い SO パスワード
    • ユーザー・パスワード*:ユーザー・パスワード
    • レベル:initHSM(現在レベル2に設定されており、変更できません)
    • HSM ラベル-hsmLabel

    *必須パラメータ

  7. [ OK] をクリックします。

  8. 詳細ウィンドウで、[保存] をクリックします。

  9. ナビゲーションウィンドウで、[システム] をクリックします。

  10. 詳細ウィンドウで、[再起動] をクリックします。

  11. [FIPS HSM 情報] で、設定した FIPS HSM について表示される情報が正しいことを確認します。

FIPS キーの作成と転送

FIPS アプライアンスの HSM を設定したら、FIPS キーを作成する準備が整います。FIPS キーは、アプライアンスの HSM に作成されます。その後、セキュアなバックアップとして FIPS キーをアプライアンスの CompactFlash カードにエクスポートできます。キーをエクスポートすると、別のアプライアンスの /flash にコピーし、そのアプライアンスの HSM にインポートすることによって、キーを転送することもできます。キーをエクスポートおよび転送する前に、2 つのスタンドアロンノード間で SIM を有効にする必要があります。HA セットアップで、ノードの 1 つが新しいアプライアンスに置き換えられた場合、FIPS キーをエクスポートまたはインポートする前に、この新しいアプライアンスと HA セットアップの既存のアプライアンス間で SIM を有効にする必要があります。

FIPS キーを作成する代わりに、既存の FIPS キーをインポートしたり、外部キーを FIPS キーとしてインポートしたりできます。MPX 9700/10500/12500/15500 FIPS アプライアンスで、2048 ビットの証明書とキーペアを追加する場合は、正しい証明書とキーペアがあることを確認します。

注: HA セットアップを計画している場合は、FIPS キーを作成する前に、FIPS アプライアンスが HA セットアップで設定されていることを確認してください。

FIPS キーの作成

FIPS キーを作成する前に、HSM が設定されていることを確認します。

キータイプ(RSA または ECDSA)を指定し、ECDSA キーのカーブを指定する必要があります。

GUI を使用して FIPS キーを作成する

  1. [トラフィック管理] > [SSL] > [FIPS] に移動します。
  2. 詳細ウィンドウの [FIPS キー] タブで、[追加] をクリックします。
  3. [FIPS キーを作成] ダイアログボックスで、次のパラメータの値を指定します。

    • FIPS キー名*—fipsKeyName
    • 係数*—modulus
    • 指数*: exponent

    *必須パラメータ

  4. [ 作成] をクリックし、[ 閉じる] をクリックします。
  5. [FIPS キー] タブで、作成した FIPS キーに対して表示される設定が正しいことを確認します。

CLI を使用して FIPS キーを作成する

コマンドプロンプトで、次のコマンドを入力して FIPS キーを作成し、設定を確認します。

create ssl fipsKey <fipsKeyName> -modulus <positive_integer> [-exponent ( 3 | F4 )]

show ssl fipsKey [<fipsKeyName>]

例:

    create fipskey Key-FIPS-1 -keytype RSA -modulus 2048 -exponent 3

    show ssl fipsKey Key-FIPS-1

                FIPS Key Name: Key-FIPS-1 Key Type: RSA Modulus: 2048   Public Exponent: F4 (Hex: 0x10001)

FIPS キーのエクスポート

FIPS HSMで作成されたキーのバックアップを作成することをお勧めします。HSM 内のキーが削除された場合は、同じキーを再度作成する方法がなく、それに関連付けられているすべての証明書が役に立たなくなります。

キーをバックアップとしてエクスポートするだけでなく、別のアプライアンスに転送するためにキーをエクスポートする必要がある場合があります。

次の手順では、アプライアンスの CompactFlash の /nsconfig/ssl フォルダーに FIPS キーをエクスポートし、強力な非対称キー暗号化方式を使用してエクスポートされたキーを保護する方法について説明します。

CLI を使用した FIPS キーのエクスポート

コマンドプロンプトで、次のように入力します。

export ssl fipsKey <fipsKeyName> -key <string>

例:

export fipskey Key-FIPS-1 -key Key-FIPS-1.key

GUI を使用して FIPS キーをエクスポートする

  1. [トラフィック管理] > [SSL] > [FIPS] に移動します。

  2. 詳細ウィンドウの [FIPS キー] タブで、[エクスポート] をクリックします。

  3. [FIPS キーをファイルに書き出し] ダイアログボックスで、次のパラメータの値を指定します。

    • FIPS キー名*—fipsKeyName
    • ファイル名* —key (デフォルト以外の場所にファイルを配置するには、完全なパスを指定するか、[参照] ボタンをクリックして場所に移動します)。

    *必須パラメータ

  4. [エクスポート] をクリックし、[閉じる] をクリックします。

既存の FIPS キーをインポートする

既存の FIPS キーを FIPS アプライアンスで使用するには、アプライアンスのハードディスクから HSM に FIPS キーを転送する必要があります。

注: FIPS キーをインポートする際のエラーを回避するには、インポートされたキーの名前が、作成時の元のキー名と同じであることを確認してください。

CLI を使用して、MPX アプライアンスで FIPS キーをインポートします

コマンドプロンプトで、次のコマンドを入力して FIPS キーをインポートし、設定を確認します。

-  import ssl fipsKey <fipsKeyName> -key <string> -inform SIM -exponent (F4 | 3)
-  show ssl fipskey <fipsKeyName>

例:

import fipskey Key-FIPS-2 -key Key-FIPS-2.key -inform SIM -exponent F4
show ssl fipskey key-FIPS-2
FIPS Key Name: Key-FIPS-2 Modulus: 2048   Public Exponent: F4 (Hex value 0x10001)

GUI を使用して FIPS キーをインポートする

  1. [トラフィック管理] > [SSL] > [FIPS] に移動します。

  2. 詳細ウィンドウの [FIPS キー] タブで、[インポート] をクリックします。

  3. [FIPS キーとしてインポート] ダイアログボックスで、FIPS キーファイルを選択し、次のパラメータの値を設定します。

    • FIPS キー名*
    • Key File Name*-デフォルト以外の場所にファイルを配置するには、完全なパスを指定するか、[参照] をクリックして場所に移動します。
    • 指数*

    *必須パラメータ

  4. [インポート] をクリックし、[閉じる] をクリックします。

  5. [FIPS キー] タブで、インポートした FIPS キーに対して表示される設定が正しいことを確認します。

外部キーをインポートする

Citrix ADCアプライアンスのHSM内で作成されたFIPSキーの転送に加えて、外部の秘密キー(標準のCitrix ADC、Apache、またはIISで作成されたものなど)をFIPS Citrix ADCアプライアンスに転送できます。外部キーは、OpenSSL などのツールを使用して、HSM の外部で作成されます。外部キーを HSM にインポートする前に、/nsconfig/sl の下のアプライアンスのフラッシュドライブにコピーします。

MPX 9700/10500/12500/15500 FIPS アプライアンスでは、外部キーのインポート中に ssl fipskey のインポートコマンドの-exponent パラメータは必要ありません。キーのインポート時に正しい公開指数が自動的に検出され、-exponentパラメータの値は無視されます。

Citrix ADC FIPSアプライアンスは、3またはF4以外の公開指数を持つ外部キーをサポートしていません。

MPX 9700/10500/12500/15500 FIPS アプライアンスでは、ラップキーは必要ありません。

外部の暗号化された FIPS キーを MPX 9700/10500/12500/15500 FIPS アプライアンスに直接インポートすることはできません。キーをインポートするには、まずキーを復号化してからインポートする必要があります。キーを復号化するには、シェルプロンプトで次のように入力します。

openssl rsa -in <EncryptedKey.key> > <DecryptedKey.out>

注: RSAキーをFIPSキーとしてインポートする場合は、セキュリティ上の理由からRSAキーをアプライアンスから削除することをお勧めします。

CLI を使用して、外部キーを FIPS キーとして MPX 9700/10500/12500/15500 FIPS アプライアンスにインポートします

  1. 外部キーをアプライアンスのフラッシュドライブにコピーします。
  2. キーが.pfx 形式の場合は、まず PEM 形式に変換する必要があります。コマンドプロンプトで、次のように入力します。

    convert ssl pkcs12 <output file> -import -pkcs12File <input .pfx file name> -password <password>
    
  3. コマンドプロンプトで次のコマンドを入力して、外部キーを FIPS キーとしてインポートし、設定を確認します。

    import ssl fipsKey <fipsKeyName> -key <string> -informPEM
    show ssl fipskey<fipsKeyName>
    

例:

convert ssl pkcs12 iis.pem -password 123456 -import -pkcs12File iis.pfx

import fipskey Key-FIPS-2 -key iis.pem -inform PEM

show ssl fipskey key-FIPS-2

FIPS Key Name: Key-FIPS-2 Modulus: 0   Public Exponent: F4 (Hex value 0x10001)

GUIを使用して、外部キーをFIPSキーとしてMPX 9700/10500/12500/15500 FIPSアプライアンスにインポートします

  1. キーが.pfx 形式の場合は、まず PEM 形式に変換する必要があります。

    1. [トラフィック管理] > [SSL] に移動します。
    2. 詳細ウィンドウで、[ツール] の [PKCS #12 のインポート] をクリックします。
    3. [PKCS12 ファイルのインポート] ダイアログボックスで、次のパラメータを設定します。
      • 出力ファイル名*
      • PKCS12 ファイル名*-.pfx ファイル名を指定します。
      • インポート・パスワード*
      • エンコード形式 *必須パラメータ
  2. [トラフィック管理] > [SSL] > [FIPS] に移動します。

  3. 詳細ウィンドウの [FIPS キー] タブで、[インポート] をクリックします。

  4. [FIPS キーとしてインポート] ダイアログボックスで、PEM ファイルを選択し、次のパラメータの値を設定します。

    • FIPS キー名*
    • Key File Name*-デフォルト以外の場所にファイルを配置するには、完全なパスを指定するか、[参照] をクリックして場所に移動します。

    *必須パラメータ

  5. [インポート] をクリックし、[閉じる] をクリックします。

  6. [FIPS キー] タブで、インポートした FIPS キーに対して表示される設定が正しいことを確認します。

MPX 9700/10500/12500/15500 FIPSアプライアンス