Zurück zur Übersicht

Begriff

Container Isolation

Containerization Security S2
3 Quellen 1 Lernpfad 0 Backlinks enriched

Warum wichtig?

Dieser Begriff ist ein Knoten im SengakujiWorks-Wissensnetz. Nutze Level 0 für die erste Einordnung, Level 1 für Praxis, Level 2 für technische Struktur und Level 3 für Grenzen, Fallstricke und Expertenkontext.

Viele Leute denken, Container sind wie "kleine virtuelle Server". Das stimmt nicht. Container sind Prozesse (wie Word oder Chrome) auf dem gleichen Betriebssystem wie alle anderen. Aber sie tragen eine "VR-Brille" (Namespaces) und Fesseln (cgroups). Die Isolation sorgt dafür, dass:

  1. Der Container denkt, er wäre allein auf der Welt (sieht keine anderen Prozesse).
  2. Er nicht auf Dateien außerhalb seines Ordners zugreifen kann.
  3. Er den Server nicht überlasten kann. Aber: Wenn der Linux-Kernel abstürzt (Kernel Panic), sterben alle Container. Bei einer VM (Virtual Machine) stirbt nur die eine VM. Container sind also "weniger isoliert" als VMs.

Merksatz: Die Trennung von Prozessen in Containern vom Host-System und anderen Containern durch Kernel-Features (Namespaces, cgroups), um Sicherheit und Ressourcen-Unabhängigkeit zu gewährleisten (Shared Kernel Architecture).


Quick-Check

  1. Sind Container so sicher wie VMs?
    Nein. "Container don't contain". Der Shared Kernel ist ein Single Point of Failure. Für feindliche Multi-Tenancy (z. B. "Lasse Code von Fremden laufen") braucht man VMs (Firecracker/Kata).
  2. Was ist "Rootless Docker"?
    Der Docker Daemon selbst läuft als normaler User (nicht Root). Selbst wenn man ausbricht, ist man auf dem Host nur ein User ohne Rechte. Großer Sicherheitsgewinn.
  3. Privileged Container?
    --privileged. Gibt dem Container alle Capabilities und Zugriff auf alle Devices. Das hebt die Isolation effektiv auf. Mache das nie, außer du weißt exakt warum (z. B. Docker-in-Docker).