Gibt es eine Möglichkeit, ein SSL-Upgrade für eingehende Verbindungen auf dem Ingress Load-Balancer zu erzwingen? Oder wenn das nicht möglich ist, kann ich Port 80 deaktivieren? Ich habe keine guten Dokumentationsseiten gefunden, die eine solche Option in der YAML-Datei beschreiben. Vielen Dank im Voraus!So erzwingen Sie SSL für Kubernetes Ingress auf GKE
Antwort
https://github.com/kubernetes/ingress-gce#frontend-https
Sie können HTTP-Block durch die Anmerkung kubernetes.io/ingress.allow-http: "false"
oder umleiten HTTP auf HTTPS durch einen benutzerdefinierten Backend angeben. Leider behandelt GCE die Umleitung oder das Neuschreiben auf der L7-Ebene noch nicht direkt für Sie.
Vielen Dank, auch für den Link! Wird eine geplante Funktion umgeleitet? –
Ist dies der Grund, warum, wenn ich 301 in meinem Nginx-HTTP-Server-Block zu HTTPS zurückgebe, führt dies zu einer 301-Schleife. –
Die Anmerkung hat sich geändert:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: test
annotations:
kubernetes.io/ingress.allow-http: "false"
spec:
...
Hier ist die Anmerkung Änderung PR: https://github.com/kubernetes/contrib/pull/1462/files
Wenn Sie nicht auf die GCLB Ingress-Controller gebunden werden Sie einen Blick auf die Nginx Ingress Controller haben könnte. Dieser Controller unterscheidet sich in mehrfacher Hinsicht von dem eingebauten Controller. In erster Linie müssen Sie eine selbst bereitstellen und verwalten. Aber wenn Sie dazu bereit sind, erhalten Sie den Vorteil, dass Sie nicht von der GCE LB (20 $/Monat) abhängig sind und Unterstützung für IPv6/Websockets erhalten.
Die documentation Zustände:
standardmäßig zu HTTPS der Controller Umleitungen (301), wenn TLS für das Eindringen aktiviert ist. Wenn Sie dieses Verhalten global deaktivieren möchten, können Sie
ssl-redirect: "false"
in der NGINX-Konfigurationszuordnung verwenden.
Die kürzlich veröffentlichte 0.9.0-beta.3 kommt mit einer zusätzlichen Anmerkung für diese Umleitung explizit erzwingen:
Force SSL-Umleitung der Anmerkung mit
ingress.kubernetes.io/force-ssl-redirect
- 1. So konfigurieren Sie Timeouts für Ingress-Anfragen auf GKE
- 2. Kubernetes Ingress-Controller für Wildcard-URL-Zuordnung
- 3. Fabric8 auf GKE über GoFabric8: keine Ingress oder Anmeldeinformationen?
- 4. Pod Umplanung Ereignisse in Kubernetes/GKE
- 5. Programmgesteuertes Ausführen von Kubernetes-Befehlen auf einem frischen GKE-Cluster
- 6. Erzwingen SSL-Verbindung
- 7. Bereitstellen von Service zu GKE/Kubernetes führt zu FailedSync Fehler
- 8. Kubernetes Load Balancer SSL Kündigung in Google Container-Engine?
- 9. Kube-Proxy neu starten in Kubernetes 1.2 (GKE)
- 10. So erzwingen Sie schwarze Rahmen für UIPopoverControllers
- 11. Erzwingen Sie SSL für bestimmte Routen in Rails 3.1
- 12. Erzwingen Sie SSL nur auf bestimmten Seiten mit .htacces
- 13. So aktivieren Sie SSL für SharePoint
- 14. So konfigurieren Sie SSL/HTTPS für Spring?
- 15. So deaktivieren Sie SSL auf asp.net MVC5?
- 16. Running Meteor App mit Nginx SSL-Proxy auf Kubernetes
- 17. Wie verwende ich Kubernetes DNS für Pods?
- 18. So entfernen Sie Fluentd-Elastisearch von Kubernetes
- 19. So erstellen Sie Kubernetes-Benutzer, die auf Namespaces beschränkt sind
- 20. Erzwingen von SSL in NodeJS/Bluemix
- 21. Erzwingen, dass Benutzer SSL für Hauptdomäne und Unterdomäne verwenden. WHMCS
- 22. Aktivieren Sie SSL für meinen WCF-Dienst
- 23. Erzwingen Sie SSL und WWW zusammen mit htaccess
- 24. DaemonSets auf Google Container Engine (Kubernetes)
- 25. So erzwingen Sie die Seitenüberprüfung bei Page_load
- 26. So richten Sie ein SSL-Zertifikat auf sinatra ein
- 27. So erzwingen Sie tiefen Schlaf auf Android-Handy zum Testen
- 28. So erzwingen Sie eine Reihenfolge der Zelle Auswertung auf Excel
- 29. Objective-C - So erzwingen Sie wenig Speicher auf iOS-Simulator
- 30. So vergleichen Sie SSL-Zertifikate mit AFNetworking
Was verstehen Sie unter „SSL für eingehendes Upgrade bedeuten Verbindungen ". Könnten Sie bitte etwas ausarbeiten? Könnten Sie bitte näher erläutern, was Sie zu tun versuchen? –
Ich möchte Verbindungen zu http Port 80 in Richtung https Port 443 umleiten, idealerweise am Kubernetes Ingress Load Balancer - wenn das überhaupt möglich ist. Wenn nicht, was wäre die beste Strategie - Load Balance sowohl 80 und 443, und setzen Sie ein Haproxy hinter dem LB, um den Forward zu tun? –