TLS-Gate (native) — TLS-NativePHP_v1

TLS-Gate verwaltet je Gruppe SSL-Bestand, Katalog und Buchungen, SOAP- und NetBox-ZugĂ€nge — mit Anmeldung (Passwort + TOTP),
Rollen und einem Audit, das sich nicht Àndern lÀsst. Dieses Repo ist die native Server-Version: eine PHP-Anwendung, die auf
einer vorhandenen Node lÀuft, ohne Docker, ohne Mock, ohne SQLite.

Stand: Release-Kandidat RC1.0 · App-Version in VERSION · Ziel: Apache 2.4 + PHP-FPM 8.4 + MySQL 8.0 (Ubuntu 22.04
getestet; andere Distributionen wie Gentoo ĂŒber Variablen, nichts wird installiert).

Die Dokumente

fĂŒr wen
docs/HANDOUT_REVIEW_PHP_VS_RUST_RAUM_SCHLUESSEL.md Handout & Live-Review (#verbindung #schlĂŒssel): PHP im RZ vs. Rust im Terminal (Read-Only fĂŒr die Maschine im Raum) + Live-Beweis auf rmx01 (auth.mfa_enroll & zero01.test MAC-Wechsel)
docs/ASCII_PROZESSKETTE_WALD_CA.md fĂŒr alle KrĂŒmel & Crew (#oldschool #mcp): Komplette ASCII-Prozesskette (Wann, wo, welcher Key? RZ ↔ Strato ↔ Container-CA ↔ OZM Museum, Offline-Überleben, Rust-Build tlsgate-rs & Bugsy 🐞)
docs/AUDIT_2026_10_GEMINI.md Externes Architektur-, Security- & Code-Audit (18.10.2026): Befunde (AUD-01..07), eingespielter Hardening-Patch & 1:1 Rust-Migrationspfad
docs/HANDOUT.md die Crew: was TLS-Gate ist, Anmelden, Rollen, was RC1.0 heißt
docs/ADMIN.md wer eine Instanz aufsetzt, betreibt, prĂŒft oder wiederherstellt — OZM Admin Audit: SOT → UI → bash → cron, Sicherheit, Runbook
42_OZM.md · CKL.md Haltung, Epistemologische Hygiene & Crumbforest Kodex Lizenz
tests/README.md wer testet: MySQL-Server, Suiten

Die Kommentare im Code sind Teil der Doku: jede Datei sagt im Kopf, wofĂŒr sie da ist, welche Regeln sie erzwingt und wo diese getestet sind.

In drei Befehlen

MODE=prod SITE=gate.example.org ADMIN_EMAIL=admin@example.org ADMIN_GROUP=ozm deploy/node/bend.sh

biegt die App auf die vorhandene Umgebung (App-Baum, State, SchlĂŒssel, DB) und prĂŒft alles; Pool, vhost und cron legt es als
Vorlage ab. Der erste Lauf endet absichtlich rot, bis die Vorlagen eingesetzt sind — dann denselben Befehl wiederholen.

bin/tg-dash

zeigt den Zustand der Instanz und bedient sie per MenĂŒ; vor jeder Aktion steht der gleichwertige bin/tg-Befehl.

tests/run_all.sh

alle Suiten gegen einen MySQL-8-Server (siehe tests/README.md).

Aufbau

Pfad Inhalt
public/ einziges DocumentRoot: die Seiten (Rollen-Matrix: docs/ADMIN.md §4) und assets/
src/ Auth (Login, TOTP, CSRF), Security (Secrets, Guard, versiegelte ZugÀnge), Storage (Db, Migrator), Catalog, Orders (Bestand), Netbox, Ssl, Http, Modules, Audit, Export
templates/ HTML der Seiten, kein Inline-JS
bin/ tg-dash, tg, die PHP-CLIs, TLS-node-doktor.bash, TLS-app-scan.bash
database/ schema.mysql.sql (immer der neueste Stand), migrations/, Katalog-Basis, Beispielbestand
deploy/node/ bend.sh (biegen, Restore), Pool-Vorlage, Review-Dummy und -Gegenprobe, build.sh (nur Wegwerf-Testnodes)
tests/ Suiten gegen MySQL 8, identitaet/ (Prototyp „Pool ohne Passwort“)

Herkunft

Herausgelöst aus native_php/ von TLS-Gate-Mock-Pipeline (main 35451b0). Dort bleiben EntwĂŒrfe, Bash-Dashboards,
Docker-VM, Node-CA und Bestellschicht; Kommentare im Code verweisen darauf als TLS-Gate-Mock-Pipeline:docs/
.
Ungenutzte Tabellen aus dieser Herkunft stehen bewusst noch im Schema (docs/ADMIN.md §10).