設定檔適用性:級別 1
AppArmor 是一個 Linux 核心安全模組,補充了標準的 Linux 使用者和群組基於權限的機制,將程式限制在有限的資源範圍內。AppArmor 可以針對任何應用程式進行配置,以減少其潛在的攻擊面並提供更深入的防禦。它通過調整的配置檔案進行配置,允許特定程式或容器所需的訪問,例如
Linux 能力、網路訪問和檔案權限。每個配置檔案可以在強制模式下運行,該模式會阻止訪問不允許的資源,或者在抱怨模式下運行,該模式僅報告違規行為。
AppArmor 可以幫助您透過限制容器的操作來運行更安全的部署,並/或通過系統日誌提供更好的審計。您使用的容器運行時可能會附帶預設的 AppArmor 配置檔,或者您可以使用自訂配置檔。
稽核
執行以下命令並查看每個 pod 的詳細資訊:
kubectl get pods --all-namespaces
適用於 Kubernetes 1.30 及更高版本:
檢查每個 pod 的 securityContext 並確保已配置
appArmorProfile
。適用於 1.30 之前的 Kubernetes 版本:
檢查每個 pod 的容器元數據註釋
container.apparmor.security.beta.kubernetes.io/<container name>
確保每個容器都配置了 AppArmor。
補救
從 AppArmor 設定
runtime/default
值。使用 AppArmor 文件 來限制每個容器對資源的訪問。