CKS · Question #48
Fix all of the following violations that were found against etcd: 4.2.1 Ensure that the anonymous-auth argument is set to false (Use Webhook autumn/authz where possible). 2.2 Ensure that the client-ce
This simulation tests your ability to harden etcd by disabling anonymous authentication and enforcing mutual TLS client certificate authentication, both required by the CIS Kubernetes Benchmark.
Question
Explanation
This simulation tests your ability to harden etcd by disabling anonymous authentication and enforcing mutual TLS client certificate authentication, both required by the CIS Kubernetes Benchmark.
Approach. To fix both violations, edit the etcd static pod manifest at /etc/kubernetes/manifests/etcd.yaml and add or correct two flags under the etcd container's command section: set '--anonymous-auth=false' to block unauthenticated API access to etcd, and set '--client-cert-auth=true' to require all clients (including the API server) to present a valid TLS certificate signed by the trusted CA. After saving the file, the kubelet will automatically restart the etcd static pod. Verify the fix by running 'ps aux | grep etcd' or inspecting the running pod with 'kubectl describe pod etcd-<node> -n kube-system' to confirm both flags are present. For systemd-managed etcd (non-kubeadm), update /etc/etcd/etcd.conf with ETCD_ANONYMOUS_AUTH=false and ETCD_CLIENT_CERT_AUTH=true, then run 'systemctl restart etcd'.
Concept tested. etcd hardening per CIS Kubernetes Benchmark - specifically disabling anonymous access (control 2.1/4.2.1) and enforcing client certificate authentication (control 2.2) to prevent unauthorized read/write access to the cluster's backing store.
Reference. CIS Kubernetes Benchmark v1.8, Section 2 (etcd); Kubernetes docs: https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/#securing-etcd-clusters
Topics
Community Discussion
No community discussion yet for this question.