docker-compose.yml nötig sind.
Jede Proxy-Umgebung ist anders aufgebaut. Die Konfigurationsbeispiele auf dieser Seite verwenden nginx und zeigen die Anforderungen von VARIOS AI. Übertragen Sie sie sinngemäß auf Ihr Produkt, etwa Apache, HAProxy, F5 oder einen Webserver mit eigenem Proxy-Modul.
Aufbau
- Die Domain aus
PROJECT_DOMAINzeigt im DNS auf den Reverse Proxy, nicht auf den VARIOS-AI-Server. - Der Reverse Proxy stellt das Zertifikat aus, das die Nutzer sehen, und prüft bei Bedarf die Clientzertifikate.
- Traefik bleibt auf dem VARIOS-AI-Server unverändert im Einsatz und nimmt die Anfragen des Proxys entgegen.
- Auf dem VARIOS-AI-Server wird kein öffentlich gültiges Zertifikat benötigt. Let’s Encrypt wird abgeschaltet.
Anforderungen an den Reverse Proxy
X-Forwarded-*-Header werden von VARIOS AI ausgewertet; in der docker-compose.yml ist dafür FLOW_HTTP_TRUSTED_PROXIES: "*" bereits gesetzt. Wie diese Header durch Traefik gelangen, hängt von der gewählten Verbindung ab, siehe unten.
VARIOS-AI-Server anpassen
Wählen Sie, wie der Reverse Proxy Traefik erreicht. Wir empfehlen HTTPS auf Port 443: Die Strecke im Netz bleibt verschlüsselt, und es sind die wenigsten Änderungen nötig.- HTTPS auf Port 443 (empfohlen)
- HTTP auf Port 80
Der Proxy leitet an
https://<VARIOS-AI-Server>:443 weiter. Traefik setzt X-Forwarded-Proto: https selbst, weil die Verbindung per HTTPS ankommt.1
Let's Encrypt am Router abschalten
Entfernen Sie am Ohne eigenes Zertifikat liefert Traefik sein selbstsigniertes Standardzertifikat (
php-Service das Label mit dem Certificate Resolver. Alle anderen Labels bleiben unverändert:docker-compose.yml
TRAEFIK DEFAULT CERT) aus. Der Proxy muss dieses Zertifikat entweder ohne Prüfung akzeptieren oder Sie hinterlegen ein Zertifikat Ihrer internen CA, dem der Proxy vertraut, siehe Eigenes HTTPS-Zertifikat konfigurieren.2
Optional: Client-IP-Adressen übernehmen
Traefik verwirft Mehrere Adressen oder Netze trennen Sie mit Komma, etwa
X-Forwarded-For von unbekannten Absendern. Ohne weitere Einstellung erscheint deshalb in Protokollen die IP-Adresse des Proxys statt der des Nutzers. Damit Traefik die Header des Proxys übernimmt, ergänzen Sie im command-Block des traefik-Service die IP-Adresse des Proxys:docker-compose.yml
10.0.0.5,10.0.1.0/24.3
Änderungen anwenden
--certificatesresolvers.le.* aus dem command-Block des traefik-Service entfernen.
Beispielkonfiguration für nginx
Das Beispiel zeigt einen nginx als Reverse Proxy mit Clientzertifikats-Prüfung und Weiterleitung per HTTPS. Ersetzen Sie Domain, Zertifikatspfade und Serveradresse durch Ihre Werte./etc/nginx/conf.d/varios-ai.conf
proxy_ssl_verify off ist nur nötig, solange Traefik sein Standardzertifikat ausliefert. Haben Sie in Traefik ein Zertifikat Ihrer internen CA hinterlegt, setzen Sie stattdessen proxy_ssl_verify on und proxy_ssl_trusted_certificate auf diese CA.
Zugriffe ohne Clientzertifikat
Mit Clientzertifikats-Authentifizierung erreichen nur Geräte mit ausgerolltem Zertifikat VARIOS AI. Einige Zugriffe kommen jedoch nicht aus dem Browser eines Nutzers. Prüfen Sie, welche davon in Ihrer Installation genutzt werden:
Eine Ausnahme für einen einzelnen Pfad lässt sich in nginx mit
ssl_verify_client optional umsetzen. Die Prüfung erfolgt dann je location:
Prüfen
1
Aufruf über den Proxy
Öffnen Sie
https://<PROJECT_DOMAIN> auf einem Gerät mit Clientzertifikat und melden Sie sich an.Nach der Anmeldung landen Sie wieder unter
https://<PROJECT_DOMAIN>, nicht unter http:// oder einer internen Adresse.2
WebSocket
Stellen Sie im Chat eine Frage.
Die Antwort erscheint fortlaufend. In den Entwicklertools des Browsers zeigt der Tab Netzwerk für
wss://<PROJECT_DOMAIN>/ws den Status 101.3
Direkter Zugriff gesperrt
Rufen Sie von einem Arbeitsplatz
https://<VARIOS-AI-Server> direkt auf.Die Verbindung wird von der Firewall abgewiesen.
