TMA-OPENSHIFT-4.2.2
Ensure that the --anonymous-auth argument is set to false
CriticalLevel 1Automatedopenshift
Description
Disable anonymous requests to the Kubelet server. Reads every node's effective kubelet configuration with oc get --raw /api/v1/nodes/<node>/proxy/configz; requires a cluster-admin oc login.
How it is checked
Audit method: Shell command
shell
nodes=$(oc get nodes -o jsonpath='{range .items[*]}{.metadata.name}{"\n"}{end}') || exit 1
[ -n "$nodes" ] || exit 1
ok=1
for n in $nodes; do
c=$(oc get --raw "/api/v1/nodes/$n/proxy/configz") || exit 1
if ! { printf '%s' "$c" | grep -Eq '"anonymous":\{"enabled":false\}'; }; then echo "noncompliant: $n"; ok=0; fi
done
if [ "$ok" -eq 1 ]; then echo compliant; fi- Expected output
compliant
How it is fixed
Fix method: Guidance or infrastructure patch
Create a kubeletconfig to explicitly disable anonymous authentication. Examples of how to do this can be found in the OpenShift documentation.
Properties
- Operating systems
- Any
- Tags
- openshiftworker-node
- Reference
- CIS Red Hat OpenShift Container Platform Benchmark v2.0.0 - 4.2.2 Ensure that the --anonymous-auth argument is set to false
Check this host
Run this on a machine you are allowed to audit. The scan is read-only.
shell
tmaegis scan --target openshift