Openshift - SCC
Last updated
Last updated
Der ursprüngliche Autor dieser Seite ist Guillaume
Im Kontext von OpenShift steht SCC für Security Context Constraints. Security Context Constraints sind Richtlinien, die die Berechtigungen für Pods steuern, die auf OpenShift-Clustern ausgeführt werden. Sie definieren die Sicherheitsparameter, unter denen ein Pod ausgeführt werden darf, einschließlich der Aktionen, die er ausführen kann, und der Ressourcen, auf die er zugreifen kann.
SCCs helfen Administratoren dabei, Sicherheitsrichtlinien über den Cluster hinweg durchzusetzen, um sicherzustellen, dass Pods mit angemessenen Berechtigungen ausgeführt werden und den organisatorischen Sicherheitsstandards entsprechen. Diese Einschränkungen können verschiedene Aspekte der Pod-Sicherheit spezifizieren, wie zum Beispiel:
Linux-Fähigkeiten: Begrenzung der für Container verfügbaren Fähigkeiten, wie z.B. die Möglichkeit, privilegierte Aktionen auszuführen.
SELinux-Kontext: Durchsetzung von SELinux-Kontexten für Container, die definieren, wie Prozesse mit Ressourcen im System interagieren.
Nur-Lese-Root-Dateisystem: Verhindern, dass Container Dateien in bestimmten Verzeichnissen ändern.
Erlaubte Host-Verzeichnisse und Volumes: Festlegen, welche Host-Verzeichnisse und Volumes ein Pod einbinden kann.
Als UID/GID ausführen: Festlegen der Benutzer- und Gruppen-IDs, unter denen der Containerprozess läuft.
Netzwerkrichtlinien: Steuerung des Netzwerkzugriffs für Pods, z.B. Einschränkung des Ausgangsverkehrs.
Durch Konfiguration von SCCs können Administratoren sicherstellen, dass Pods mit dem angemessenen Maß an Sicherheitsisolierung und Zugriffskontrollen ausgeführt werden, um das Risiko von Sicherheitslücken oder unberechtigtem Zugriff im Cluster zu reduzieren.
Im Grunde wird jedes Mal, wenn eine Pod-Bereitstellung angefordert wird, ein Zulassungsprozess wie folgt ausgeführt:
Diese zusätzliche Sicherheitsebene verbietet standardmäßig die Erstellung privilegierter Pods, das Einhängen des Host-Dateisystems oder das Festlegen von Attributen, die zu einem Privilegieneskalation führen könnten.
Pod Escape PrivilegesUm alle SCCs mit dem Openshift-Client aufzulisten:
Alle Benutzer haben Zugriff auf die Standard-SCCs "restricted" und "restricted-v2", die die strengsten SCCs sind.
Der für ein Pod verwendete SCC ist in einer Annotation definiert:
Wenn ein Benutzer Zugriff auf mehrere SCCs hat, wird das System denjenigen nutzen, der mit den Sicherheitskontextwerten übereinstimmt. Andernfalls wird ein Fehler mit dem Status "forbidden" ausgelöst.