Applikations-Proxy
UnyPort kann ausgewählte interne Anwendungen über kontrollierte Reverse-Proxys unter /proxy/<name>/ ausliefern. Damit gelangen Operatoren aus demselben authentifizierten Portal in interne Werkzeuge, ohne jedes Werkzeug separat öffentlich zu exponieren.
Eine Anwendung deklarieren
Proxied Apps werden in settings/config.yaml deklariert:
apps:
- name: TTYd
host: ttyd
port: 7681
type: terminal
Zur Laufzeit stellt das Portal Metadaten über /api/apps bereit und mountet den Proxy unter:
/proxy/ttyd/
Proxy-Verhalten
Der Reverse-Proxy fuehrt eine kleine Menge Hardening und Umschreiben durch:
- Entfernen unzuverlaessiger Forwarding-Header
- Setzen von
X-Forwarded-For,X-Forwarded-ProtoundX-Forwarded-Prefix - Umschreiben von
Location-Headern, damit Redirects unter dem Mount-Praefix bleiben - Umschreiben von Cookie-Pfaden, damit Backend-Cookies am Proxy-Mount bleiben
- Rueckleitung nicht-JSON
401- und403-Antworten an die Portalwurzel
TTYd-spezifische Behandlung
Der Code lockert die CSP nur für den ttyd-Mount, damit Webterminal-Assets und Websocket-Flows korrekt funktionieren. Andere proxied Anwendungen behalten das standardmaessig gehärtete Verhalten.
Warum das wichtig ist
Diese Proxy-Schicht haelt UnyPort fokussiert:
- Operatoren erhalten einen einheitlichen authentifizierten Einstieg
- Interne Anwendungen brauchen kein eigenes öffentliches Expositionsmodell
- Das Produkt bleibt klein und kann trotzdem Bruecke zu terminalorientierten Tools sein
Die Funktion ist daher als kontrolliertes Gateway zu verstehen, nicht als allgemeiner App-Katalog.