4.22 Compliance-Betreiber-Benchmark
Sehen Sie sich die Benchmark-Ergebnisse für Compliance-Operatoren für Red Hat OpenShift on IBM Cloud Version 4.22 an.
1 Komponenten der Steuerungsebene
1.1 Konfigurationsdateien für Masterknoten
Die Konfiguration des Master-Knotens wird nicht als Dateisatz gespeichert; daher fallen die Regeln im Abschnitt 1.1 nicht in den Geltungsbereich der automatisierten Prüfung durch den Compliance-Operator.
1.2 API-Server
| Abschnitt | Empfehlung | Manuell/Automatisiert | Schwierigkeitsgrad | Ergebnis |
|---|---|---|---|---|
| 1.2.1 | Ensure dass anonyme Anfragen autorisiert sind. | Automated | 1 | Not geprüft |
| 1.2.2 | Use HTTPS für Kubelet-Verbindungen. | Automated | 1 | Pass |
| 1.2.3 | Ensure dass das Kubelet Zertifikate zur Authentifizierung verwendet. | Automated | 1 | Pass |
| 1.2.4 | Verify Stellen Sie sicher, dass die Kubelet-Zertifizierungsstelle entsprechend eingerichtet ist. | Automated | 1 | Pass |
| 1.2.5 | Ensure dass das Argument --authorization-mode nicht auf |
Automated | 1 | Pass |
| 1.2.6 | Verify dass RBAC aktiviert ist. | Automated | 1 | Pass |
| 1.2.7 | Ensure dass das APIPriorityAndFairness Feature-Gate aktiviert ist. |
Manual | 1 | INHERENTLY MET |
| 1.2.8 | Ensure dass das Plug-in für die Zugriffskontrolle nicht aktiviert AlwaysAdmit ist. |
Automated | 1 | Pass |
| 1.2.9 | Ensure dass das Plug-in für die Zugriffskontrolle nicht aktiviert AlwaysPullImages ist. |
Automated | 1 | Pass |
| 1.2.10 | Ensure dass das Plug-in für die Zugriffskontrolle konfiguriert ServiceAccount ist. |
Automated | 1 | Pass |
| 1.2.11 | Ensure dass das Plug-in für die Zugriffskontrolle konfiguriert NamespaceLifecycle ist. |
Automated | 1 | Pass |
| 1.2.12 | Ensure dass das Plug-in für die Zugriffskontrolle konfiguriert SecurityContextConstraint ist. |
Automated | 1 | Pass |
| 1.2.13 | Ensure dass das Plug-in für die Zugriffskontrolle konfiguriert NodeRestriction ist. |
Automated | 1 | Pass |
| 1.2.14 | Ensure dass das Argument --insecure-bind-address nicht gesetzt ist. |
Automated | 1 | Pass |
| 1.2.15 | Ensure dass das Argument --insecure-port auf 0 gesetzt ist. |
Manual | 1 | INHERENTLY MET |
| 1.2.16 | Ensure dass das Argument --secure-port nicht auf 0 gesetzt ist. |
Automated | 1 | Pass |
| 1.2.17 | Ensure dass der Endpunkt healthz durch RBAC geschützt ist. |
Automated | 1 | Not checked |
| 1.2.18 | Ensure dass das Argument --audit-log-path festgelegt ist. |
Automated | 1 | Pass |
| 1.2.19 | Ensure dass die Audit-Protokolle zur Aufbewahrung aus dem Cluster weitergeleitet werden. | Automatisiert | 1 | Nicht [geprüft |
| 1.2.20 | Ensure dass das Argument maximumRetainedFiles auf oder 10 entsprechend gesetzt ist. |
Automatisiert | 1 | Nicht [geprüft |
| 1.2.21 | Configure Kubernetes Maximale Größe des Audit-Protokolls des API-Servers. | Automated | 1 | Not checked |
| 1.2.22 | Ensure dass das Argument --request-timeout festgelegt ist. |
Automated | 1 | Pass |
| 1.2.23 | Ensure dass das Argument --service-account-lookup auf true gesetzt ist. |
Automated | 1 | Pass |
| 1.2.24 | Ensure dass das Argument --service-account-key-file entsprechend gesetzt ist. |
Automated | 1 | Pass |
| 1.2.25 | Ensure Stellen Sie sicher, dass die Argumente --etcd-keyfile und --etcd-certfile entsprechend festgelegt sind. |
Automated | 1 | Pass |
| 1.2.26 | Ensure Stellen Sie sicher, dass die Argumente --tls-private-key-file und --tls-cert-file entsprechend festgelegt sind. |
Automated | 1 | Pass |
| 1.2.27 | Ensure dass das Argument --client-ca-file entsprechend gesetzt ist. |
Automated | 1 | Pass |
| 1.2.28 | Ensure dass das Argument --etcd-cafile entsprechend gesetzt ist. |
Automated | 1 | Pass |
| 1.2.29 | Ensure dass die Verschlüsselungsanbieter ordnungsgemäß konfiguriert sind. | Automatisiert | 1 | Nicht [geprüft |
| 1.2.30 | Ensure dass der API-Server ausschließlich starke kryptografische Verschlüsselungsalgorithmen verwendet. | Automated | 1 | Not geprüft |
| 1.2.31 | Ensure Nicht unterstützte Konfigurationsüberschreibungen werden nicht verwendet. | Manual | 1 | Pass |
1.3 Controller-Manager
| Abschnitt | Empfehlung | Manuell/Automatisiert | Schwierigkeitsgrad | Ergebnis |
|---|---|---|---|---|
| 1.3.1 | Ensure dass die Endpunkte healthz des Controller-Managers durch RBAC geschützt sind. |
Automated | 1 | Not checked |
| 1.3.2 | Ensure dass das Argument --use-service-account-credentials auf true gesetzt ist. |
Automated | 1 | Pass |
| 1.3.3 | Ensure dass das Argument --service-account-private-key-file entsprechend gesetzt ist. |
Automated | 1 | Pass |
| 1.3.4 | Ensure dass das Argument --root-ca-file entsprechend gesetzt ist. |
Automated | 1 | Pass |
1.4 Scheduler
| Abschnitt | Empfehlung | Manuell/Automatisiert | Schwierigkeitsgrad | Ergebnis |
|---|---|---|---|---|
| 1.4.1 | Ensure dass die Endpunkte healthz für den Scheduler durch RBAC geschützt sind. |
Automated | 1 | Not checked |
| 1.4.2 | Verify dass der Scheduler-API-Dienst durch RBAC geschützt ist. | Automated | 1 | Not geprüft |
2 Etcd
| Abschnitt | Empfehlung | Manuell/Automatisiert | Schwierigkeitsgrad | Ergebnis |
|---|---|---|---|---|
| 2.1 | Ensure Stellen Sie sicher, dass die Argumente --key-file und --cert-file entsprechend gesetzt sind. |
Automated | 1 | Pass |
| 2.2 | Ensure dass das Argument --client-cert-auth auf true gesetzt ist. |
Automated | 1 | Pass |
| 2.3 | Ensure dass das Argument --auto-tls nicht auf true gesetzt ist. |
Automated | 1 | Pass |
| 2.4 | Ensure Stellen Sie sicher, dass die Argumente --peer-key-file und --peer-cert-file entsprechend festgelegt sind. |
Automated | 1 | Pass |
| 2.5 | Ensure dass das Argument --peer-client-cert-auth auf true gesetzt ist. |
Automated | 1 | Pass |
| 2.6 | Ensure dass das Argument --peer-auto-tls nicht auf true gesetzt ist. |
Automated | 1 | Pass |
| 2.7 | Ensure dass für etcd eine eindeutige Zertifizierungsstelle verwendet wird. | Automatisiert | 2 | Nicht [geprüft |
3 Konfiguration der Steuerebene
3.2 Protokollierung
| Abschnitt | Empfehlung | Manuell/Automatisiert | Schwierigkeitsgrad | Ergebnis |
|---|---|---|---|---|
| 3.2.1 | Ensure dass eine minimale Audit-Richtlinie erstellt wird. | Automated | 1 | Not checked |
| 3.2.2 | Ensure dass die Audit-Richtlinie wichtige Sicherheitsaspekte abdeckt. | Automated | 2 | Not geprüft |
4 Worker-Knoten
4.1 Konfigurationsdateien für Workerknoten
| Abschnitt | Empfehlung | Manuell/Automatisiert | Schwierigkeitsgrad | Ergebnis |
|---|---|---|---|---|
| 4.1.1 | Ensure Stellen Sie sicher, dass die Dateiberechtigungen für den Kubelet-Dienst auf | Automated | 1 | Pass |
| 4.1.2 | Ensure dass die Dateibesitzrechte für den Kubelet-Dienst auf | Automated | 1 | Pass |
| 4.1.3 | If proxy kube: Wenn eine Proxy-Konfigurationsdatei vorhanden ist, stellen Sie sicher, dass die Berechtigungen auf oder 644 restriktiver eingestellt sind. |
Automated | 1 | Not checked |
| 4.1.4 | If Proxy-Datei kubeconfig vorhanden – sicherstellen, dass die Eigentumsrechte auf |
Automated | 1 | Not gesetzt sind root:root |
| 4.1.5 | Ensure Stellen Sie sicher, dass die Inhaberschaft der`` kubelet.conf file permissions are set to 644 or more restrictive. |
Automated | 1 | Pass |
| 4.1.6 | Ensure that the --kubeconfig`` --kubeconfig-Datei kubelet.conf auf |
Automated | 1 | Pass |
| 4.1.7 | Ensure dass die Dateiberechtigungen der Zertifizierungsstellen auf oder 644 restriktiver eingestellt sind. |
Automated | 1 | Pass |
| 4.1.8 | Ensure dass die Dateiberechtigungen für die Client-Zertifizierungsstellen auf | Automated | 1 | Pass |
| 4.1.9 | Ensure dass die Kubelet-Konfigurationsdatei --config auf |
Automated | 1 | Pass |
| 4.1.10 | Ensure dass die Inhaberschaft der Kubelet-Konfigurationsdatei auf | Automated | 1 | Pass |
4.2 Kubelet
| Abschnitt | Empfehlung | Manuell/Automatisiert | Schwierigkeitsgrad | Ergebnis |
|---|---|---|---|---|
| 4.2.1 | Activate Garbage Collection in OpenShift Container Platform 4, soweit zutreffend. | Automated | 1 | Pass |
| 4.2.2 | Ensure dass das Argument --anonymous-auth auf false gesetzt ist. |
Automated | 1 | Pass |
| 4.2.3 | Ensure dass das Argument --authorization-mode nicht auf |
Automated | 1 | Pass |
| 4.2.4 | Ensure dass das Argument --client-ca-file entsprechend gesetzt ist. |
Automated | 1 | Pass |
| 4.2.5 | Verify dass der schreibgeschützte Port nicht verwendet wird oder auf 0 gesetzt ist. | Automated | 1 | Pass |
| 4.2.6 | Ensure dass das Argument --streaming-connection-idle-timeout nicht auf 0 gesetzt ist. |
Automated | 1 | Pass |
| 4.2.7 | Ensure dass das Argument --make-iptables-util-chains auf true gesetzt ist. |
Automated | 1 | Pass |
| 4.2.8 | Ensure dass das Argument kubeAPIQPS[--event-qps] auf einen Wert gesetzt ist, der eine angemessene Ereigniserfassung gewährleistet. |
Automated | 2 | Pass |
| 4.2.9 | Ensure Stellen Sie sicher, dass die Argumente --tls-private-key-file und --tls-cert-file entsprechend festgelegt sind. |
Automated | 1 | Pass |
| 4.2.10 | Ensure dass das Argument --rotate-certificates nicht auf false gesetzt ist. |
Automated | 1 | Pass |
| 4.2.11 | Verify dass das Argument RotateKubeletServerCertificate auf true gesetzt ist. |
Automated | 1 | Pass |
| 4.2.12 | Ensure dass das Kubelet ausschließlich starke kryptografische Verschlüsselungsalgorithmen verwendet. | Automated | 1 | Pass |
5 Richtlinien
5.1 RBAC und Servicekonten
| Abschnitt | Empfehlung | Manuell/Automatisiert | Schwierigkeitsgrad | Ergebnis |
|---|---|---|---|---|
| 5.1.1 | Ensure dass die Rolle cluster-admin nur bei Bedarf verwendet wird. | Manual | 1 | MANUAL |
| 5.1.2 | Minimize Zugriff auf Geheimnisse. | Manual | 1 | MANUAL |
| 5.1.3 | Minimize Verwendung von Platzhaltern in und Roles ClusterRoles. |
Manual | 1 | MANUAL |
| 5.1.4 | Minimize Zugriff zum Erstellen von Pods. | Manual | 1 | MANUAL |
| 5.1.5 | Ensure dass Standard-Dienstkonten nicht aktiv genutzt werden. | Manual | 1 | MANUAL |
| 5.1.6 | Ensure dass Service-Account-Token nur dort eingebunden werden, wo sie benötigt werden. | Manual | 1 | MANUAL |
5.2 Einschränkungen des Sicherheitskontexts
| Abschnitt | Empfehlung | Manuell/Automatisiert | Schwierigkeitsgrad | Ergebnis |
|---|---|---|---|---|
| 5.2.1 | Minimize Die Zulassung privilegierter Container. | Manual | 1 | MANUAL |
| 5.2.2 | Minimize die Zulassung von Containern, die den Namespace für Host-Prozess-IDs gemeinsam nutzen möchten. | Manual | 1 | MANUAL |
| 5.2.3 | Minimize die Zulassung von Containern, die den IPC-Namensraum des Hosts gemeinsam nutzen möchten. | Manual | 1 | MANUAL |
| 5.2.4 | Minimize die Zulassung von Containern, die den Netzwerk-Namespace des Hosts gemeinsam nutzen möchten. | Manual | 1 | MANUAL |
| 5.2.5 | Minimize Die Einführung von Containern mit allowPrivilegeEscalation. |
Manual | 1 | MANUAL |
| 5.2.6 | Minimize Die Zulassung von Root-Containern. | Manual | 2 | MANUAL |
| 5.2.7 | Minimize Die Zulassung von Containern mit der NET_RAW-Fähigkeit. | Manual | 1 | MANUAL |
| 5.2.8 | Minimize die Einführung von Containern mit zusätzlichen Funktionen. | Automatisiert | 1 | Nicht [geprüft |
| 5.2.9 | Minimize die Zulassung von Containern mit zugewiesenen Berechtigungen. | Manual | 2 | MANUAL |
| 5.2.10 | Minimize Zugriff auf privilegierte Sicherheitskontextbeschränkungen. | Manual | 2 | MANUAL |
5.3 Netzrichtlinien und CNI
| Abschnitt | Empfehlung | Manuell/Automatisiert | Schwierigkeitsgrad | Ergebnis |
|---|---|---|---|---|
| 5.3.1 | Ensure dass die verwendete CNI Netzwerkrichtlinien unterstützt. | Automated | 1 | Not geprüft |
| 5.3.2 | Ensure dass für alle Namespaces Netzwerkrichtlinien definiert sind. [ | Manual | 2 | MANUAL |
5.4 Verwaltung geheimer Schlüssel
| Abschnitt | Empfehlung | Manuell/Automatisiert | Schwierigkeitsgrad | Ergebnis |
|---|---|---|---|---|
| 5.4.1 | Prefer Verwendung von Secrets als Dateien anstelle von Secrets als Umgebungsvariablen. | Manual | 1 | MANUAL |
| 5.4.2 | Consider Externer Speicher für Geheimnisse. | Manual | 2 | MANUAL |
5.5 Erweiterbare Zugangssteuerung
| Abschnitt | Empfehlung | Manuell/Automatisiert | Schwierigkeitsgrad | Ergebnis |
|---|---|---|---|---|
| 5.5.1 | Configure Bildherkunft mithilfe von Konfigurationsparametern des Bildcontrollers. | Automated | 2 | Not geprüft |
5.7 Allgemeine Richtlinien
| Abschnitt | Empfehlung | Manuell/Automatisiert | Schwierigkeitsgrad | Ergebnis |
|---|---|---|---|---|
| 5.7.1 | Create Administrative Abgrenzungen zwischen Ressourcen mithilfe von Namespaces. | Manual | 1 | MANUAL |
| 5.7.2 | Ensure Stellen Sie sicher, dass das Profil seccomp in Ihren Pod-Definitionen auf docker/default gesetzt ist. |
Manual | 2 | MANUAL |
| 5.7.3 | Apply Sicherheitskontext für Ihre Pods und Container. | Manual | 2 | MANUAL |
| 5.7.4 | The Der Standard-Namespace sollte nicht verwendet werden. | Manual | 2 | MANUAL |
IBM Korrekturen und Erläuterungen
| Abschnitt | Empfehlung/Erläuterungen |
|---|---|
| 1.2.19 | Red OpenShift-Hut: Bei IBM Cloud kann optional die Überwachung des Kubernetes-API-Servers aktiviert werden. |
| 1.2.20 | Red Hat OpenShift auf IBM Cloud setzt die maximumRetainedFiles Argument zu 1. |
| 1.2.29 | Red OpenShift-Hut: Bei IBM Cloud kann optional ein Anbieter für den Kubernetes Key Management Service (KMS) aktiviert werden. |
| 2.7 | Red OpenShift-Hut auf IBM Cloud richtet eine eigene Zertifizierungsstelle für etcd ein. |
| 5.2.8 | Red OpenShift-Hut auf IBM Cloud installiert benutzerdefinierte SCCs. |
| 5.3.2 | Red Quelle: OpenShift auf IBM Cloud verfügt über eine Reihe vordefinierter Standard-Netzwerkrichtlinien ( Calico ), und es können optional weitere Netzwerkrichtlinien hinzugefügt werden. |