すべてのプロダクト
Search
ドキュメントセンター

Key Management Service:NIST FIPS 検証済み GVSM クラスターの使用

最終更新日:Apr 01, 2026

Cloud Hardware Security Module (Cloud HSM) クラスターをゼロからセットアップします。ハードウェアセキュリティモジュール (HSM) をマスターとして有効化し、クラスターを作成してアクティブ化し、HSM クライアントを接続し、最初の暗号化キーを生成します。

警告

本番環境でテストキーを使用しないでください。テストキーは検証のみを目的としており、本番環境で必要とされるセキュリティ保証を提供するものではありません。

ハードウェアキー管理タイプの Key Management Service (KMS) インスタンスで HSM クラスターを使用する場合は、代わりに「ハードウェアキー管理タイプの KMS インスタンス向け HSM クラスターの構成」をご参照ください。このガイドのステップ 4 と 5 は、そのシナリオには適用されません。

前提条件

開始する前に、以下を確認してください。

  • HSM を購入し、有効化していること。詳細については、「HSM の購入と有効化」をご参照ください。

  • HSM と同じ Virtual Private Cloud (VPC) 内で CentOS 8 または Alibaba Cloud Linux を実行している ECS インスタンスがあること。ECS インスタンスは、ビジネスサーバーとしてではなく、HSM 管理ツールをインストールするために使用されます。詳細については、「Linux インスタンスのクイックスタート」をご参照ください。

ステップ 1: HSM をマスター HSM として有効化

HSM クラスターは、1 つのマスター HSM と複数の非マスター HSM で構成されます。クラスターを作成する前に、1 つの HSM をマスターとして指定します。

  1. Cloud Hardware Security Module コンソールの VSMs ページに移動します。上部のナビゲーションバーでリージョンを選択します。

  2. [VSMs] ページで、HSM を見つけ、[アクション] 列の [有効化] をクリックします。

  3. [HSM インスタンスの構成] ダイアログボックスで、次のパラメーターを設定し、[OK] をクリックします。構成が成功すると、HSM の ステータス有効に変わります。

    パラメーター説明
    VPC IDHSM にバインドする VPC。
    VPC subnetVPC 内で HSM に割り当てるサブネット。
    Private IP addressHSM に割り当てるプライベート IP アドレス。割り当てられたサブネットに属している必要があります。システムは、最後のオクテットが 253、254、または 255 の IP アドレスを予約しています。これらは使用しないでください。
    Configure HSM whitelistHSM へのアクセスを許可する IP アドレスまたは CIDR ブロック。最大 10 エントリ (1 行につき 1 つ) をサポートします。空白のままにすると、すべての IP アドレスが HSM にアクセスできます。クラスターホワイトリストが構成されている場合、それは HSM ホワイトリストよりも優先されます。0.0.0.0/0 エントリはサポートされていません。すべての IP アドレスを許可するには、ホワイトリストを空白のままにします。

ステップ 2: HSM クラスターの作成とアクティブ化

このステップでは、証明書ベースの信頼チェーンを通じて、クラスターに対する所有権と制御を確立します。このプロセスには以下が含まれます。

  • クラスターの作成とネットワーク構成の指定

  • 自己署名 CA (認証局) の生成と、それを使用したクラスターの証明書署名要求 (CSR) への署名

  • HSM 管理ツールを使用したマスター HSM の初期化

同じゾーン内の HSM は同じ VPC サブネットを使用します。

クラスターの作成

  1. VSMs」ページで、マスター HSM を見つけ、「Actions」列の「Create cluster」をクリックします。

  2. クラスターの作成と有効化」パネルで、クラスターの作成ステップを完了し、[次へ]をクリックします。

    パラメーター説明
    Cluster nameクラスターの一意の名前。最大 24 文字。
    Configure whitelistクラスターへのアクセスを許可する IP アドレスまたは CIDR ブロック。最大 10 エントリ (1 行につき 1 つ) をサポートします。クラスターホワイトリストは、HSM レベルのホワイトリストよりも優先されます。0.0.0.0/0 エントリはサポートされていません。すべての IP アドレスを許可するには、ホワイトリストを空白のままにします。
    Specify vSwitchesクラスターの vSwitch。少なくとも 2 つの vSwitch が必要です。

クラスターのアクティブ化

クラスター証明書のインポート

クラスターのアクティベーションプロセスでは、ローカルで生成したCA 証明書を使用してクラスターのCSRに署名します。これにより、HSM の所有者であることが証明され、今後のすべてのHSM 接続の信頼基盤が確立されます。

  1. クラスター証明書のアップロード セクションで、クラスター CSR 証明書 をクリックして CSR ファイル (cluster.csr) をダウンロードします。このファイルを ECS インスタンスにアップロードします。

  2. 秘密鍵を生成し、パスワードを設定します。これにより、issuerCA.key が作成されます。

    openssl genrsa -aes256 -out issuerCA.key 2048
  3. 自己署名の CA 証明書を作成します。これにより、issuerCA.crt が作成され、後の手順で使用します。

    openssl req -new -x509 -days 3652 -key issuerCA.key -out issuerCA.crt
  4. CA 証明書とキーを使用してクラスター CSR に署名します。これにより、cluster.crt が作成され、次のステップでコンソールにアップロードします。

    このコマンドでは、cluster.csrissuerCA.crt、および issuerCA.key を使用します。
    openssl x509 -req -in cluster.csr -days 3652 -CA issuerCA.crt -CAkey issuerCA.key -set_serial 01 -out cluster.crt
  5. コンソールの クラスターの有効化 ステップに戻り、証明書をインポートして [送信] をクリックします。

    • PEM 形式で発行者証明書を入力 セクションに、issuerCA.crt の内容を貼り付けます。

    • PEM 形式で発行済みクラスター証明書を入力 セクションに、cluster.crt の内容を貼り付けます。

マスター HSM の初期化

重要

マスター HSM は、Linux オペレーティングシステム上の HSM 管理ツールを使用してのみ初期化できます。

ステップ 1: HSM 管理ツールのダウンロード

ツールバージョンは、HSM が配置されているリージョンによって異なります。

インドネシア (ジャカルタ) リージョン

  • CentOS

    • 方法 1: hsm-client-v2.09.07.02-1.202411041707.x86_64.rpm にアクセスして HSM 管理ツールをダウンロードします。

    • 手順 3: VSMs ページで、HSM インスタンスを見つけ、[仕様列] の image アイコンをクリックします。

    • 方法 3: Activate Cluster ページで、[HSM 管理ツールをダウンロード] をクリックします。

  • Debian

    hsm-client-v2.09.07.02-1.202411041707.x86_64.deb にアクセスして HSM 管理ツールをダウンロードします。

インドネシア (ジャカルタ) を除くすべてのリージョン

ツールバージョンはリージョンによって異なります。

ステップ 2: HSM 管理ツールのインストール

ツールは /opt/hsm にインストールされます。

  • CentOS — <TOOL_NAME> を実際のファイル名 (例: hsm-client-v2.09.07.02-1.202411041707.x86_64.rpm) に置き換えます。

    sudo yum install -y <TOOL_NAME>
  • Debian — <TOOL_NAME> を実際のファイル名 (例: hsm-client-2.03.15.10-20240710_1.x86_64.deb) に置き換えます。

    sudo dpkg -i <TOOL_NAME>

ステップ 3: クライアント構成ファイルの更新

/opt/hsm/etc/hsm_mgmt_tool.cfgservers セクションを編集します。

  • namehostname をマスター HSM のプライベート IP アドレスに設定します(このアドレスは [インスタンス] ページで確認できます)。

  • owner_cert_pathissuerCA.crt の完全なパスに設定します。

構成例:

{
 "servers": [
 {
 "name" : "172.16.XX.XX",
 "hostname" : "172.16.XX.XX",
 "port" : 2225,
 "certificate": "/opt/hsm/etc/client.crt",
 "pkey": "/opt/hsm/etc/client.key",
 "CAfile": "",
 "CApath": "/opt/hsm/etc/certs",
 "ssl_ciphers": "",
 "server_ssl" : "yes",
 "enable" : "yes",
 "owner_cert_path":"<issuerCA.crt_FILE_PATH>"
 }],
 "scard": {
 "enable": "no",
 "port": 2225,
 "ssl": "no",
 "ssl_ciphers": "",
 "certificate": "cert-sc",
 "pkey": "pkey-sc"
 }
}

ステップ 4: マスター HSM へのログインとユーザーの検証

  1. マスター HSM にログインします。

    /opt/hsm/bin/hsm_mgmt_tool /opt/hsm/etc/hsm_mgmt_tool.cfg
  2. listUsers を実行して、デフォルトユーザーを確認します。

    cloudmgmt>listUsers
    Users on server 0(172.16.XX.XX):
    Number of users found:2
    
        User Id            User Type          User Name                     MofnPubKey       LoginFailureCnt            2FA
             1             PRECO          admin                                       NO               0                     NO
             2             AU             app_user                                    NO               0                     NO

    デフォルトユーザーは admin (プリクリプトオフィサー、PRECO) と app_user (アプリユーザー、AU) です。

ステップ 5: PRECO をクリプトオフィサー (CO) に昇格させる

  1. PRECO としてログインします。

    server0>loginHSM PRECO admin password
    loginHSM success
  2. PRECO パスワードを変更します。これにより、admin が PRECO から CO に昇格されます。

    cloudmgmt>changePswd PRECO admin <NewPassword>
  3. listUsers でロール変更を確認します。

    cloudmgmt>listUsers
    Users on server 0(172.16.XX.XX):
    Number of users found:2
    
        User Id            User Type          User Name                     MofnPubKey       LoginFailureCnt            2FA
             1             CO             admin                                       NO               0                     NO
             2             AU             app_user                                    NO               0                     NO

    admin が CO として表示されます。

ステップ 6: クリプトユーザー (CU) の作成

警告

非マスター HSM をクラスターに追加する前に CU を作成してください。CU 情報は、非マスター HSM が追加されたときにのみ同期されます。CU が作成される前に追加された HSM には CU がありません。

  1. createUser を実行して CU を作成します。ユーザー名: 最大 20 ASCII 文字。パスワード: 8~32 ASCII 文字。

    KMS ハードウェアキー管理インスタンス向けにクラスターを構成している場合は、ユーザー名として kmsuser を使用してください。
    createUser CU crypto_user <enter password>
  2. listUsers を実行して CU が作成されたことを確認します。

    cloudmgmt>listUsers
    Users on server 0(172.16.XX.XX):
    Number of users found:3
    
        User Id         User Type       User Name                  MofnPubKey    LoginFailureCnt         2FA
             1          CO          admin                                    NO               0               NO
             2          AU          app_user                                 NO               0               NO
             3          CU          crypto_user                              NO               0               NO

ステップ 7: マスター HSM ステータスの確認と続行

コンソールの[クラスターのアクティブ化]ステップで、update アイコンをクリックしてマスター HSM のステータスをリフレッシュし、[次へ]をクリックします。

非マスター HSM の追加

Add HSM」ステップで、プロンプトに従ってマスター以外の HSM をクラスターに追加し、[完了] をクリックします。

必要に応じて、後で追加の HSM を購入してクラスターに追加できます。

ステップ 3: hsm_proxy HSM クライアントの起動

hsm_proxy は、ご利用の ECS インスタンスで実行され、暗号化リクエストを HSM クラスターにルーティングする HSM クライアントです。

  1. /opt/hsm/etc/hsm_proxy.cfg を編集します。構成例:

    • server.hostname を、現在のインスタンスが属する VPC の IP アドレスに設定します。

    • client.e2e_owner_crt_path を、issuerCA.crt (ステップ 2 で作成した自己署名 CA 証明書) の完全なパスに設定します。

    {
    
        "ssl": {
            "certificate": "/opt/hsm/etc/client.crt",
            "pkey": "/opt/hsm/etc/client.key",
            "CApath": "/opt/hsm/etc/certs",
            "server_ssl": "yes",
            "server_ch_ssl_ciphers": "default"
        },
    
        "client": {
            "socket_type" : "UNIXSOCKET",
            "tcp_port" : 1111,
            "zoneid" : 0,
            "workers" : 1,
            "daemon_id" : 1,
            "reconnect_attempts": -1,
            "reconnect_interval": 1,
            "log_level": "INFO",
            "sslreneg": 0,
            "CriticalAlertScript": "",
            "e2e_owner_crt_path" : "<issuerCA.crt file path>",
            "create_object_minimum_nodes" : 1,
            "logfiles_location" : ""
        },
    
        "loadbalance" : {
            "enable" : "yes",
            "prefer_same_zone": "no",
            "success_rate_weight" : 1,
            "relative_idleness_weight" : 1
        },
    
        "dualfactor": {
            "enable" : "no",
            "port" : 2225,
            "certificate" : "certificate.crt",
            "pkey" : "pkey.pem",
            "dualfactor_ssl": "yes",
            "dualfactor_ch_ssl_ciphers": "default"
        },
    
        "server": {
            "hostname": "<instance ip>",
            "port": 2224
        }
    }
  2. hsm_proxy を起動します。

    /opt/hsm/bin/hsm_proxy /opt/hsm/etc/hsm_proxy.cfg

    出力にはログファイルのパスが表示されます。

    logfiles_location is not specified, logs will be available in current directory
    
    Logs will be available in liquidSecurity.1.WKCrty.log file
  3. ログファイルを確認して、接続を確認します。

    tail liquidSecurity.1.WKCrty.log

    接続が成功すると、次の行が含まれます。

    2023-10-28T13:33:05Z liquidSecurity INF: e2e_handle_client_request: HSM FIPS STATE 2

    完全な出力は、次のようになります:

    2023-10-28T13:33:05Z liquidSecurity 情報: check_preferred_srv_status_noclock: 新しい優先サーバーノード ID: 0
    2023-10-28T13:33:05Z liquidSecurity 情報: do_e2e_encryption_handshake: 新しいサーバー接続が確立されたため、サーバーへのログインを試行しています
    2023-10-28T13:33:05Z liquidSecurity 情報: e2e_handle_client_request: セッションの承認応答を受信しました
    2023-10-28T13:33:05Z liquidSecurity 情報: get_partition_info: e2e mgmtch を使用して pHSM 情報を取得します
    2023-10-28T13:33:05Z liquidSecurity 情報: e2e_handle_client_request: セッションの承認に成功しました
    2023-10-28T13:33:05Z liquidSecurity 情報: e2e_handle_client_request: パーティション情報を受信しました
    2023-10-28T13:33:05Z liquidSecurity 情報: e2e_handle_client_request: GetPartitionInfo 成功 0 : HSM 返答: SUCCESS
    2023-10-28T13:33:05Z liquidSecurity 情報: e2e_handle_client_request: HSM FIPS 状態 2
    2023-10-28T13:33:06Z liquidSecurity 情報: libevmulti_init: イベントを初期化しています
    2023-10-28T13:33:06Z liquidSecurity 情報: libevmulti_init: 準備完了 !

手順 4:キーの作成

KMS ハードウェアキー管理インスタンス用のクラスターを構成している場合は、このステップをスキップしてください。 詳細については、「KMS ハードウェアキー管理インスタンスの HSM クラスターを構成する」をご参照ください。
  1. key_mgmt_tool を起動します。

    /opt/hsm/bin/key_mgmt_tool
  2. 暗号化ユーザー (CU) としてログインします。

    Command:  loginHSM -u CU -s crypto_user -p <enter password>
    
            Cfm3LoginHSM returned: 0x00 : HSM Return: SUCCESS
    
            Cluster Status:
            Node id 0 status: 0x00000000 : HSM Return: SUCCESS
  3. 対称キーを生成します。

    Command:  genSymKey -l testkey -t 31 -s 32
    
            Cfm3GenerateSymmetricKey returned: 0x00 : HSM Return: SUCCESS
    
            Symmetric Key Created.  Key Handle: 6
    
            Cluster Status:
            Node id 0 status: 0x00000000 : HSM Return: SUCCESS

    キーハンドル (この例では 6) をメモしておきます。このキーハンドルは、後続の操作でキーを参照するために使用します。

  4. findKey を使用してキーが存在することを確認します。

    Command:  findKey
    
            Total number of keys present: 1
    
            Number of matching keys from start index 0::0
    
            Handles of matching keys:
            6
    
            Cluster Status:
            Node id 0 status: 0x00000000 : HSM Return: SUCCESS
    
            Cfm3FindKey returned: 0x00 : HSM Return: SUCCESS
  5. key_mgmt_tool を終了します。

    Command:  exit

ステップ 5:データの暗号化と復号

この手順は、KMS ハードウェアキー管理インスタンス用にクラスターを設定する場合、スキップしてください。詳細については、「KMS のハードウェアキー管理タイプのインスタンス向けに HSM クラスターを設定する」をご参照ください。

HSM クラスターを暗号操作に使用するには、次のいずれかのインターフェイスを選択します:

次のステップ

クラスターの管理 — HSM の追加または削除、クラスター名の変更、アクセスホワイトリストの更新 — については、「NIST FIPS 検証済み HSM クラスターの作成および有効化」をご参照ください。