Web Proxy mit SSL

Die Absicherung Ihrer Verbindung zu Ihrem GPU-Server ist für jeden Entwickler eine zentrale Überlegung. Es ist wichtig, dass Ihre Arbeit zugänglich bleibt, während gleichzeitig die Sicherheit gewahrt wird – besonders bei der Entwicklung des nächsten großen AI-Projekts! Bevor Sie fortfahren, lesen Sie bitte auch 🌍 HTTPS-Zugriff (Wie Sie auf Ihr Blib über SSL zugreifen) und 🛡️ Anpassbare Hardware-Firewall von Trooper.AI.

👮 Für optimale Sicherheit und Skalierbarkeit sollte dieser Endpunkt nicht direkt für öffentliche Benutzer zugänglich gemacht werden. Implementieren Sie einen dedizierten Webserver zur Verwaltung der Benutzerinteraktionen, der dann mit Ihrem GPU-Server kommuniziert. Diese Architektur entspricht bewährten Verfahren und Industriestandards.

WebProxy Flow Best Practise
Empfohlene Vorgehensweise für WebProxy-Flow

Einfache, sichere Freigabe eines internen Dienstes für das Internet

Diese Vorlage bietet eine einfache Möglichkeit für Clients, einen internen Dienst (HTTP oder WebSocket) über das Trooper.AI-Router-System ins öffentliche Internet zu exponieren. Sie erstellt automatisch einen sicheren HTTPS-Endpunkt mit einem kostenlosen SSL-Zertifikat und leitet den Datenverkehr an einen beliebigen internen Port auf der Maschine des Clients weiter.

Das Ziel ist Einfachheit: Installieren Sie einen kleinen Proxy, geben Sie zwei Ports an und erhalten Sie sofort eine sichere, extern erreichbare URL.

Der gesamte Datenverkehr vom SSL-Endpunkt des Webproxys zum öffentlichen Port Ihrer Maschine wird in unserem internen Netzwerk geleitet und umgeht das Internet vollständig. Dies ist ein bedeutender Sicherheitsvorteil von Trooper.AI.


Hauptmerkmale

1. Öffentlicher HTTPS-Endpunkt

Ihr interner Dienst wird unter einer *.secure.trooper.ai Subdomain, geroutet über die Trooper.AI-Infrastruktur mit automatischen SSL-Zertifikaten.

2. Volle WebSocket-Unterstützung

Die Vorlage leitet sowohl den Standard-HTTP-Traffic als auch WebSocket-Verbindungen ohne zusätzliche Konfiguration weiter.

3. Optionale Passwortsicherung

Wenn ein Benutzername und ein Passwort angegeben werden, wird der Endpunkt mit Basic Auth gesichert. Das Leerlassen beider Felder deaktiviert die Authentifizierung.

4. Saubere und minimale Einrichtung

Die Konfiguration generiert einen dedizierten Proxy-Endpunkt, lauscht an einem gewählten Port und leitet alles an Ihren internen Dienst weiter.


Funktionsweise

Eingaben

Example config
Beispielkonfiguration

Sie konfigurieren nur die Template-Einstellungen vor der Installation.

Der externe Port wird automatisch zugewiesen und neben dem Vorlagennamen angezeigt, genau wie bei anderen Vorlagen.

🚨 Verwenden Sie nicht Port 443 und stellen Sie kein selbstsigniertes Zertifikat auf Ihrem Port bereit!

Interner Ablauf

  1. Nginx wird installiert (inklusive htpasswd-Unterstützung).
  2. Wenn die Authentifizierung aktiviert ist, wird eine Passwortdatei erstellt.
  3. Eine Proxy-Konfiguration wird unter /etc/nginx/sites-available/trooperai-webproxy-<external_port>
  4. Die Konfiguration leitet den gesamten eingehenden Datenverkehr an http://127.0.0.1:<internal_port>.
  5. WebSocket-Upgrade-Header werden automatisch weitergeleitet.
  6. Nginx wird neu geladen und der Endpunkt wird aktiv.

Timeout-Klassen

Verkehrsart Wie es erkannt wird Proxy-Timeout
Reguläre HTTP-Anfrage/Antwort Alles, was unten nicht übereinstimmt 60 s (Standard)
Chat/Streaming (SSE / NDJSON) Pfad enthält /api/chat, /chat/completions, /api/generate, /generate, /stream, /events, or Accept: text/event-stream / application/x-ndjson 10 Min. (LANG)
Große Datei-Downloads Range Header, dateiähnlicher Pfad/Erweiterung Accept: application/octet-stream 30 Min. (HERUNTERLADEN)
WebSockets HTTP-Upgrade auf WS/WSS Keine Proxyleerlaufzeit

Der Proxy passt die Zeitüberschreitungen dynamisch auf der Antwort an (z. B. wenn Ihr Server 206 oder Content-Disposition: attachment sendet, wird dies auf die HERUNTERLADEN-Zeitlimit erhöht – selbst wenn die Anfrage anfänglich nicht als Download klassifiziert wurde).


Kostenloses SSL-Zertifikat inklusive

Sobald aktiv, erkennt der Trooper.AI-Router den freigegebenen Port, stellt ein kostenloses SSL-Zertifikat aus und veröffentlicht Ihren sicheren Endpunkt.


Beispielergebnis

Example Webproxy success
Erfolgreicher Webproxy

Bei einer von Trooper.AI zugewiesenen Domain wie:

Code
myapp123-husky-delta.secure.trooper.ai

und einen öffentlich verfügbaren Port innerhalb Ihres konfigurierten Bereichs (z.B., 12345), mit einem internen Dienst, der auf Port lauscht 8080,

der Verbindungsablauf wird wie folgt sein: 8080 -> 12345 -> https://myapp123-husky-delta.secure.trooper.ai.

Dies leitet den Datenverkehr vom öffentlichen HTTPS-Endpunkt sicher an Ihren internen Dienst weiter.


Fehlerbehebung

Wir haben Antworten auf häufig gestellte Fragen zur Webproxy-Funktion zusammengestellt. Bei individueller Unterstützung wenden Sie sich bitte an unser Support-Team: Kontakt zum Support.

Wo finde ich meine Domain?

Stellen Sie sicher, dass Ihr interner Dienst auf dem gewünschten Port ausgeführt wird, installieren Sie dann die Webproxy-Vorlage oder aktualisieren Sie sie. Die zugewiesene Domain und der SSL-Aktivierungsstatus (angezeigt durch ein Schlosssymbol) werden dann angezeigt.

Ist mein interner Dienst HTTP oder HTTPS?

Das ist eine berechtigte Frage. Intern läuft Ihr Dienst als Standard-HTTP-Dienst auf einem konfigurierbaren Port, wie z. B. 8080. Dieser Port verbleibt innerhalb Ihrer Serverinstanz. Der über diese Vorlage installierte Web-Proxy-Dienst übernimmt die SSL-Verschlüsselung, stellt automatisch ein SSL-Zertifikat bereit und verwaltet es für einen sicheren externen Zugriff. Im Wesentlichen stellt diese Vorlage eine sichere HTTPS-Verbindung zwischen Ihrem internen Port und dem öffentlichen Internet her.

Vorhandene Nginx-Konfigurationen

Diese Vorlage installiert und konfiguriert Nginx, um den internen Datenverkehr auf Ihrem GPU-Server weiterzuleiten. Es wird keine bestehende Konfiguration überschrieben, aber die direkte Verwaltung von Nginx auf Ihrem GPU-Server wird aufgrund potenzieller Komplexität im Allgemeinen nicht empfohlen. Überlegen Sie, ob eine direkte Nginx-Verwaltung für Ihren Workflow erforderlich ist.

Behandlung blockierter Anfragen und Schutz vor Brute-Force-Angriffen

Unser Secure SSL Proxy umfasst eine Schutzebene auf Infrastrukturlevel, um die Stabilität der Weiterleitungsebene zu gewährleisten und Ihren Dienst vor missbräuchlichem Traffic abzusichern. Er überwacht kontinuierlich die Verbindungsgesundheit sowie Verkehrsströme und drosselt temporär Quellen mit wiederholten Fehlversuchen. Damit kann der Proxy echte Ausfälle von regulären Betriebszuständen unterscheiden – Ihr Service sollte tatsächliche Probleme klar kommunizieren, etwa durch Ablehnung oder Schließen der Verbindung, oder durch Rückgabe eines Fehlercodes im Bereich 5xx, wenn er tatsächlich nicht verfügbar ist.

Authentifizierung auf Anwendungsebene (z. B. Login- oder API-Schlüsselprüfungen mit Rückgabe von 401/403) wird durch Ihren eigenen Dienst abgewickelt. Der Proxy greift hier nicht ein, sodass normale Authentifizierungsabläufe nie unterbrochen werden.

Fehlercodes (E-Codes)

Treffen Sie beim Aufruf Ihres Endpunkts auf eine Fehlermeldung, wird ein eindeutiger Fehlercode angezeigt (z. B. e-code: TP3) in der Überschrift. Bitte geben Sie diesen Code bei Kontaktaufnahme mit dem Support an – das hilft uns, die Ursache sofort einzugrenzen.

# Status Bedeutung Was Sie tun können
TP1 502 Allgemeiner Gateway-Fehler beim Kontaktieren Ihres Dienstes. Überprüfen Sie bitte, ob Ihr interner Dienst läuft, und laden Sie nach einigen Momenten neu.
TP2 403 Anfrage durch eine Firewall-Regel für Ihr Endpunkt blockiert. Überprüfen Sie Ihre Firewall-/Allowlist-Einstellungen für die Quell-IP und den Port.
TP3 502 Ihr interner Dienst war nicht erreichbar. Stellen Sie sicher, dass der Dienst auf dem konfigurierten internen Port hört.
TP4 503 Der Zugriff auf Ihren Dienst wurde nach wiederholten Fehlern vorübergehend gesperrt. Warten Sie einen kurzen Moment, dann aktualisieren Sie bitte die Seite. Vermeiden Sie automatische Wiederholungsversuche auf der Client-Seite.
TP5 502 Die Verbindung zu Ihrem Service wurde abgelehnt, nicht gefunden oder ist timeout. Stellen Sie sicher, dass der Dienst aktiv ist, erreichbar ist und auf dem richtigen Port antwortet.

💡 Vermeiden Sie aggressive automatische Wiederholungsversuche bei Anzeige einer Fehlermeldung. Wiederholt fehlgeschlagene Anfragen können zu einer temporären Sperre (TP4) führen.