Guide to the Secure Configuration of Red Hat OpenShift Container Platform 4
Rules, Groups, and Values defined within the XCCDF Benchmark
-
Limit Containers Ability to bind to privileged ports
Containers should be limited to bind to non-privileged ports directly on the hosts. To prevent containers from binding to privileged ports on the h...Rule Medium Severity -
Limit Use of the CAP_NET_RAW
Containers should not enable more capabilities than needed as this opens the door for malicious use. <code>CAP_NET_RAW</code> enables a container t...Rule Medium Severity -
Limit Access to the Host Network Namespace
Containers should not be allowed access to the host's network namespace. To prevent containers from getting access to a host's network namespace, t...Rule Medium Severity -
Limit Containers Ability to Escalate Privileges
Containers should be limited to only the privileges required to run and should not be allowed to escalate their privileges. To prevent containers f...Rule Medium Severity -
Limit Privileged Container Use
Containers should be limited to only the privileges required to run. To prevent containers from running as privileged containers, the appropriate S...Rule Medium Severity -
Limit Access to the Host Process ID Namespace
Containers should not be allowed access to the host's process ID namespace. To prevent containers from getting access to a host's process ID namesp...Rule Medium Severity -
Limit Container Running As Root User
Containers should run as a random non-privileged user. To prevent containers from running as root user, the appropriate Security Context Constraint...Rule Medium Severity -
OpenShift - Kubernetes - Scheduler Settings
Contains evaluations for kube-scheduler configuration settings.Group -
Kube scheduler config filter
Kube scheduler filterValue -
Kube scheduler config file path
Kube scheduler config file pathValue -
Ensure that the bind-address parameter is not used
The Scheduler API service which runs on port 10251/TCP by default is used for health and metrics information and is available without authenticatio...Rule Medium Severity -
Ensure that the port parameter is zero
The Scheduler API service which runs on port 10251/TCP by default is used for health and metrics information and is available without authenticatio...Rule Medium Severity -
Kubernetes Secrets Management
Secrets let you store and manage sensitive information, such as passwords, OAuth tokens, and ssh keys. Such information might otherwise be put in a...Group -
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 -
Consider external secret storage
Consider the use of an external secrets storage and management system, instead of using Kubernetes Secrets directly, if you have more complex secre...Rule Medium Severity -
Do Not Use Environment Variables with Secrets
Secrets should be mounted as data volumes instead of environment variables.Rule Medium Severity -
Kubernetes - Worker Node Settings
Contains evaluations for the worker node configuration settings.Group -
Verify Group Who Owns The Kubelet Configuration File
To properly set the group owner of <code>/etc/kubernetes/kubelet.conf</code>, run the command: <pre>$ sudo chgrp root /etc/kubernetes/kubelet.conf...Rule Medium Severity -
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> Co...Rule Medium Severity -
Verify Group Who Owns the Worker Certificate Authority File
To properly set the group owner of <code>/etc/kubernetes/kubelet-ca.crt</code>, run the command: <pre>$ sudo chgrp root /etc/kubernetes/kubelet-ca...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.