Check ID:
Provider: Kubernetes
Service:
Severity: HIGH
Categories:
Resource type:
kubelet_client_ca_file_setProvider: Kubernetes
Service:
kubeletSeverity: HIGH
Categories:
cluster-security, identity-accessResource type:
ConfigMapWhat this check verifies
Kubernetes Kubelet is evaluated for X.509 client certificate authentication by checking if its config setsauthentication.x509.clientCAFile to validate clients on the HTTPS endpoint.
Risk
Without a client CA, the kubelet cannot verify client certificates, weakening authentication. With network access, attackers could impersonate trusted clients to read pod logs/stats or perform node/pod actions, impacting confidentiality, integrity, and availability.Recommendation
Enforce mutual TLS to the kubelet by providing a trustedclientCAFile.
- Disable anonymous access
- Delegate authorization to the API server with least-privilege RBAC
- Restrict network exposure to the kubelet
- Rotate certificates and monitor access
Remediation
Dashboard steps- On each node, open the kubelet config file used by the —config flag (commonly /var/lib/kubelet/config.yaml).
- Add or update this setting to provide a client CA bundle path:
- Save and restart kubelet:
sudo systemctl restart kubelet
References
Where this check fires
This check runs on every scheduled scan against your Kubernetes account. Findings appear at Cloud Security → Findings filterable byCheck ID = kubelet_client_ca_file_set. To re-evaluate after a fix, hit Run now on the account’s schedule under Cloud Security → Schedules — the next scan re-checks this control and marks the finding fixed or keeps it persistent.
← Back to Kubernetes checks