14.2.3. インストール時のディスクの暗号化
インストール時に、コントロールプレーンおよびコンピュートノードのブートディスクの暗号化を有効できます。OpenShift Container Platform は Trusted Platform Module (TPM) v2 および Tang 暗号化モードをサポートします。
- TPM v2: これは優先されるモードです。TPM v2 は、サーバー内に含まれる安全な暗号プロセッサーにパスフレーズを保存します。このモードを使用すると、ディスクがサーバーから削除された場合にクラスターノードのブートディスクデータが復号化されないようにできます。
- tang: Tang および Clevis は、ネットワークバインドディスク暗号化 (NBDE) を有効にするサーバーおよびクライアントコンポーネントです。クラスターノードのブートディスクデータを Tang サーバーにバインドできます。これにより、ノードが Tang サーバーにアクセスできるセキュアなネットワーク上にある場合を除き、データの復号化ができなくなります。Clevis は、クライアント側の復号化の実装に使用される自動復号化フレームワークです。
Tang 暗号化モードを使用したディスクの暗号化は、ユーザーによってプロビジョニングされるインフラストラクチャーでのベアメタルおよび vSphere インストールでのみサポートされます。
TPM v2 または Tang 暗号化モードを有効にすると、RHCOS ブートディスクは LUKS2 形式を使用して暗号化されます。
この機能には以下の特徴があります。
- インストーラーでプロビジョニングされるインフラストラクチャーおよびユーザーによってプロビジョニングされるインフラストラクチャーのデプロイメントで利用可能である。
- Red Hat Enterprise Linux CoreOS (RHCOS) システムのみでサポートされる。
- マニフェストのインストールフェーズでディスク暗号化が設定される。これにより、初回起動時からディスクに書き込まれたすべてのデータが暗号化されます。
-
ルートファイルシステムのみでデータを暗号化する (
/dev/mapper/coreos-luks-root
は/
マウントポイントを表す)。 - パスフレーズを提供するのにユーザーの介入を必要としない。
- AES-256-CBC 暗号化を使用する。
クラスター内のノードのディスク暗号化を有効にするには、以下の 2 つの手順の内のいずれかに従います。
14.2.3.1. TPM v2 ディスク暗号化の有効化
以下の手順を使用して、OpenShift Container Platform のインストール時に TPM v2 モードディスクの暗号化を有効にします。
前提条件
- インストールノードで OpenShift Container Platform インストールプログラムをダウンロードしている。
手順
- TPM v2 暗号化を各ノードの BIOS で有効にする必要があるかどうかを確認します。これは、ほとんどの Dell システムで必要になります。コンピューターのマニュアルを確認してください。
インストールノードで、インストールプログラムが含まれるディレクトリーに切り替え、クラスターの Kubernetes マニフェストを生成します。
$ ./openshift-install create manifests --dir <installation_directory> 1
- 1
<installation_directory>
は、インストールファイルを保存するディレクトリーへのパスに置き換えます。
マシン設定ファイルを作成し、TPM v2 暗号化モードを使用してコントロールプレーンまたはコンピュートノードのブートディスクを暗号化します。
コントロールプレーンノードで暗号化を設定するには、以下のマシン設定サンプルを
<installation_directory>/openshift
ディレクトリーのファイルに保存します。たとえば、ファイルに99-openshift-master-tpmv2-encryption.yaml
などの名前を付けます。apiVersion: machineconfiguration.openshift.io/v1 kind: MachineConfig metadata: name: master-tpm labels: machineconfiguration.openshift.io/role: master spec: config: ignition: version: 3.1.0 storage: files: - contents: source: data:text/plain;base64,e30K mode: 420 overwrite: true path: /etc/clevis.json
コンピュートノードで暗号化を設定するには、以下のマシン設定サンプルを
<installation_directory>/openshift
ディレクトリーのファイルに保存します。たとえば、ファイルに99-openshift-worker-tpmv2-encryption.yaml
などの名前を付けます。apiVersion: machineconfiguration.openshift.io/v1 kind: MachineConfig metadata: name: worker-tpm labels: machineconfiguration.openshift.io/role: worker spec: config: ignition: version: 3.1.0 storage: files: - contents: source: data:text/plain;base64,e30K mode: 420 overwrite: true path: /etc/clevis.json
- YAML ファイルのバックアップコピーを作成します。元の YAML ファイルは Ignition 設定ファイルの作成時に使用されます。
- 残りの OpenShift Container Platform インストールを継続します。