In diesem Dokument wird das Maß der Compliance beschrieben, das Anthos-Cluster auf VMware (GKE On-Prem) mit der CIS-Ubuntu-Benchmark hat.
Versionen
Dieses Dokument bezieht sich auf folgende Versionen:
Anthos-Version | Ubuntu-Version | Version der CIS-Ubuntu-Benchmark | CIS-Level |
---|---|---|---|
1.9 | 18.04 LTS | v2.0.1 | Level-2-Server |
Auf die Benchmark zugreifen
Die CIS-Ubuntu-Benchmark steht auf der CIS-Website zur Verfügung:
Konfigurationsprofil
Im Dokument zur CIS-Ubuntu-Benchmark finden Sie Informationen zu Konfigurationsprofilen. Die von Anthos-Cluster auf VMware verwendeten Ubuntu-Images sind gehärtet, um das Level-2-Serverprofil zu erfüllen.
Bewertung zu Anthos-Cluster auf VMware
Wir verwenden die folgenden Werte, um den Status von Ubuntu-Empfehlungen in Anthos-Cluster auf VMware anzugeben:
Status | Beschreibung |
---|---|
Bestanden | Entspricht einer Benchmarkempfehlung. |
Nicht bestanden | Entspricht nicht einer Benchmarkempfehlung. |
Gleichwertige Kontrolle | Entspricht nicht genau den Bedingungen in einer Benchmarkempfehlung, aber andere Mechanismen in Anthos-Cluster auf VMware bieten gleichwertige Sicherheitskontrollen. |
Umgebungsabhängig | Anthos-Cluster auf VMware konfiguriert keine Elemente, die sich auf eine Benchmarkempfehlung beziehen. Ihre Konfiguration bestimmt, ob Ihre Umgebung der Empfehlung entspricht. |
Status von Anthos-Cluster auf VMware
Die mit Anthos-Cluster auf VMware verwendeten Ubuntu-Images sind gehärtet, um das Level-2-Serverprofil zu erfüllen. In der folgenden Tabelle sind die Begründungen aufgeführt, warum Anthos-Cluster auf VMware-Komponenten bestimmte Empfehlungen nicht erfüllt haben.
# | Empfehlung | Bewertet/Nicht bewertet | Status | Begründung | Betroffene Komponenten |
---|---|---|---|---|---|
1.1.2 | Sicherstellen, dass /tmp konfiguriert ist | Bewertet | Nicht bestanden | Canonical plant derzeit keine Änderungen der Cloud-Image-Partitionen. | Alle Clusterknoten, Administrator-Workstation, Seesaw |
1.1.6 | Achten Sie darauf, dass für /var eine separate Partition vorhanden ist | Bewertet | Wird nicht behoben | Canonical plant derzeit keine Änderungen der Cloud-Image-Partitionen. | Alle Clusterknoten, Administrator-Workstation, Seesaw |
1.1.7 | Achten Sie darauf, dass für /var/tmp eine separate Partition vorhanden ist | Bewertet | Wird nicht behoben | Canonical plant derzeit keine Änderungen der Cloud-Image-Partitionen. | Alle Clusterknoten, Administrator-Workstation, Seesaw |
1.1.11 | Achten Sie darauf, dass für /var/log eine separate Partition vorhanden ist | Bewertet | Wird nicht behoben | Canonical plant derzeit keine Änderungen der Cloud-Image-Partitionen. | Alle Clusterknoten, Administrator-Workstation, Seesaw |
1.1.12 | Achten Sie darauf, dass für /var/log/audit eine separate Partition vorhanden ist | Bewertet | Wird nicht behoben | Canonical plant derzeit keine Änderungen der Cloud-Image-Partitionen. | Alle Clusterknoten, Administrator-Workstation, Seesaw |
1.1.13 | Achten Sie darauf, dass für /home eine separate Partition vorhanden ist | Bewertet | Wird nicht behoben | Canonical plant derzeit keine Änderungen der Cloud-Image-Partitionen. | Alle Clusterknoten, Administrator-Workstation, Seesaw |
1.1.21 | Sicherstellen, dass das Sticky Bit für alle von jedem beschreibbaren Verzeichnisse festgelegt ist | Bewertet | Nicht bestanden | Dies könnte die Funktionalität von Anthos und dessen Diensten beeinträchtigen und ist nicht standardmäßig aktiviert. | Alle Clusterknoten, Administrator-Workstation |
1.5.1 | Sicherstellen, dass Berechtigungen für die Bootloader-Konfiguration konfiguriert sind | Bewertet | Nicht bestanden | Berechtigungen wurden als Standard beibehalten. | Alle Clusterknoten, Seesaw |
1.5.2 | Sicherstellen, dass das Bootloader-Passwort festgelegt ist | Bewertet | Umgebungsabhängig | Für Ubuntu-Cloud-Images ist kein Root-Passwort festgelegt. | Alle Clusterknoten, Administrator-Workstation, Seesaw |
1.5.3 | Sicherstellen, dass für den Einzelnutzermodus eine Authentifizierung erforderlich ist | Bewertet | Umgebungsabhängig | Für Ubuntu-Cloud-Images ist kein Root-Passwort festgelegt. | Alle Clusterknoten, Administrator-Workstation, Seesaw |
1.8.1.2 | Sicherstellen, dass das Warnungsbanner für die lokale Anmeldung richtig konfiguriert ist | Bewertet | Gleichwertige Kontrolle | Außerdem wendet Anthos die DISA-STIG-Härtung auf Knoten an, wodurch das Warnungsbanner entsprechend aktualisiert wird. | Alle Clusterknoten, Seesaw |
3.1.2 | Sicherstellen, dass die IP-Weiterleitung deaktiviert ist | Bewertet | Nicht bestanden | Die IP-Weiterleitung ist notwendig, damit Kubernetes (GKE) ordnungsgemäß funktioniert und den Traffic weiterleitet. | Alle Clusterknoten, Administrator-Workstation, Seesaw |
3.2.7 | Sicherstellen, dass die Filterung für umgekehrte Pfade aktiviert ist | Bewertet | Umgebungsabhängig | Asynchrones Routing und Reverse Path Origination sind für das Cluster-Load-Balancing erforderlich | Seesaw |
3.5.2.5 | Sicherstellen, dass Firewallregeln für alle offenen Ports vorhanden sind | Nicht bewertet | Umgebungsabhängig | Es empfiehlt sich, Anthos auf VMware in einem privaten Netzwerk mit entsprechenden Firewall-Schutzmaßnahmen bereitzustellen. Die erforderlichen Firewallregeln finden Sie hier. | Alle Clusterknoten, Administrator-Workstation, Seesaw |
3.5.4.1.1 | Sicherstellen, dass die Standard-DENY-Firewallrichtlinie festgelegt ist | Bewertet | Umgebungsabhängig | Es empfiehlt sich, Anthos auf VMware in einem privaten Netzwerk mit entsprechenden Firewall-Schutzmaßnahmen bereitzustellen. Die erforderlichen Firewallregeln finden Sie hier. | Alle Clusterknoten, Administrator-Workstation, Seesaw |
3.5.4.1.2 | Sicherstellen, dass Loopback-Traffic konfiguriert ist | Bewertet | Umgebungsabhängig | Die Nutzung der Loopback-Schnittstelle ist aufgrund der verwendeten Load-Balancing-Funktion begrenzt. | Seesaw |
3.5.4.2.1 | Sicherstellen, dass die Standard-DENY-Firewallrichtlinie für IPv6 festgelegt ist | Bewertet | Umgebungsabhängig | Es empfiehlt sich, Anthos auf VMware in einem privaten Netzwerk mit entsprechenden Firewall-Schutzmaßnahmen bereitzustellen. Die erforderlichen Firewallregeln finden Sie hier. Anthos erfordert keine Unterstützung für IPv6 unter GA. | Alle Clusterknoten, Administrator-Workstation, Seesaw |
3.5.4.2.2 | Sicherstellen, dass der IPv6-Loopback-Traffic konfiguriert ist | Bewertet | Umgebungsabhängig | Anthos erfordert keine Unterstützung für IPv6 unter GA. | Administrator-Steuerungsebene, Seesaw |
4.1.1.3 | Auditing für Prozesse ausführen, die vor der Aktivierung von auditd gestartet werden | Bewertet | Nicht bestanden | Ein bekanntes Problem bei unserem Build-Prozess kennzeichnet dies als "Nicht bestanden", obwohl es als falscher Alarm angesehen werden sollte. Dieses Problem wird in Zukunft behoben. | Alle Clusterknoten, Seesaw |
4.1.1.11 | Verwendung privilegierter Befehle erfassen | Bewertet | Nicht bestanden | Einige Binärdateien werden zur Laufzeit installiert, sodass eine Fehlerbehebung erforderlich ist. | Alle Clusterknoten, Administrator-Workstation, Seesaw |
4.2.1.5 | Sicherstellen, dass rsyslog so konfiguriert ist, dass Logs an einen Remote-Loghost gesendet werden | Bewertet | Umgebungsabhängig | Anthos auf VMWare erfasst derzeit alle journald-Logs (von Systemdiensten). Diese Logs können unter "k8s_node" aufgerufen werden. | Alle Clusterknoten, Administrator-Workstation, Seesaw |
4.2.3 | Sicherstellen, dass Berechtigungen für alle Logdateien konfiguriert sind | Bewertet | Nicht bestanden | Dieser spezifische Test ist zu restriktiv und unrealistisch, da viele Dienste eine Gruppe zum Schreiben von Logdateien benötigen. Dieses Element wird möglicherweise in einer zukünftigen Benchmark entfernt. | Alle Clusterknoten, Administrator-Workstation, Seesaw |
5.2.12 | Sicherstellen, dass SSH-PermitUserEnvironment deaktiviert ist | Bewertet | Nicht bestanden | Diese Einstellung steht in Konflikt mit den DISA-STIG-Härtungseinstellungen. | Alle Clusterknoten, Seesaw |
5.2.13 | Sicherstellen, dass nur starke Chiffren verwendet werden | Bewertet | Gleichwertige Kontrolle | Für die Anwendung von DISA-STIG wird eine alternative Liste unterstützter Chiffren verwendet, die nicht 1:1 mit den in dieser Benchmark verwendeten übereinstimmt. | Alle Clusterknoten |
2.2.18 | Sicherstellen, dass der SSH-Zugriff eingeschränkt ist | Bewertet | Umgebungsabhängig | Dies ist nicht standardmäßig konfiguriert. Sie können dies Ihren Anforderungen entsprechend konfigurieren. | Alle Clusterknoten, Administrator-Workstation, Seesaw |
5.2.19 | Sicherstellen, dass das SSH-Warnungsbanner konfiguriert ist | Bewertet | Gleichwertige Kontrolle | Das SSH-Warnungsbanner wird durch die Anwendung der DISA-STIG-Härtungskonfiguration geändert. | Alle Clusterknoten, Seesaw |
6.1.6 | Sicherstellen, dass Berechtigungen für /etc/passwd konfiguriert sind | Bewertet | Nicht bestanden | Dieser spezifische Test ist zu restriktiv und wird von Canonical aktualisiert (Link). | Alle Clusterknoten, Administrator-Workstation, Seesaw |
6.1.10 | Sicherstellen, dass keine beschreibbaren Dateien vorhanden sind | Bewertet | Nicht bestanden | Berechtigungen wurden als Standard beibehalten. | Alle Clusterknoten |
6.1.11 | Sicherstellen, dass keine Dateien oder Verzeichnisse vorhanden sind, die niemandem gehören | Bewertet | Nicht bestanden | Berechtigungen wurden als Standard beibehalten. | Alle Clusterknoten |
6.1.12 | Sicherstellen, dass keine nicht gruppierten Dateien oder Verzeichnisse vorhanden sind | Bewertet | Nicht bestanden | Berechtigungen wurden als Standard beibehalten. | Alle Clusterknoten |
6.2.10 | Sicherstellen, dass die dot-Dateien der Nutzer nicht für Gruppen oder für jeden beschreibbar sind | Bewertet | Nicht bestanden | Die Standardeinstellungen für Ubuntu erlauben aufgrund der Kompatibilität Berechtigungen für dot-Dateigruppen | Administratorworkstation |
AIDE-Cronjob konfigurieren
AIDE ist ein Tool zur Dateiintegritätsprüfung, das für Compliance mit CIS L1 Server Benchmark 1.4 Filesystem Integrity Checking
sorgt. In Anthos-Cluster auf VMware hat der AIDE-Prozess Probleme bei hoher Ressourcennutzung verursacht.
Ab Version 1.9.7 ist der AIDE-Prozess auf Knoten standardmäßig deaktiviert, um Ressourcenprobleme zu vermeiden. Dies wirkt sich auf die Compliance mit CIS L1 Server Benchmark 1.4.2 aus: Ensure
filesystem integrity is regularly checked.
Wenn Sie die Ausführung des AIDE-Cronjobs aktivieren möchten, führen Sie die folgenden Schritte aus, um AIDE wieder zu aktivieren:
Erstellen Sie ein DaemonSet.
Dies ist ein Manifest für ein DaemonSet:
apiVersion: apps/v1 kind: DaemonSet metadata: name: enable-aide-pool1 spec: selector: matchLabels: app: enable-aide-pool1 template: metadata: labels: app: enable-aide-pool1 spec: hostIPC: true hostPID: true nodeSelector: cloud.google.com/gke-nodepool: pool-1 containers: - name: update-audit-rule image: ubuntu command: ["chroot", "/host", "bash", "-c"] args: - | set -x while true; do # change daily cronjob schedule minute=30;hour=5 sed -E "s/([0-9]+ [0-9]+)(.*run-parts --report \/etc\/cron.daily.*)/$minute $hour\2/g" -i /etc/crontab # enable aide chmod 755 /etc/cron.daily/aide sleep 3600 done volumeMounts: - name: host mountPath: /host securityContext: privileged: true volumes: - name: host hostPath: path: /
Für das oben aufgeführte Manifest gilt Folgendes:
Der AIDE-Cronjob wird nur im Knotenpool
pool-1
ausgeführt, wie durch den nodeSelectorcloud.google.com/gke-nodepool: pool-1
angegeben. Sie können den AIDE-Prozess so konfigurieren, dass er auf beliebig vielen Knotenpools ausgeführt wird. Geben Sie dazu die Pools unter dem FeldnodeSelector
an. Entfernen Sie das FeldnodeSelector
, um denselben Cronjob-Zeitplan für verschiedene Knotenpools auszuführen. Um Ressourcenüberlastungen zu vermeiden, empfehlen wir jedoch, separate Zeitpläne zu pflegen.Der Cronjob wird gemäß der Konfiguration
minute=30;hour=5
täglich um 5:30 Uhr ausgeführt. Sie können unterschiedliche Zeitpläne für den AIDE-Cronjob nach Bedarf konfigurieren.
Kopieren Sie das Manifest in eine Datei mit dem Namen
enable-aide.yaml
und erstellen Sie das DaemonSet:
kubectl apply --kubeconfig USER_CLUSTER_KUBECONFIG -f enable-aide.yaml
Dabei ist USER_CLUSTER_KUBECONFIG der Pfad der kubeconfig-Datei für Ihren Nutzercluster.