Proxy WWW z SSL

Zabezpieczenie połączenia z serwerem GPU jest kluczowe dla każdego programisty. Zapewnienie dostępności Twojej pracy przy jednoczesnym zachowaniu bezpieczeństwa jest ważne podczas tworzenia kolejnej wielkiej rzeczy w dziedzinie sztucznej inteligencji!

👮 Dla zapewnienia optymalnego bezpieczeństwa i skalowalności, nie udostępniaj tego punktu końcowego bezpośrednio publicznym użytkownikom. Zaimplementuj dedykowany serwer WWW do zarządzania interakcjami z użytkownikami, który następnie będzie komunikował się z Twoim serwerem GPU. Ta architektura jest zgodna z najlepszymi praktykami i standardami branżowymi.

Prosty, Bezpieczny Dostęp do Wewnętrznej Usługi przez Internet

Ten szablon zapewnia prosty sposób dla klientów na udostępnienie wewnętrznej usługi (HTTP lub WebSocket) w Internecie za pomocą systemu routerów Trooper.AI. Automatycznie tworzy bezpieczny punkt końcowy HTTPS z bezpłatnym certyfikatem SSL, przekazując ruch do dowolnego portu wewnętrznego maszyny klienta.

Celem jest prostota: zainstaluj mały proxy, określ dwa porty i natychmiast uzyskaj bezpieczny, zewnętrznie osiągalny adres URL.

Cały ruch z punktu końcowego SSL Webproxy do publicznego portu twojej maszyny jest kierowany w naszej sieci wewnętrznej, całkowicie omijając Internet. Jest to znacząca zaleta bezpieczeństwa Trooper.AI.


Główne cechy

1. Publiczny punkt końcowy HTTPS

Twoja wewnętrzna usługa staje się dostępna pod adresem *.secure.trooper.ai poddomena, kierowana przez infrastrukturę Trooper.AI z automatycznymi certyfikatami SSL.

2. Pełne wsparcie dla WebSocket

Szablon przekazuje zarówno standardowy ruch HTTP, jak i połączenia WebSocket bez dodatkowej konfiguracji.

3. Opcjonalne zabezpieczenie hasłem

Jeśli podane zostaną nazwa użytkownika i hasło, punkt końcowy zostanie zabezpieczony za pomocą Basic Auth. Pozostawienie obu pól pustych wyłącza uwierzytelnianie.

4. Czysta i minimalna konfiguracja

Konfiguracja generuje dedykowany punkt końcowy proxy, nasłuchuje na wybranym porcie i przekazuje wszystko do Twojej wewnętrznej usługi.


Jak to działa

Dane wejściowe

Example config
Przykładowa konfiguracja

Ustawiasz tylko konfigurację szablonu przed instalacją.

Zewnętrzny port zostanie przypisany automatycznie i wyświetlony obok nazwy szablonu, tak jak w przypadku innych szablonów.

⚠️ Nie używaj portu 443 i nie podawaj certyfikatu samopodpisanego na swoim porcie!

Przepływ wewnętrzny

  1. Zainstalowano Nginx (wraz z obsługą htpasswd).
  2. W przypadku włączenia uwierzytelniania, tworzony jest plik hasła.
  3. Konfiguracja proxy jest umieszczona pod /etc/nginx/sites-available/trooperai-webproxy-<external_port>
  4. Konfiguracja przekierowuje cały ruch przychodzący do http://127.0.0.1:<internal_port>.
  5. Nagłówki aktualizacji WebSocket są przekazywane automatycznie.
  6. Nginx zostaje przeładowany, a punkt końcowy staje się aktywny.

Klasy czasowe

Typ ruchu Jak jest wykrywane Limit czasu połączenia proxy
Standardowa żądanie/odpowiedź HTTP Wszystko, czego nie udało się dopasować 60s (DOMYŚLNIE)
Czat/Strumieniowanie (SSE / NDJSON) Ścieżka zawiera /api/chat, /chat/completions, /api/generate, /generate, /stream, /events, or Accept: text/event-stream / application/x-ndjson 10 min (DŁUGI)
Pobieranie dużych plików Range nagłówek, ścieżka/rozszerzenie pliku Accept: application/octet-stream 30 min (POBIERANIE)
WebSocket Uaktualnienie HTTP do WS/WSS Brak limitu czasu bezczynności proxy

Proxy również dynamicznie dostosowuje limity czasowe na podstawie odpowiedź (np. jeśli twój serwer wysyła 206 or Content-Disposition: attachment, zwiększa się do POBIERANIE nawet jeśli żądanie nie zostało początkowo zaklasyfikowane jako pobieranie).


Darmowy certyfikat SSL w zestawie

Po aktywacji router Trooper.AI wykrywa otwarty port, wystawia darmowy certyfikat SSL i publikuje Twój bezpieczny punkt końcowy.


Przykładowy wynik

Example Webproxy success
Pomyślne uruchomienie Webproxy

Przyjmując domenę przypisaną przez Trooper.AI, taką jak:

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

i publicznie dostępny port w skonfigurowanym zakresie (np. 12345), z usługą nasłuchującą na porcie 8080,

Przepływ połączenia będzie następujący: 8080 -> 12345 -> https://myapp123-husky-delta.secure.trooper.ai.

To bezpiecznie przekierowuje ruch z publicznego punktu końcowego HTTPS do Twojej wewnętrznej usługi.


Rozwiązywanie problemów

Zebraliśmy odpowiedzi na często zadawane pytania dotyczące funkcji webproxy. W razie indywidualnej pomocy, prosimy o kontakt z naszym zespołem wsparcia: Kontakty z wsparciem.

Gdzie znaleźć moją domenę?

Upewnij się, że Twoja wewnętrzna usługa działa na żądanym porcie, a następnie zainstaluj lub zaktualizuj szablon webproxy. Przypisana domena i status aktywacji SSL (wskazany ikoną kłódki) zostaną wtedy wyświetlone.

Czy moja usługa wewnętrzna działa w protokole HTTP czy HTTPS?

To jest zasadne pytanie. Wewnętrznie, Twoja usługa działa jako standardowa usługa HTTP na konfigurowalnym porcie, takim jak 8080. Ten port pozostaje wewnętrzny dla Twojej instancji serwera. Usługa proxy internetowego zainstalowana za pomocą tego szablonu obsługuje szyfrowanie SSL, automatycznie udostępniając i zarządzając certyfikatem SSL w celu zapewnienia bezpiecznego dostępu z zewnątrz. W zasadzie ten szablon ustanawia bezpieczne połączenie HTTPS między Twoim wewnętrznym portem a publicznym Internetem.

Istniejące konfiguracje Nginx

Ten szablon instaluje i konfiguruje Nginx, aby przekierowywał ruch wewnętrzny na Twoim serwerze GPU. Nie zastąpi on istniejących konfiguracji, ale bezpośrednie zarządzanie Nginx na serwerze GPU generalnie nie jest zalecane ze względu na potencjalną złożoność. Rozważ, czy bezpośrednie zarządzanie Nginx jest niezbędne w Twoim przepływie pracy.