Sicherheit

Defense-in-Depth

Acht Schichten, die sich gegenseitig absichern. Selbst wenn eine fällt, halten die anderen.

Sicherheit ist kein Feature — es ist eine Architektur. Jede Schicht schützt die inneren Ebenen. Ein Angreifer muss alle acht Schichten überwinden, um an die Kern-Daten zu kommen.

8. Secrets 7. SOUL.md 6. Modell-Routing 5. Permission Broker 4. Tool-Berechtigungen 3. Docker-Sandbox 2. nftables 1. WireGuard + UFW

Von außen nach innen: Netzwerk-Sicherheit → Firewall → Container-Isolation → Tool-Limits → Permission Broker → Modell-Routing → Verhaltensregeln → Secrets als Dateien.

1

WireGuard + UFW

VPN verbindet alle Server. UFW blockiert alle nicht explizit erlaubten Ports. Keine externen Discovery-Server.

2

nftables-Firewall

Container können keine privaten Netze erreichen. Nur erlaubte Ziel-IPs und Ports.

3

Docker-Sandbox

Isolierte Container für jeden Agenten. Kein Host-Zugriff, keine privilegierten Modi.

4

Tool-Berechtigungen

Nur bestimmte Werkzeuge erlaubt (git-proxy, mm-post, exec-Allowlist). Keine unbekannten Binaries.

5

Permission Broker

Validiert jeden Befehl gegen Whitelist. Blockiert nicht erlaubte Aktionen.

6

Modell-Routing

Große Cloud-Modelle für kritische Entscheidungen. Lokale Modelle für sensible Daten.

7

SOUL.md Regeln

Verhaltensregeln pro Agent: keine Secrets im Code, keine externen URLs, keine destruktiven Befehle.

8

Secrets Management

Passwörter als verschlüsselte Dateien, nie als Umgebungsvariablen. API-Keys nur auf GX10.

Was passiert bei einem Angriff?

Stell dir vor, ein Angreifer kompromittiert den OC1-Server:

  • Kein Zugriff auf API-Keys: Sie liegen nur auf GX10 (lokal, verschlüsselt).
  • Kein Host-Zugriff: Docker-Isolation verhindert Zugriff auf den Host.
  • Keine nicht erlaubten Befehle: Permission Broker blockiert alles außer der Whitelist.
  • Budget-Limits: Cloud-API-Nutzung ist begrenzt — kein finanzieller Schaden.

Die inneren Schichten halten, auch wenn eine äußere fällt.

Architektur-Entscheidungen

Warum wir welche Technologie gewählt haben.