Mit Version 1.33, veröffentlicht am 23. April 2025, bringt Kubernetes ein Sicherheitsfeature in den Standardbetrieb, das bisher oft übersehen wurde, aber enorme Wirkung entfaltet: User Namespaces sind jetzt standardmässig aktiviert, eine stille Revolution in Sachen Container-Isolation.
Container laufen häufig mit Root-Rechten, zumindest innerhalb des Containers. Bisher bedeutete das im Ernstfall: Wer aus dem Container ausbricht, hat Root-Zugriff auf dem Host, genau das verhindern User Namespaces.
Im Gegensatz zu klassischen Kubernetes-Namespaces (für Objekte) ist ein User Namespace eine Funktion des Linux-Kernels, die Prozessrechte isoliert.
Neben der Unterscheidung zu Kubernetes-Namespaces lohnt sich auch ein Blick auf andere Sicherheitsmechanismen im Vergleich:
Im Unterschied zu anderen Sicherheitsfunktionen wie AppArmor oder Seccomp, die einzelne Systemaufrufe oder Rechte begrenzen, setzen User Namespaces auf eine systemweite Trennung der Identitäten. Dadurch entfällt die Notwendigkeit, Rechte in aufwendigen Policy-Dateien zu definieren, die Isolation geschieht direkt auf Kernel-Ebene und ist damit robuster und einfacher in der Umsetzung.
Mit aktivierten User Namespaces entstehen gleich mehrere Sicherheitsvorteile:
Seit Kubernetes v1.33 braucht es keinen Feature-Flag mehr. Die Funktion ist standardmässig aktiv.
apiVersion: v1
kind: Pod
metadata:
name: userns-example
spec:
hostUsers: false
containers:
- name: demo
image: debian
command: ["sleep", "infinity"]
Optional kann man Webhooks oder einen MutatingAdmissionController nutzen, um dies clusterweit zu erzwingen.
Eine umfangreichere Liste findet sich im offiziellen KEP 127 (GitHub).
Für Backup ONE-Kunden bedeuten standardmässig aktivierte User Namespaces ein deutlich höheres Sicherheitsniveau bei gleichzeitig reduzierter Komplexität. Besonders in Umgebungen mit gemischten Workloads oder mehreren Mandanten (Multi-Tenancy) bietet diese Isolationsebene einen echten Mehrwert. Durch den Wegfall aufwendiger Policy-Konfigurationen können Sicherheitsstandards einfacher und konsistenter umgesetzt werden. Dies passt nahtlos in unsere Philosophie: Sicherheit, die einfach funktioniert.
In modernen Cloud-native-Umgebungen reicht es nicht, Anwendungen nur in Containern zu betreiben, auch deren Sicherheit muss automatisiert mitgedacht werden.
User Namespaces bieten hier einen wirkungsvollen Baustein: Sie ermöglichen „Root im Container, aber nicht auf dem Host“ und das ohne Anpassung des Applikationscodes.
Gerade in dynamischen Kubernetes-Umgebungen mit vielen Microservices oder mehreren Teams ist diese Trennung entscheidend, um Angriffsflächen zu minimieren und Sicherheitsrichtlinien wie DevSecOps, Least Privilege oder Zero Trust effektiv umzusetzen.
Herausforderung für manche Unternehmen könnte die Heterogenität bestehender Cluster sein: Nicht alle Kernel oder Container Runtimes sind sofort kompatibel. Hier unterstützt Backup ONE bei der Planung und Implementierung sicherer Kubernetes-Umgebungen.
Mit Kubernetes v1.33 wird ein zentrales Sicherheitskonzept zum neuen Standard. User Namespaces sind der einfachste und sicherste Weg, Container zu isolieren ohne Entwicklungsaufwand.
Sie machen aus „Root“ im Container einen ungefährlichen Papiertiger und bieten gleichzeitig die Freiheit, komplexe Build oder Runtime-Szenarien sicher umzusetzen.
Wer Kubernetes mit Backup ONE produktiv nutzt, sollte keine Pods mehr ohne hostUsers: false starten. Unser Team unterstützt gerne bei der Umsetzung dieser Best Practices.
Es ist ein kleiner Konfigurationsschritt mit grosser Wirkung und ein deutliches Signal, dass Kubernetes-Sicherheit längst nicht mehr bei Netzwerkrichtlinien aufhört, sondern schon beim Container-User beginnt.
Das sind weitere Beiträge, die Sie interessieren könnten.
Zur Blogübersicht