More Info:
etcd should be configured to make use of TLS encryption for peer connections.Risk Level
MediumAddress
SecurityCompliance Standards
- CIS Kubernetes
Triage and Remediation
- Remediation
Remediation
Manual Steps
Manual Steps
-
On every etcd (control plane) node, back up the existing static pod manifest and inspect current peer TLS flags:
-
On every etcd node, ensure peer certificate and key files exist on the host (adjust paths as needed for your environment) and set secure permissions:
If these files do not exist, generate or obtain appropriate etcd peer TLS certs/keys following your PKI/etcd documentation before proceeding.
-
On every etcd node, edit the etcd static pod manifest to configure the peer TLS flags (this change will automatically restart etcd on save):
Under the
command:section for theetcdcontainer, add or update the following arguments (ensure they match your actual certificate paths):Save and exit the editor; kubelet will restart the etcd pod with the new configuration. -
On every etcd node, confirm the etcd pod has restarted and is running:
-
On any control plane node, validate that etcd is now running with the correct peer TLS flags:
Inspect the output and confirm it includes both:
--peer-cert-file=/etc/kubernetes/pki/etcd/peer.crt--peer-key-file=/etc/kubernetes/pki/etcd/peer.key
Using kubectl
Using kubectl
kubectl cannot modify the etcd static pod manifest or its process flags under
/etc/kubernetes/manifests/etcd.yaml on the control plane node. To configure the --peer-cert-file and --peer-key-file arguments, make the changes directly on the host as described in the Manual Steps section.Automation
Automation

