Guide to the Secure Configuration of Red Hat OpenShift Container Platform 4
Rules, Groups, and Values defined within the XCCDF Benchmark
-
Kubernetes - Worker Node Settings
Contains evaluations for the worker node configuration settings.Group -
Verify Group Who Owns The Worker Proxy Kubeconfig File
To ensure the Kubernetes ConfigMap is mounted into the sdn daemonset pods with the correct ownership, make sure that the <code>sdn-config</code> ConfigMap is mounted using a ConfigMap at the <code>...Rule Medium Severity -
Verify Group Who Owns The Worker Kubeconfig File
To properly set the group owner of/var/lib/kubelet/kubeconfig
, run the command:$ sudo chgrp root /var/lib/kubelet/kubeconfig
Rule Medium Severity -
Verify Group Who Owns The OpenShift Node Service File
' To properly set the group owner of/etc/systemd/system/kubelet.service
, run the command:$ sudo chgrp root /etc/systemd/system/kubelet.service
'Rule Medium Severity -
Verify User Who Owns The Kubelet Configuration File
To properly set the owner of/var/lib/kubelet/config.json
, run the command:$ sudo chown root /var/lib/kubelet/config.json
Rule Medium Severity -
Verify User Who Owns The Kubelet Configuration File
To properly set the owner of/etc/kubernetes/kubelet.conf
, run the command:$ sudo chown root /etc/kubernetes/kubelet.conf
Rule Medium Severity -
Verify User Who Owns The Worker Proxy Kubeconfig File
To ensure the Kubernetes ConfigMap is mounted into the sdn daemonset pods with the correct ownership, make sure that the <code>sdn-config</code> ConfigMap is mounted using a ConfigMap at the <code>...Rule Medium Severity -
Verify Permissions on The Kubelet Configuration File
To properly set the permissions of/var/lib/kubelet/config.json
, run the command:$ sudo chmod 0600 /var/lib/kubelet/config.json
Rule Medium Severity -
Verify Permissions on the Worker Proxy Kubeconfig File
To ensure the Kubernetes ConfigMap is mounted into the sdn daemonset pods with the correct permissions, make sure that the <code>sdn-config</code> ConfigMap is mounted using restrictive permissions...Rule Medium Severity -
Verify Permissions on the Worker Certificate Authority File
To properly set the permissions of/etc/kubernetes/kubelet-ca.crt
, run the command:$ sudo chmod 0644 /etc/kubernetes/kubelet-ca.crt
Rule Medium Severity -
Verify Permissions on the Worker Kubeconfig File
To properly set the permissions of/var/lib/kubelet/kubeconfig
, run the command:$ sudo chmod 0600 /var/lib/kubelet/kubeconfig
Rule Medium Severity -
Verify Permissions on the OpenShift Node Service File
To properly set the permissions of/etc/systemd/system/kubelet.service
, run the command:$ sudo chmod 0644 /etc/systemd/system/kubelet.service
Rule Medium Severity -
OpenShift APIServer etcd encryption type
OpenShift APIServer etcd encryption provider type to use for remediation. This variable is only applicable to remediations, and does not affect checks. This variable is set to 'aescbc' by default, ...Value -
Set Pod Lifetime for the Deschedulers
If there is an increased risk of external influences and a very high need for protection, pods should be stopped and restarted regularly. No pod should run for more than 24 hours. The availability ...Rule Medium Severity -
Verify User Who Owns The Worker Kubeconfig File
To properly set the owner of/var/lib/kubelet/kubeconfig
, run the command:$ sudo chown root /var/lib/kubelet/kubeconfig
Rule Medium Severity -
Verify Permissions on The Kubelet Configuration File
To properly set the permissions of/etc/kubernetes/kubelet.conf
, run the command:$ sudo chmod 0644 /etc/kubernetes/kubelet.conf
Rule Medium Severity -
Disable Token-based Authentication
To ensure OpenShift does not accept token-based authentication, follow the OpenShift documentation and configure alternate mechanisms for authentication. Then, edit the API Server pod specification...Rule High Severity -
Ensure the Container Runtime rejects unsigned images by default
<p> The OpenShift Platform allows for verifying the signature of a container image before pulling it. this is done via the policy.json file [1] which needs to be configured via the M...Rule Medium Severity -
Ensure no ClusterRoleBindings set for default Service Account
Using the <code>default</code> service account prevents accurate application rights review and audit tracing. Instead of <code>default</code>, create a new and unique service account and associate ...Rule Medium Severity -
Kubernetes Audit Logs Must Be Owned By Root
All audit logs must be owned by root user and group. By default, the path for the Kubernetes audit log is <pre>/var/log/kube-apiserver/</pre>. To properly set the owner of <code>/var/log/kube-apis...Rule Medium Severity
Node 2
The content of the drawer really is up to you. It could have form fields, definition lists, text lists, labels, charts, progress bars, etc. Spacing recommendation is 24px margins. You can put tabs in here, and can also make the drawer scrollable.