More Info:
Verifies that the scheduler.conf kubeconfig file is owned by root:root so only privileged users can read the schedulers client credentials.Risk Level
MediumAddress
SecurityCompliance Standards
- CIS Kubernetes
Triage and Remediation
- Remediation
Remediation
Manual Steps
Manual Steps
- Log in to each control plane node over SSH as a user with sudo privileges.
-
On each control plane node, set the correct ownership on the scheduler kubeconfig file:
-
(Optional) Confirm the permissions look reasonable (typically 600 or 644, adjust only if required by your hardening policy):
-
Verify the ownership is now set to
root:rootusing the audit command on each control plane node:The output must be:
Using kubectl
Using kubectl
kubectl cannot modify host-level file ownership, including
/etc/kubernetes/scheduler.conf on control plane nodes. This must be fixed directly on each control plane node’s filesystem; see the Manual Steps section for the exact commands to run over SSH.Automation
Automation
- Copy the script to each control plane node, for example:
- SSH to each control plane node and run:
- Optional explicit verification on each control plane node:

