プロファイル適用性: レベル2
Shielded GKEノードのセキュアブートを有効にして、ノードブートコンポーネントのデジタル署名を検証します。
攻撃者は、システムの初期化中に不正プログラムやルートキットを持続させるためにブートコンポーネントを変更しようとする可能性があります。セキュアブートは、すべてのブートコンポーネントのデジタル署名を検証し、署名の検証が失敗した場合にブートプロセスを停止することで、システムが正規のソフトウェアのみを実行することを保証します。
![]() |
注意デフォルトでは、GKEクラスターでセキュアブートは無効になっています。デフォルトでは、Shielded GKE Nodesが有効になっている場合、セキュアブートは無効になっています。
|
影響
セキュアブートは、サードパーティの署名されていないカーネルモジュールの使用を許可しません。
監査
Google Cloud Consoleを使用する:
- Kubernetes Engine のウェブサイトに移動します。
- テスト中のクラスターの名前をクラスターのリストからクリックしてください。
- クラスター内の各ノードプールの詳細ペインを開き、セキュリティの見出しの下でセキュアブートが有効になっていることを確認してください。
コマンドラインの使用:
クラスター内のノードプールでセキュアブートが有効かどうかを確認するには、各ノードプールに対して次のコマンドを実行してください。
gcloud container node-pools describe <node_pool_name> --cluster <cluster_name> --zone <compute_zone> --format json | jq .config.shieldedInstanceConfig
Secure Bootが有効になっている場合、以下の値が返されます:
{ "enableSecureBoot": true }
修復
ノードプールがプロビジョニングされると、セキュアブートを有効にするために更新することはできません。セキュアブートを有効にした新しいノードプールをクラスター内に作成する必要があります。
Google Cloud Consoleを使用する:
- Kubernetes Engine のウェブサイトに移動します。
- クラスタのリストから、更新が必要なクラスタをクリックし、ADD NODE POOLをクリックします。
- Shieldedオプションの見出しの下にあるSecure bootチェックボックスがチェックされていることを確認してください。
- 保存をクリック。
ワークロードは、既存の非準拠ノードプールから新しく作成されたノードプールに移行し、次に非準拠プールを削除する必要があります。
コマンドラインの使用:
クラスター内でセキュアブートが有効なノードプールを作成するには、次のコマンドを実行してください。
gcloud container node-pools create <node_pool_name> --cluster <cluster_name> --zone <compute_zone> --shielded-secure-boot
ワークロードは、既存の非準拠ノードプールから新しく作成されたノードプールに移行し、次に非準拠プールを削除する必要があります。