Pod-Sicherheitsstandards
Wenden Sie Pod Security Standards an, um Best Practices für die Sicherheit auf Pod-Ebene durchzusetzen.
Pod-Sicherheitsstandards ist eine kostenlose DevOps Bootcamp-Lektion auf CoddyKit. Dies ist Lektion 3 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des DevOps Bootcamp-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der DevOps Bootcamp-Kurs umfasst insgesamt 4 Lektionen.
Was ist PSS?
Die Kubernetes Pod Security Standards (PSS) sind eine Sammlung von Richtlinien und Kontrollen zur Durchsetzung bewährter Sicherheitspraktiken für Ihre Pods.
Sie helfen dabei, Ihren Cluster vor gängigen Sicherheitslücken und Angriffen zur Rechteausweitung zu schützen, indem sie die Möglichkeiten von Pods einschränken.
Betrachten Sie sie als Sicherheits-Checkliste für Ihre Pods!
Drei Sicherheitsstufen
PSS definiert drei klar abgegrenzte Sicherheitsstufen, die jeweils einen unterschiedlichen Schutzgrad bieten:
- Privileged: Uneingeschränkt und am wenigsten sicher.
- Baseline: Verhindert bekannte Rechteausweitungen.
- Restricted: Erzwingt bewährte, verschärfte Sicherheitspraktiken.
Diese Stufen sind kumulativ: Restricted umfasst alle Baseline-Schutzmaßnahmen, und Baseline umfasst alle Privileged-Schutzmaßnahmen (beziehungsweise keine Einschränkungen).
Privileged: Uneingeschränkter Zugriff
Die PSS-Stufe Privileged bietet eine uneingeschränkte Sicherheitsrichtlinie.
Das bedeutet, dass Pods unter dieser Richtlinie jede Capability anfordern können und vollständigen Zugriff auf die Ressourcen und Namespaces des Hosts haben – ähnlich wie bei der Ausführung als Root auf dem Hostcomputer.
Diese Stufe gilt allgemein als äußerst unsicher und sollte nur für Workloads auf Systemebene verwendet werden, die diesen Zugriff unbedingt benötigen.
Baseline: Exploits verhindern
Die PSS-Stufe Baseline zielt darauf ab, bekannte Rechteausweitungen zu verhindern.
Sie ist ein guter Ausgangspunkt für die meisten benutzerdefinierten Anwendungen.
Zu den wichtigsten Einschränkungen gehören:
- Keine privilegierten Container.
- Keine hostPath-Volumes (außer bestimmten sicheren Typen).
- Kein Host-Netzwerk und keine gemeinsame Nutzung des PID-Namespace.
- Eingeschränkte Capabilities.
Diese Stufe trägt dazu bei, viele gängige Angriffsvektoren abzuwehren.
Restricted: Verschärfte Sicherheit
Die PSS-Stufe Restricted erzwingt bewährte, verschärfte Sicherheitspraktiken.
Sie ist für Anwendungen mit besonders hohen Sicherheitsanforderungen ausgelegt und verlangt, dass Pods mit möglichst wenigen Berechtigungen ausgeführt werden.
Zusätzlich zu den Einschränkungen von Baseline erzwingt Restricted Folgendes:
- Ausführung als Nicht-Root-Benutzer.
- Entfernen aller Linux-Capabilities und Hinzufügen nur der ausdrücklich benötigten.
- Erfordern von
seccomp- undAppArmor-Profilen.
Dies ist die sicherste und strengste PSS-Stufe.
PSS mit Admission erzwingen
Pod Security Standards werden mithilfe einer Kubernetes-Funktion namens Pod Security Admission erzwungen.
Dieser Admission Controller fängt Anforderungen zum Erstellen von Pods ab und prüft sie anhand der für den Namespace des Pods konfigurierten PSS-Stufe.
Sie weisen Namespaces PSS-Stufen zu, indem Sie ihnen bestimmte Labels hinzufügen. Zum Beispiel:
kubectl label namespace <namespace-name> pod-security.kubernetes.io/enforce=restrictedPod-Sicherheit steuern
Damit Ihre Pods die PSS-Anforderungen erfüllen, verwenden Sie häufig das Feld securityContext in Ihrer Pod-Definition.
Mit diesem Feld können Sie Einstellungen für Berechtigungen und Zugriffskontrolle für einen Pod oder einzelne darin enthaltene Container definieren.
Zu den häufig verwendeten Einstellungen gehören:
runAsUser: Gibt die Benutzer-ID für den Containerprozess an.allowPrivilegeEscalation: Verhindert, dass ein Prozess mehr Berechtigungen als sein übergeordneter Prozess erhält.capabilities: Verwaltet Linux-Capabilities.
Beispiel für einen unsicheren Pod
Sehen wir uns eine Pod-Definition an, die aufgrund ihres Security Context gegen die PSS-Stufe Baseline verstoßen würde. Sie ist im Allgemeinen unsicher:
apiVersion: v1
kind: Pod
metadata:
name: unsafe-pod
spec:
containers:
- name: my-container
image: nginx
securityContext:
privileged: true
# This allows the container to run with root capabilities
# and access host devices directly.
# Violates Baseline PSS.Beispiel für einen Baseline-konformen Pod
So definieren Sie einen Pod, der die PSS-Stufe Baseline erfüllt. Beachten Sie, dass privileged: true und andere Einschränkungen fehlen.
Für eine noch strengere Konformität mit Restricted würden Sie runAsNonRoot: true und readOnlyRootFilesystem: true hinzufügen und alle Capabilities entfernen.
apiVersion: v1
kind: Pod
metadata:
name: safe-pod
spec:
containers:
- name: my-container
image: nginx
securityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
# This Pod runs with minimal privileges and
# adheres to the Baseline PSS.PSS-Schnelltest
Welche der folgenden Aussagen zu Pod Security Standards (PSS) ist RICHTIG?
Zusammenfassung: Pod Security Standards
In dieser Lektion haben Sie die Kubernetes Pod Security Standards (PSS) und ihre Bedeutung für die Absicherung Ihres Clusters kennengelernt.
- PSS definieren drei Stufen: Privileged, Baseline und Restricted.
- Baseline verhindert bekannte Privilege Escalations und eignet sich für die meisten Anwendungen.
- Restricted erzwingt eine gehärtete Sicherheitskonfiguration und erfordert minimale Berechtigungen.
- Mit dem Feld
securityContextkönnen Sie Pods so konfigurieren, dass sie die PSS-Anforderungen erfüllen.
Die Anwendung von PSS ist ein entscheidender Schritt auf dem Weg zu sichereren Kubernetes-Umgebungen!
Häufig gestellte Fragen
Ist die Lektion „Pod-Sicherheitsstandards“ kostenlos?
Ja — der vollständige Text von „Pod-Sicherheitsstandards“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des DevOps Bootcamp-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der DevOps Bootcamp-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Pod-Sicherheitsstandards“?
Wenden Sie Pod Security Standards an, um Best Practices für die Sicherheit auf Pod-Ebene durchzusetzen. Du übst DevOps Bootcamp mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um DevOps Bootcamp zu starten?
Keine Vorkenntnisse erforderlich. DevOps Bootcamp auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 3 von 4.
Wie lange dauert die Lektion „Pod-Sicherheitsstandards“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser DevOps Bootcamp-Lektion Code schreiben und ausführen?
Ja. Jede DevOps Bootcamp-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Rollenbasierte Zugriffskontrolle (RBAC)
- Network Policies zur Isolation
- Pod-Sicherheitsstandards
- Service Accounts und Workload Identity