Certificate-based kubelet authentication should be required

Set up the kubernetes integration.

Description

Certificate based kubelet authentication should be enabled. The API server, by default, does not authenticate itself to the kubelet’s HTTPS endpoints. The requests from the API server are treated anonymously. Certificate-based kubelet authentication should be set up to ensure that the apiserver authenticates itself to kubelets when submitting requests.

Remediation

Follow the Kubernetes documentation and set up the TLS connection between the apiserver and kubelets. Then, edit the API server pod specification file /etc/kubernetes/manifests/kube-apiserver.yaml on the master node and set the kubelet client certificate and key parameters as below.

--kubelet-client-certificate=<path/to/client-certificate-file> 
--kubelet-client-key=<path/to/client-key-file>