More Info:
The kubelet client certificate authorities file is used to validate client certificates and should not be writable by non-privileged users. Permissions of 644 or more restrictive protect its integrity.Risk Level
MediumAddress
SecurityCompliance Standards
- CIS Kubernetes
Triage and Remediation
- Remediation
Remediation
Manual Steps
Manual Steps
-
On every worker node, identify the kubelet client CA file path (in case it differs from the default):
If no
--client-ca-fileflag is present, the default path is/etc/kubernetes/pki/ca.crt. -
On every worker node, set the permissions of the CA file to 644 (readable by all, writable only by owner). Use the actual path if different from the default:
-
On every worker node, confirm the owner and group are appropriate for your environment (commonly
root:root), adjusting if necessary:If you need to change ownership (example for root:root): -
On every worker node, verify the permissions now meet the benchmark (644 or more restrictive), using an adapted version of the audit command:
Ensure the output shows
permissions=644or a more restrictive value (e.g.,600,640).
Using kubectl
Using kubectl
kubectl cannot modify file permissions on worker node files such as /etc/kubernetes/pki/ca.crt; this must be fixed directly on each worker node’s host filesystem. Use the guidance in the Manual Steps section on every worker node to set the correct permissions and then re-run the audit command to verify.Automation
Automation

