| name | cis-ocp-v160-1.1.16 |
| description | Ensure that the Scheduler kubeconfig file ownership is set to root:root (Manual) |
| category | cis-openshift |
| version | 1.6.0 |
| author | cyberstrike-official |
| tags | ["cis","openshift","kubernetes","redhat","control-plane","master-node-config-files","scheduler","kubeconfig","file-ownership"] |
| cis_id | 1.1.16 |
| cis_benchmark | CIS Red Hat OpenShift Container Platform Benchmark v1.6.0 |
| tech_stack | ["kubernetes","openshift","redhat"] |
| cwe_ids | [] |
| chains_with | [] |
| prerequisites | [] |
| severity_boost | {} |
CIS Red Hat OpenShift Container Platform Benchmark v1.6.0 - Control 1.1.16
Profile Applicability
Description
Ensure that the kubeconfig file ownership is set to root:root.
Rationale
You should set the kubeconfig file ownership to maintain the integrity of the file. The file should be owned by root:root.
Impact
None.
Audit Procedure
The kubeconfig file for kube-scheduler is stored in the ConfigMap scheduler-kubeconfig in the namespace openshift-kube-scheduler. The file kubeconfig is referenced in the pod via hostpath and is stored in /etc/kubernetes/static-pod-resources/configmaps/scheduler-kubeconfig/kubeconfig with ownership root:root.
Run the following command.
for i in $(oc get pods -n openshift-kube-scheduler -l app=openshift-kube-scheduler -o name)
do
oc exec -n openshift-kube-scheduler $i -- \
stat -c %U:%G /etc/kubernetes/static-pod-resources/configmaps/scheduler-kubeconfig/kubeconfig
done
Verify that the ownership is set to root:root.
Remediation
No remediation required; file permissions are managed by the operator.
Default Value
By default, scheduler-kubeconfig/kubeconfig file ownership is set to root:root.
References
- https://docs.openshift.com/container-platform/latest/operators/operator-reference.html#cluster-kube-scheduler-operator_red-hat-operators
- https://docs.openshift.com/container-platform/latest/nodes/scheduling/nodes-scheduler-about.html
- https://kubernetes.io/docs/concepts/scheduling-eviction/kube-scheduler/