4.21 合規操作員基準

檢視 Red Hat OpenShift on IBM Cloud 版本的合規操作員基準結果 4.21。

1 控制平面元件

1.1 主節點組態檔案

主節點組態不是以檔案集的形式儲存;因此 1.1 小節中的規則不在合規操作員自動檢查的範圍內。

1.2 API 伺服器

|科別|建議|手動/自動|等級|結果|.. | -- | -- | -- | -- | -- | |1.2.1|Ensure 已授權匿名請求。|Automated|1|Not checked| |1.2.2|Use https 用於 kubelet 連線。|Automated|1|Pass| |1.2.3|Ensure kubelet 使用憑證進行驗證。|Automated|1|Pass| |1.2.4|Verify 已適當設定 kubelet 憑證授權。|Automated|1|Pass| |1.2.5|Ensure --authorization-mode 參數未設定為。AlwaysAllow |Automated|1|Pass| |1.2.6|Verify 已啟用 RBAC。|Automated|1|Pass| |1.2.7|Ensure APIPriorityAndFairness 功能閘門已啟用。MET| |Manual|1|INHERENTLY |1.2.8|Ensure 入場控制外掛程式 AlwaysAdmit 未設定。|Automated|1|Pass| |1.2.9|Ensure 入場控制外掛程式 AlwaysPullImages 未設定。|Automated|1|Pass| |1.2.10|Ensure 入場控制外掛程式 ServiceAccount 已設定。|Automated|1|Pass| |1.2.11|Ensure 入場控制外掛程式 NamespaceLifecycle 已設定。|Automated|1|Pass| |1.2.12|Ensure 入場控制外掛程式 SecurityContextConstraint 已設定。|Automated|1|Pass| |1.2.13|Ensure 入場控制外掛程式 NodeRestriction 已設定。|Automated|1|Pass| |1.2.14|Ensure --insecure-bind-address 參數未設定。|Automated|1|Pass| |1.2.15|Ensure --insecure-port 參數設定為 0。MET| |Manual|1|INHERENTLY |1.2.16|Ensure --secure-port 參數未設定為 0。|Automated|1|Pass| |1.2.17|Ensure |Automated|1|Not checked| endpoint 受 RBAC 保護。healthz |1.2.18|Ensure 已設定 --audit-log-path 參數。|Automated|1|Pass| |1.2.19|Ensure 審計日誌會轉送至群集外保留。|自動|1|未 勾選| |1.2.20|Ensure maximumRetainedFiles 參數設定為 或視情況而定。|自動|1|未 10 勾選| |1.2.21|Configure Kubernetes API 伺服器最大稽核日誌大小。|Automated|1|Not checked| |1.2.22|Ensure 已設定 --request-timeout 參數。|Automated|1|Pass| |1.2.23|Ensure --service-account-lookup 參數設定為 true。|Automated|1|Pass| |1.2.24|Ensure --service-account-key-file 參數已適當設定。|Automated|1|Pass| |1.2.25|Ensure --etcd-certfile 和 參數已適當設定。--etcd-keyfile |Automated|1|Pass| |1.2.26|Ensure --tls-cert-file 和 參數已適當設定。--tls-private-key-file |Automated|1|Pass| |1.2.27|Ensure --client-ca-file 參數已適當設定。|Automated|1|Pass| |1.2.28|Ensure --etcd-cafile 參數已適當設定。|Automated|1|Pass| |1.2.29|Ensure 加密提供者已適當設定。|自動|1|未 勾選| |1.2.30|Ensure API 伺服器只使用強加密密碼。|Automated|1|Not checked| |1.2.31|Ensure 不使用不支援的設定覆寫。|Manual|1|Pass|

1.3 控制器經理

|科別|建議|手動/自動|等級|結果|.. | -- | -- | -- | -- | -- | |1.3.1|Ensure |Automated|1|Not checked| 控制器管理員 端點受 RBAC 保護。healthz |1.3.2|Ensure --use-service-account-credentials 參數設定為 true。|Automated|1|Pass| |1.3.3|Ensure --service-account-private-key-file 參數已適當設定。|Automated|1|Pass| |1.3.4|Ensure --root-ca-file 參數已適當設定。|Automated|1|Pass|

1.4 排程

|科別|建議|手動/自動|等級|結果|.. | -- | -- | -- | -- | -- | |1.4.1|Ensure |Automated|1|Not checked| 調度程序的 端點受 RBAC 保護。healthz |1.4.2|Verify |Automated|1|Not checked| 調度程序 API 服務受 RBAC 保護

2 Etcd

|科別|建議|手動/自動|等級|結果|.. | -- | -- | -- | -- | -- | |2.1|Ensure --cert-file 和 參數已適當設定。--key-file |Automated|1|Pass| |2.2|Ensure --client-cert-auth 參數設定為 true。|Automated|1|Pass| |2.3|Ensure --auto-tls 參數未設定為 true。|Automated|1|Pass| |2.4|Ensure --peer-cert-file 和 參數已適當設定。--peer-key-file |Automated|1|Pass| |2.5|Ensure --peer-client-cert-auth 參數設定為 true。|Automated|1|Pass| |2.6|Ensure --peer-auto-tls 參數未設定為 true。|Automated|1|Pass| |2.7|Ensure etcd 使用唯一的憑證授權。||自動|2|未 勾選|

3 控制平面組態

3.1 驗證與授權

|科別|建議|手動/自動|等級|結果|.. | -- | -- | -- | -- | -- | |3.1.1|Client 不應對使用者使用憑證驗證。|Automated|2|Pass|

3.2 記錄

|科別|建議|手動/自動|等級|結果|.. | -- | -- | -- | -- | -- | |3.2.1|Ensure |Automated|1|Not checked| 會建立最低限度的稽核政策 |3.2.2|Ensure |Automated|2|Not checked| 稽核政策涵蓋主要的安全疑慮

4 個工作節點

4.1 工作節點組態檔案

|科別|建議|手動/自動|等級|結果|.. | -- | -- | -- | -- | -- | |4.1.1|Ensure kubelet 服務檔案權限設定為 644 或更嚴格的權限。|Automated|1|Pass| |4.1.2|Ensure kubelet 服務檔案的所有權已設定為 root:root。|Automated|1|Pass| |4.1.3|If proxy kube 代理設定檔存在,請確保權限設定為 644 或更嚴格的權限。|Automated|1|Not checked| |4.1.4|If 代理 kubeconfig 檔案存在,確保擁有權設為 root:root。|Automated|1|Not checked| |4.1.5|Ensure --kubeconfig 檔案所有權已設定為。 `kubelet.conf` file permissions are set to `644` or more restrictive. |Automated|1|Pass| |4.1.6|Ensure that the `--`kubeconfig kubelet.conf root:root |Automated|1|Pass| |4.1.7|Ensure 證書授權檔案權限設定為 644 或更嚴格的權限。|Automated|1|Pass| |4.1.8|Ensure 客戶端憑證授權檔案擁有權設為 root:root。|Automated|1|Pass| |4.1.9|Ensure kubelet --config 配置文件的權限設定為 600 或更嚴格的權限。|Automated|1|Pass| |4.1.10|Ensure kubelet 配置文件的所有權已設定為 root:root。|Automated|1|Pass|

4.2 Kubelet

|科別|建議|手動/自動|等級|結果|.. | -- | -- | -- | -- | -- | |4.2.1|Activate OpenShift Container Platform 4 中的垃圾收集,視情況而定。|Automated|1|Pass| |4.2.2|Ensure --anonymous-auth 參數設定為 false。|Automated|1|Pass| |4.2.3|Ensure --authorization-mode 參數未設定為。AlwaysAllow |Automated|1|Pass| |4.2.4|Ensure --client-ca-file 參數已適當設定。|Automated|1|Pass| |4.2.5|Verify 只讀埠未使用或設定為 0。|Automated|1|Pass| |4.2.6|Ensure --streaming-connection-idle-timeout 參數未設定為 0。|Automated|1|Pass| |4.2.7|Ensure --make-iptables-util-chains 參數設定為 true。|Automated|1|Pass| |4.2.8|Ensure kubeAPIQPS [--event-qps] 參數設定為可確保適當事件擷取的層級。|Automated|2|Pass| |4.2.9|Ensure --tls-cert-file 和 參數已適當設定。--tls-private-key-file |Automated|1|Pass| |4.2.10|Ensure --rotate-certificates 參數未設定為 false。|Automated|1|Pass| |4.2.11|Verify RotateKubeletServerCertificate 參數設定為 true。|Automated|1|Pass| |4.2.12|Ensure Kubelet 僅使用強加密密碼。|Automated|1|Pass|

5 項政策

5.1 RBAC 和服務帳號

|科別|建議|手動/自動|等級|結果|.. | -- | -- | -- | -- | -- | |5.1.1|Ensure 群集管理員角色僅在需要時使用。|Manual|1|MANUAL| |5.1.2|Minimize 獲取機密。|Manual|1|MANUAL| |5.1.3|Minimize 在 RolesClusterRoles 中使用通配符。|Manual|1|MANUAL| |5.1.4|Minimize 存取以建立 Pod。|Manual|1|MANUAL| |5.1.5|Ensure 預設服務帳戶未被使用。|Manual|1|MANUAL| |5.1.6|Ensure 只有在必要時才掛載服務帳戶代用權。|Manual|1|MANUAL|

5.2 安全情境限制

|科別|建議|手動/自動|等級|結果|.. | -- | -- | -- | -- | -- | |5.2.1|Minimize 輸入特權容器。|Manual|1|MANUAL| |5.2.2|Minimize 希望共用主機程序 ID 命名空間的容器的允許。|Manual|1|MANUAL| |5.2.3|Minimize 希望共享主機 IPC 命名空間的容器的允許。|Manual|1|MANUAL| |5.2.4|Minimize 希望共用主機網路命名空間的容器的允許。|Manual|1|MANUAL| |5.2.5|Minimize allowPrivilegeEscalation。|Manual|1|MANUAL| |5.2.6|Minimize 輸入根容器。|Manual|2|MANUAL| |5.2.7|Minimize 允許具有 NET_RAW 功能的容器。|Manual|1|MANUAL| |5.2.8|Minimize 允許具有新增功能的容器。|自動|1|未 勾選| |5.2.9|Minimize 允許已指定功能的容器。|Manual|2|MANUAL| |5.2.10|Minimize 存取特權安全情境限制。|Manual|2|MANUAL|

5.3 網路政策與 CNI

|科別|建議|手動/自動|等級|結果|.. | -- | -- | -- | -- | -- | |5.3.1|Ensure 使用中的 CNI 支援網路政策。|Automated|1|Not checked| |5.3.2|Ensure 所有命名空間都定義了網路政策。||手冊|2|手冊 |

5.4 秘密管理

|科別|建議|手動/自動|等級|結果|.. | -- | -- | -- | -- | -- | |5.4.1|Prefer 使用秘密作為檔案,而非秘密作為環境變數。|Manual|1|MANUAL| |5.4.2|Consider 外部秘密儲存。|Manual|2|MANUAL|

5.5 可擴充的入場控制

|科別|建議|手動/自動|等級|結果|.. | -- | -- | -- | -- | -- | |5.5.1|Configure 使用影像控制器組態參數的影像驗證。|Automated|2|Not checked|

5.7 一般政策

|科別|建議|手動/自動|等級|結果|.. | -- | -- | -- | -- | -- | |5.7.1|Create 使用命名空間的資源之間的管理界限。|Manual|1|MANUAL| |5.7.2|Ensure 在您的 pod 定義中,seccomp profile 設定為 docker/default。|Manual|2|MANUAL| |5.7.3|Apply Pod 和容器的安全上下文。|Manual|2|MANUAL| |5.7.4|The 不應使用預設命名空間。|Manual|2|MANUAL|

IBM 補救和解釋

IBM 補救與說明的詳細資訊
部分 建議/說明
1.2.19 Red Hat OpenShift on IBM Cloud 可選擇啟用 Kubernetes API 伺服器稽核。
1.2.20 Red Hat OpenShift on IBM Cloud 將 maximumRetainedFiles 參數設定為 1。
1.2.29 Red Hat OpenShift on IBM Cloud 可選擇啟用 Kubernetes 金鑰管理服務 (KMS) 提供商。
2.7 Red Hat OpenShift on IBM Cloud 會為 etcd 設定唯一的憑證授權。
5.2.8 Red Hat OpenShift on IBM Cloud 安裝自訂 SCCs.
5.3.2 Red Hat OpenShift on IBM Cloud 已定義一組預設 Calico 網路政策,並可選擇新增其他網路政策。