Skip to main content

More Info:

Verifies that —tls-cipher-suites is restricted to strong cipher suites so the API server does not negotiate weak or deprecated TLS ciphers.

Risk Level

Medium

Address

Security

Compliance Standards

  • CIS Kubernetes

Triage and Remediation

Remediation

Manual Steps

  1. Back up the existing manifest (run on every control plane node):
  2. Edit the API server manifest to set strong ciphers (run on every control plane node):
    Open the file with a text editor:
    In the command: or args: list for kube-apiserver, add or replace the existing --tls-cipher-suites flag so it is exactly:
    Save and exit.
    Operational impact: because this is a static pod manifest under /etc/kubernetes/manifests, the kubelet will automatically restart the API server with the new configuration.
  3. Confirm the API server pod has restarted (run on any machine with kubectl access):
    Ensure the READY status is 1/1 and the AGE reflects a recent restart compared to the time of your edit.
  4. Verify the running process uses only the configured strong ciphers (run on every control plane node):
    Confirm the output exactly matches:
kubectl cannot modify the API server’s host-level configuration or its static pod manifest at /etc/kubernetes/manifests/kube-apiserver.yaml on the control plane nodes. To remediate this finding, follow the guidance in the Manual Steps section to edit the manifest directly on each control plane node.