設定檔適用性:等級 1 - 工作節點
不要允許所有請求。啟用明確授權。
Kubelets 預設允許所有已驗證的請求(即使是匿名的)而不需要 apiserver 的明確授權檢查。您應該限制此行為,僅允許明確授權的請求。
注意預設情況下,
--authorization-mode 參數設置為 AlwaysAllow 。 |
影響
未經授權的請求將被拒絕。
稽核
在每個節點上執行以下命令:
ps -ef | grep kubelet
如果存在
--authorization-mode
參數,請檢查其是否未設置為 AlwaysAllow
。如果不存在,請檢查是否有由 --config
指定的 Kubelet 配置文件,並且該文件將 authorization: mode
設置為非 AlwaysAllow
。也可以通過 Kubelet API 埠(通常為
10250/TCP
)上的 /configz
端點查看 Kubelet 的運行配置。使用適當的憑證訪問這些端點將提供 Kubelet 配置的詳細信息。補救措施
如果使用 Kubelet 配置檔案,請編輯檔案以將
authorization: mode
設定為 Webhook
。如果使用可執行參數,請編輯每個工作節點上的 kubelet 服務檔案 /etc/kubernetes/kubelet.conf
,並在 KUBELET_AUTHZ_ARGS
變數中設定以下參數。--authorization-mode=Webhook
根據您的系統,重新啟動
kubelet
服務。例如:systemctl daemon-reload systemctl restart kubelet.service