設定檔適用性:等級 2
啟用安全啟動以保護 GKE 節點,驗證節點啟動元件的數位簽章。
攻擊者可能會試圖更改啟動元件,以便在系統初始化期間持續存在惡意程式或root kits。安全啟動透過驗證所有啟動元件的數位簽章來確保系統僅執行真實的軟體,並在簽章驗證失敗時停止啟動過程。
![]() |
注意預設情況下,GKE 叢集中未啟用安全啟動。預設情況下,當啟用 Shielded GKE 節點時,安全啟動未啟用。
|
影響
安全啟動將不允許使用第三方未簽名的核心模組。
稽核
使用 Google 雲端主控台:
- 前往Kubernetes Engine 網站。
- 從叢集列表中,點擊正在測試的叢集名稱。
- 開啟叢集內每個節點池的詳細資訊窗格,並確保在安全性標題下的安全啟動已設為已啟動。
使用命令列:
要檢查叢集中節點池的安全啟動是否已啟動,請為每個節點池運行以下命令:
gcloud container node-pools describe <node_pool_name> --cluster <cluster_name> --zone <compute_zone> --format json | jq .config.shieldedInstanceConfig
如果安全啟動已啟動,這將返回以下值:
{ "enableSecureBoot": true }
補救
一旦節點池已配置,便無法更新以啟用安全啟動。必須在叢集中創建新的節點池,並啟用安全啟動。
使用 Google 雲端主控台:
- 前往Kubernetes Engine 網站。
- 從叢集列表中,點擊需要更新的叢集,然後點擊新增節點池。
- 確保在受防護選項標題下勾選安全啟動核取方塊。
- 點擊儲存。
需要將工作負載從現有的不合規節點池遷移到新創建的節點池,然後刪除不合規的節點池。
使用命令列:
要在叢集中建立已啟動安全啟動的節點池,請執行以下命令:
gcloud container node-pools create <node_pool_name> --cluster <cluster_name> --zone <compute_zone> --shielded-secure-boot
需要將工作負載從現有的不合規節點池遷移到新創建的節點池,然後刪除不合規的節點池。