Die Plattform
Eine Plattform, die wir bis zur letzten Schicht kennen.
Wir haben sie nicht gemietet, sondern gebaut: jede Komponente ausgewählt, gehärtet, dokumentiert und automatisiert. Hier legen wir offen, wie sie funktioniert.
Schichtenmodell
Von außen nach innen.
Sechs Schichten, jede mit klarer Aufgabe und eigener Netzzone. Was nicht ausdrücklich erlaubt ist, ist gesperrt.
-
01
Edge
Eingang und Abwehr
Reverse Proxy mit automatischen TLS-Zertifikaten, Ratenbegrenzung und verhaltensbasierter Abwehr. Öffentlich ist nur, was ausdrücklich freigegeben wurde.
Reverse ProxyVerhaltensanalyseTLS automatisch -
02
Zugang
Zero Trust
Code-Plattform, Registry, Monitoring und SIEM sind nicht öffentlich. Der Zugriff führt über ein verschlüsseltes Overlay-Netz mit Single Sign-on und zweitem Faktor.
Overlay-Netzzentrale IdentitätWebAuthn -
03
Plattform
Bauen und Ausrollen
Eigene Code-Plattform mit CI und Registry. Jede Änderung läuft zuerst auf eine getrennte Entwicklungsumgebung. Ausgerollt wird ein geprüftes Abbild.
eigene Code-PlattformCI/CDRegistryImage-Digest -
04
Laufzeit
Isolierte Anwendungen
Jedes Projekt läuft mit eigener Kennung, schreibgeschütztem Dateisystem, ohne Sonderrechte und mit erzwungenen Quoten.
ContainerQuotenEgress gesperrt -
05
Beobachtung
Erkennen und reagieren
Logs, Metriken und Sicherheitsereignisse laufen zentral zusammen. Ein IDS liest den Netzwerkverkehr mit, Alarme gehen direkt an die Betreiber.
SIEMIDSMetrikenzentrale LogsAlarme mit Anweisung -
06
Fundament
Hardware und Sicherung
Dedizierte Server in einem deutschen Rechenzentrum, getrennte Netzzonen, nächtliche Sicherungen und geprobte Wiederherstellung. Alles als Code beschrieben.
dedizierte HardwareVirtualisierungInfrastruktur als CodeRestore geprobt
Der Weg einer Anfrage
Was passiert, wenn jemand Ihre Seite aufruft.
Drei Wege durch unsere Plattform: vom Browser über den Eingang bis in den Container. Und einer, der dort endet, wo er enden soll.
/leistungen/200 OKSchematisch · Beispielwerte- 01 / ClientBrowserAnfrage über HTTPS
- 02 / EdgeEingangTLS, Router, Abwehr
- 03 / PoolProjekt-ProxyWeiterleitung je Projekt
- 04 / LaufzeitContainerIhre Anwendung
- 05 / DatenDatenbanknicht beteiligt
- 06 / AusgangInternetnicht beteiligt
Schnell ausgeliefert.
Die Seite kommt direkt aus dem Container, vorkomprimiert und mit Sicherheitsköpfen. Eine Datenbank wird nicht gebraucht.
- 0 msBrowserTLS 1.3 zum Eingang aufgebaut
- 2 msEdgeRouter für die Domain gefunden, Ratenbegrenzung eingehalten
- 3 msEdgeVerhaltensbasierte Abwehr: keine Sperre
- 4 msPoolWeiterleitung in das Netz des Projekts
- 6 msContainerDatei aus dem Speicher, Brotli, ETag
- 9 msBrowser200 OK, Seite steht
/konto/200 OKSchematisch · Beispielwerte- 01 / ClientBrowserAnfrage über HTTPS
- 02 / EdgeEingangTLS, Router, Abwehr
- 03 / PoolProjekt-ProxyWeiterleitung je Projekt
- 04 / LaufzeitContainerIhre Anwendung
- 05 / DatenDatenbankeigene Instanz
- 06 / AusgangInternetnicht beteiligt
Inhalte aus der eigenen Datenbank.
Die Anwendung fragt ihre eigene Datenbank ab. Datenbank und Zugangsdaten gehören allein diesem Projekt.
- 0 msBrowserTLS 1.3 zum Eingang aufgebaut
- 3 msEdgeRouter gefunden, Abwehr: keine Sperre
- 4 msPoolWeiterleitung in das Netz des Projekts
- 6 msContainerSitzung geprüft
- 11 msDatenbankAbfrage im Projektnetz, Passwort nur als Datei im Container
- 18 msBrowser200 OK, personalisierte Seite
extern:443verworfenSchematisch · Beispielwerte- 01 / ClientBrowsernicht beteiligt
- 02 / EdgeEingangnicht beteiligt
- 03 / PoolProjekt-Proxynicht beteiligt
- 04 / LaufzeitContainerIhre Anwendung
- 05 / DatenDatenbanknicht beteiligt
- 06 / AusgangInternetverworfen
Was nicht raus darf, kommt nicht raus.
Eine Anwendung in Produktion versucht, einen fremden Server zu erreichen. Die Regel am Host verwirft die Verbindung, das SIEM meldet es, und die Seite läuft weiter.
- 0 msContainerVerbindungsversuch zu einer fremden Adresse
- 0 msHostAusgangsregel der Produktion: kein Internetzugang, verworfen
- 1 sSIEMEreignis korreliert und eingeordnet
- 1 sBetriebAlarm an die Betreiber, mit Projekt und Ziel
- danachWebsiteunverändert erreichbar
Der Weg einer Änderung
Weitergereicht wird ein Abbild, kein Quelltext.
Die Produktion zieht sich den freigegebenen Stand selbst. Es gibt keinen offenen Zugang, über den jemand von außen hineinschieben könnte.
Push
Code landet auf der eigenen Code-Plattform, nur über das Zero-Trust-Netz erreichbar.
Keine öffentliche Code-Ablage
Pipeline
Bauen ohne Netzzugriff, Tests, Abbild mit eindeutigem Digest in die eigene Registry.
Reproduzierbar
Entwicklung
Ein Agent auf der Entwicklungsmaschine übernimmt den Digest und startet ihn isoliert.
Getrennte Maschine
Produktion
Nach Freigabe zieht der Agent in Produktion denselben Digest. Gesundheitstor oder Rückfall.
Kein lauschender Dienst
Für Entwicklerteams
Eine Datei. Der ganze Betrieb.
Port, Gesundheitsprüfung, Ressourcen, Datenbank, Hintergrunddienste, Geheimnisse und Domains: Ihr Team beschreibt, was die Anwendung braucht. Die Plattform kümmert sich um den Rest, inklusive Quoten, die der Kernel erzwingt.
# rb-projekt.yml: die einzige Datei, in der Ihr Team den Betrieb beschreibt
schema_version: 1
web:
port: 8080
gesundheitspfad: /healthz # scheitert er, läuft der vorige Stand weiter
speicher_mib: 512
cpu: 0.50
schreibpfade: [uploads] # gesichert in Produktion, jede Nacht
geheimnisse: [API_SCHLUESSEL] # Werte verschlüsselt im Repository
domains: [ihre-firma.de] # Zertifikat kommt automatisch
platte_gib: 5
rueckfall: automatisch
Prinzipien
Wie wir bauen.
01 Alles als CodeServer, Netze, Firewall, Dienste und Prüfungen sind versioniert beschrieben.
Was nicht im Repository steht, gibt es auf der Plattform nicht. Jede Änderung ist nachvollziehbar, hat einen Autor und lässt sich zurücknehmen. Fällt eine Maschine aus, entsteht sie aus derselben Beschreibung neu.
- Jede Änderung hat eine Begründung im Verlauf.
- Wiederherstellung ist ein wiederholbarer Ablauf, kein Gedächtnisspiel.
- Neue Umgebungen sehen exakt wie die bestehenden aus.
02 Geschlossen als StandardFirewalls schlagen im Fehlerfall zu, nicht auf. Produktion hat keinen freien Internetzugang.
Wir erlauben Wege einzeln und ausdrücklich. Fehlt eine Regel oder scheitert ihr Laden, bleibt alles gesperrt: sicherer Zustand statt offener Tür.
- Öffentlich ist nur, was auf einer Liste steht.
- Ausgehende Verbindungen aus der Produktion werden verworfen.
- Updates laufen in kurzen, festen Fenstern.
03 Geringste RechtePersonengebundene Konten, Gruppen je Aufgabe, zweiter Faktor. Anwendungen ohne Sonderrechte.
Jede Person und jede Anwendung bekommt genau die Rechte, die ihre Aufgabe braucht. Wer mehr braucht, bekommt es begründet, und es wird wieder entzogen.
- Keine geteilten Administratorkonten.
- Container laufen ohne Root und schreibgeschützt.
- Rollen trennen Betrieb und Entwicklung.
04 Beobachten statt hoffenMetriken, Logs und Sicherheitsereignisse laufen zentral zusammen. Alarme haben eine Handlungsanweisung.
Ein System, das niemand beobachtet, ist ein Glücksspiel. Wir messen, sammeln und werten aus, und jeder Alarm sagt, was zu tun ist.
- Ausfälle fallen uns auf, bevor Sie sich melden.
- Auch die Überwachung wird überwacht.
- Alarme gehen direkt an die Betreiber.
05 Aktualität mit SystemJede Komponente ist auf eine Version festgelegt und wird alle sechs Stunden mit Herstellermeldungen abgeglichen.
Updates sind kein Bauchgefühl. Ein Wächter kennt jede Version, vergleicht sie mit dem Hersteller und meldet Sicherheitslücken sofort.
- Keine wandernden Versionen.
- Sicherheitsmeldungen lösen sofort eine Benachrichtigung aus.
- Rückstände werden nach sieben Tagen gemeldet.
06 Ehrlich dokumentiertJede Phase hat ein Protokoll, das zwischen geplant, geprüft und getestet unterscheidet.
Wir schreiben auf, was wir tun und wie belastbar es ist. „Auf dem Zielsystem getestet“ heißt bei uns genau das, nicht „sollte funktionieren“.
- Grenzen stehen in der Dokumentation, nicht im Kleingedruckten.
- Messwerte haben Datum und Methode.
- Offene Punkte sind sichtbar.
Betrieb in Zahlen
Was wir messen.
7
getrennte Netzzonen: Verwaltung, Edge, Kerndienste, Produktion, Entwicklung, CI und Überwachung
Segmentierung6h
Takt des Abgleichs aller Komponenten mit Herstellermeldungen
Release-Wächter200+
automatisierte Prüfungen gegen Konfiguration und laufendes System
Nach jeder Änderung5min
höchstens, bis die Produktion einen freigegebenen Stand übernimmt
Ziehender AgentKontakt
Ihre Anwendung auf unsere Plattform?
Wir prüfen gemeinsam, was Ihre Anwendung braucht, und planen den Umzug mit Probelauf und Rückweg.