1 ネットワーク・バインド・ディスク暗号化について

ネットワーク・バインド・ディスク暗号化(NBDE)は、ネットワーク・ベースのリソースを使用して、Linux Unified Key Setup (LUKS)暗号化されたディスクまたはボリュームを自動的に復号化し、復号化の実行に必要な情報を取得するメソッドです。この機能は、LUKSを拡張します。これは一般的に、Oracle Linux上のディスクおよびボリュームを暗号化して追加のセキュリティ・モードを提供し、ブート時に自動的に復号化するために使用されます。

LUKSは、データを暗号化し、使用中でないときにデータを保護するのに役立ちます。サーバー・システムの場合、ルート・パーティションが暗号化されている場合は、データを復号化するためにブート時にパスフレーズを入力する必要があるため、LUKSによって問題が発生する可能性があります。NBDEは、ネットワーク・ベースのリソースを使用して、LUKSがブート時に自動的に復号化を実行するために使用するキーを取得することによって、この問題を解決するのに役立ちます。このセキュリティ・モデルでは、システムが信頼できるネットワーク内でブートする場合、ディスク上のデータは保護されます。ディスクがサーバーから取り外され、信頼できるネットワーク内でブートされない場合、通常のLUKSパスフレーズが指定されないかぎり、データは暗号化されたままになります。

NBDEは、信頼できるネットワーク上にTangサーバーを構成し、暗号化を使用するクライアント・ホストにClevis復号化ソフトウェアをインストールすることによって、Oracle Linuxで実現されます。Tangは、HTTPを使用するWebベースのサービスを実行して、データの暗号化に使用されるキー・ペアを生成するためにクライアントが使用する公開署名キーを通知します。Clevisクライアントは、Tangサーバーによって提供される署名キーを使用して暗号化を実行する強力な暗号化キー・ペアを生成します。暗号化は、生成された秘密キーを使用して実行されます。これは、暗号化の完了後に破棄されるため、秘密キーが再構成されるまでデータを保護します。

Clevisクライアントは、エフェメラル・キーを使用して、Tangサーバーから必要な情報を取得し、データを復号化できるように秘密キーを再構成します。このプロセスはMcCallum-Relyea交換と呼ばれ、管理オーバーヘッドが発生してセキュリティ・リスクも発生する可能性があるキー・エスクロを回避する利点があります。このキー交換プロセスでは、クライアント側のデータの暗号化に使用されるキーはTangサーバーと直接共有されず、ネットワーク上で移動されることはありません。交換される情報はすべて公開か、または本質的に暗号化されています。つまり、TLSは必要ありません。

LUKSはデータの復号化に使用される異なるスロットに複数のキーを格納できるため、ディスクまたはボリュームのロックに使用されるプライマリ・パスフレーズは、NBDEに指定されたキーと一緒に保持できます。ブート時に、パスフレーズを入力できるようにLUKS復号化用の通常のパスフレーズ・プロンプトが表示されますが、ClevisがTangサーバーに接続できる場合、ユーザー入力は必要なく、キーが復号化されてディスクまたはボリュームに格納されているデータへのアクセス権が与えられた後、パスフレーズ・プロンプトは自動的に閉じます。

Tangサーバーの詳細は、https://github.com/latchset/tangを参照してください。

Clevisフレームワークの詳細は、https://github.com/latchset/clevisを参照してください。

公開キー暗号化に関する一般情報は、Oracle Linux: 証明書と公開キー・インフラストラクチャの管理を参照してください。

ディスク暗号化のためのLUKSの使用の詳細は、Oracle Linux 8: ストレージ・デバイスの管理およびOracle Linux 9: ストレージ・デバイスの管理を参照してください。