第12章 OpenStack ストレージサービスの暗号化と検証


Red Hat OpenStack Services on OpenShift (RHOSO) のサービスストレージサービスの暗号鍵をセキュアに保管するために、Key マネージャー (barbican) サービスを使用できます。

12.1. Block Storage (cinder) ボリュームの暗号化

Key マネージャー (barbican) サービスを使用して、Block Storage (cinder) 暗号鍵を管理できます。この設定は、LUKS を使用して、インスタンスに接続されているディスク (ブートディスクを含む) を暗号化します。キー管理はユーザーに対して透過的です。暗号化を使用して新しいボリュームを作成すると、Block Storage はボリュームの対称鍵シークレットを生成し、それを Key マネージャーサービスに保存します。インスタンスを起動 (または暗号化されたボリュームを接続) すると、Compute サービス (nova) が Key マネージャーサービスから鍵を取得し、そのシークレットを Libvirt シークレットとしてローカルに保存します。

注記

暗号化を使用して Block Storage ボリュームを作成する場合は、luks 暗号化プロバイダー、aes-xts-plain64 暗号化暗号を使用し、キーサイズを 256 にする必要があります。

手順

  1. 暗号化を使用するボリュームタイプを作成します。

    openstack volume type create \
    --encryption-provider  nova.volume.encryptors.luks.LuksEncryptor \
    --encryption-cipher aes-xts-plain64 \
    --encryption-key-size 256 \
    --encryption-control-location front-end LuksEncryptor-256

    出力例

    +-------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | Field       | Value                                                                                                                                                                              |
    +-------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | description | None                                                                                                                                                                               |
    | encryption  | cipher='aes-xts-plain64', control_location='front-end', encryption_id='9df604d0-8584-4ce8-b450-e13e6316c4d3', key_size='256', provider='nova.volume.encryptors.luks.LuksEncryptor' |
    | id          | 78898a82-8f4c-44b2-a460-40a5da9e4d59                                                                                                                                               |
    | is_public   | True                                                                                                                                                                               |
    | name        | LuksEncryptor-256                                                                                                                                                                  |
    +-------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

  2. 新しいボリュームを作成し、LuksEncryptor-256 設定を使用するように指定します。

    openstack volume create --size 1 --type LuksEncryptor-256 'Encrypted-Test-Volume'

    出力例

    +---------------------+--------------------------------------+
    | Field               | Value                                |
    +---------------------+--------------------------------------+
    | attachments         | []                                   |
    | availability_zone   | nova                                 |
    | bootable            | false                                |
    | consistencygroup_id | None                                 |
    | created_at          | 2018-01-22T00:19:06.000000           |
    | description         | None                                 |
    | encrypted           | True                                 |
    | id                  | a361fd0b-882a-46cc-a669-c633630b5c93 |
    | migration_status    | None                                 |
    | multiattach         | False                                |
    | name                | Encrypted-Test-Volume                |
    | properties          |                                      |
    | replication_status  | None                                 |
    | size                | 1                                    |
    | snapshot_id         | None                                 |
    | source_volid        | None                                 |
    | status              | creating                             |
    | type                | LuksEncryptor-256                    |
    | updated_at          | None                                 |
    | user_id             | 0e73cb3111614365a144e7f8f1a972af     |
    +---------------------+--------------------------------------+

    生成されたシークレットは、Key Manager バックエンドに自動的にアップロードされます。

  3. Key Manager シークレット UUID を取得します。この値は、encryption_key_id フィールドに表示されます。

    openstack --os-volume-api-version 3.64 volume show Encrypted-Test-Volume

    出力例

    +------------------------------+-------------------------------------+
    |Property                      |Value                                |
    +------------------------------+-------------------------------------+
    |attached_servers              |[]                                   |
    |attachment_ids                |[]                                   |
    |availability_zone             |nova                                 |
    |bootable                      |false                                |
    |cluster_name                  |None                                 |
    |consistencygroup_id           |None                                 |
    |created_at                    |2022-07-28T17:35:26.000000           |
    |description                   |None                                 |
    |encrypted                     |True                                 |
    |encryption_key_id             |0944b8a8-de09-4413-b2ed-38f6c4591dd4 |
    |group_id                      |None                                 |
    |id                            |a0b51b97-0392-460a-abfa-093022a120f3 |
    |metadata                      |                                     |
    |migration_status              |None                                 |
    |multiattach                   |False                                |
    |name                          |vol                                  |
    |os-vol-host-attr:host         |hostgroup@tripleo_iscsi#tripleo_iscsi|
    |os-vol-mig-status-attr:migstat|None                                 |
    |os-vol-mig-status-attr:name_id|None                                 |
    |os-vol-tenant-attr:tenant_id  |a2071ece39b3440aa82395ff7707996f     |
    |provider_id                   |None                                 |
    |replication_status            |None                                 |
    |service_uuid                  |471f0805-072e-4256-b447-c7dd10ceb807 |
    |shared_targets                |False                                |
    |size                          |1                                    |
    |snapshot_id                   |None                                 |
    |source_volid                  |None                                 |
    |status                        |available                            |
    |updated_at                    |2022-07-28T17:35:26.000000           |
    |user_id                       |ba311b5c2b8e438c951d1137333669d4     |
    |volume_type                   |LUKS                                 |
    |volume_type_id                |cc188ace-f73d-4af5-bf5a-d70ccc5a401c |
    +------------------------------+-------------------------------------+

  4. Key Manager サービスを使用して、ディスク暗号鍵が存在することを確認します。次の例では、Key Manager シークレット UUID は前の例の出力の cryptography_key_id と一致 し、タイムスタンプは LUKS ボリュームの作成時刻と一致します。

    openstack secret list

    出力例

    +------------------------------------------------------------------------------------+------+---------------------------+--------+-------------------------------------------+-----------+------------+-------------+------+------------+
    | Secret href                                                                        | Name | Created                   | Status | Content types                             | Algorithm | Bit length | Secret type | Mode | Expiration |
    +------------------------------------------------------------------------------------+------+---------------------------+--------+-------------------------------------------+-----------+------------+-------------+------+------------+
    | https://192.168.123.169:9311/v1/secrets/0944b8a8-de09-4413-b2ed-38f6c4591dd4 | None | 2018-01-22T02:23:15+00:00 | ACTIVE | {u'default': u'application/octet-stream'} | aes       |        256 | symmetric   | None | None       |
    +------------------------------------------------------------------------------------+------+---------------------------+--------+-------------------------------------------+-----------+------------+-------------+------+------------+

  5. 新しいボリュームを既存のインスタンスに接続します。

    $ openstack server add volume testInstance Encrypted-Test-Volume
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2026 Red Hat
トップに戻る