Information
Enable client authentication on etcd service.
Rationale:
etcd is a highly-available key value store used by Kubernetes deployments for persistent storage of all of its REST API objects. These objects are sensitive in nature and should not be available to unauthenticated clients. You should enable the client authentication via valid certificates to secure the access to the etcd service.
Solution
Edit the etcd pod specification file /etc/kubernetes/manifests/etcd.yaml on the master node and set the below parameter.
--client-cert-auth='true'
Impact:
All clients attempting to access the etcd server will require a valid client certificate.
Default Value:
By default, the etcd service can be queried by unauthenticated clients.
References:
https://coreos.com/etcd/docs/latest/op-guide/security.html
https://kubernetes.io/docs/admin/etcd/
https://coreos.com/etcd/docs/latest/op-guide/configuration.html#client-cert-auth