第9章 Policy-Based Decryption を使用した暗号化ボリュームの自動ロック解除の設定


Policy-Based Decryption (PBD) を使用すると、物理マシンおよび仮想マシン上の暗号化されたルートボリュームとセカンダリーストレージボリュームのロックを解除できます。PBD では、ユーザーパスワード、Trusted Platform Module (TPM) デバイス、PKCS #11 デバイス、ネットワークサーバーなど、さまざまなロック解除方法が使用されます。

PBD を使用すると、ポリシーにさまざまなロックの解除方法を組み合わせて、さまざまな方法で同じボリュームのロックを解除できるようにすることができます。Red Hat Enterprise Linux における PBD の現在の実装は、Clevis フレームワークと ピン と呼ばれるプラグインで構成されています。ピンはそれぞれ個別のロック解除機能を提供します。現在利用できるピンは以下のとおりです。

tang
ネットワークサーバーを使用してボリュームのロックを解除できます。
tpm2
TPM2 ポリシーを使用してボリュームのロックを解除できます。
pkcs11
PKCS #11 URI を使用してボリュームのロックを解除できます。
sss
Shamir’s Secret Sharing (SSS) 暗号化スキームを使用して高可用性システムをデプロイできます。

9.1. Network-Bound Disk Encryption

Network-bound Disc Encryption (NBDE) は、Policy-Based Decryption (PBD) のサブカテゴリーであり、暗号化されたボリュームを特別なネットワークサーバーにバインドできるようにします。NBDE の現在の実装には、Tang サーバー自体と、Tang サーバー用の Clevis ピンが含まれます。

Clevis および Tang は、一般的なクライアントおよびサーバーのコンポーネントで、ネットワークがバインドされた暗号化を提供します。RHEL では、Clevis と Tang は LUKS と組み合わせて使用され、ルートおよび非ルートストレージボリュームを暗号化および復号します。これにより、Network-bound Disk Encryption を実現します。

9.1.1. NBDE のコンポーネント

RHEL では、NBDE は次のコンポーネントとテクノロジーによって実装されます。

図9.1 LUKS1 で暗号化したボリュームを使用する場合の NBDE スキーム。LUKSmeta は LUKS2 ボリュームには使用されません。

Network-bound Disk Encryption (NBDE)
Tang
Tang は、データをネットワークへの接続状態に結び付けるためのサーバーです。システムが特定のセキュアなネットワークにバインドされたときに、そのデータが含まれているシステムを利用可能な状態にします。Tang はステートレスで、TLS または認証は必要ありません。サーバーがすべての暗号鍵を保存し、これまでに使用されたすべての鍵を把握しているエスクローベースのソリューションとは異なり、Tang はクライアントの鍵に関与することはありません。したがって、クライアントから識別情報を取得することはありません。
Clevis
Clevis は、自動化された復号用のプラグイン可能なフレームワークです。NBDE では、Clevis が LUKS ボリュームの自動ロック解除を提供します。clevis パッケージは、クライアントで使用される機能を提供します。
Clevis ピン
Clevis ピンは、Clevis フレームワークへのプラグインです。そのようなピンの 1 つとして、NBDE サーバーである Tang との通信機能を実装したプラグインがあります。
José
José ライブラリーは、暗号化と復号の操作を実行するために、クライアント側とサーバー側の両方のコンポーネントによって使用されます。
LUKSMeta

RHEL のデフォルトのディスク暗号化形式は、LUKS バージョン 2 (LUKS2) です。そのため、NBDE のプロビジョニング状態は、LUKS2 ヘッダーにトークンとして保存されます。luksmeta パッケージによる NBDE のプロビジョニング状態は、LUKS1 で暗号化したボリュームにのみ使用されます。

Tang 用の Clevis ピンは、特に指定をしなくても、LUKS1 と LUKS2 の両方をサポートしています。Clevis はプレーンテキストファイルを暗号化できますが、ブロックデバイスを暗号化するには cryptsetup ツールを使用する必要があります。

9.1.2. NBDE の原則

NBDE のプロビジョニングを開始すると、Tang サーバーの Clevis ピンは、Tang サーバーの、アドバタイズされている非対称鍵のリストを取得します。もしくは、鍵が非対称であるため、Tang の公開鍵のリストを帯域外に配布して、クライアントが Tang サーバーにアクセスしなくても動作できるようにします。このモードは オフラインプロビジョニング と呼ばれます。

Tang 用の Clevis ピンは、公開鍵の 1 つを使用して、暗号的に強力な一意の暗号鍵を生成します。この鍵を使用してデータを暗号化すると、この鍵は破棄されます。Clevis クライアントは、使いやすい場所に、このプロビジョニング操作で生成した状態を保存する必要があります。データを暗号化するこのプロセスは プロビジョニング手順 と呼ばれています。

そのデータにアクセスする準備ができたら、クライアントはプロビジョニング手順で生成されたメタデータを読み込み、暗号鍵を回復するために応答します。このプロセスは 復旧手順 と呼ばれます。

NBDE では、LUKS ボリュームを自動的にロック解除できるように、Clevis がピンを使用してボリュームをバインドします。バインドプロセスが正常に終了すると、提供されている Dracut アンロックを使用してディスクをアンロックできます。

詳細は、システム上の tang(8)clevis(1)jose(1)、および clevis-luks-unlockers(7) man ページを参照してください。

注記

kdump カーネルクラッシュのダンプメカニズムが、システムメモリーのコンテンツを LUKS で暗号化したデバイスに保存するように設定されている場合には、2 番目のカーネル起動時にパスワードを入力するように求められます。

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

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

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

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

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

Legal Notice

Theme

© 2026 Red Hat
トップに戻る