Я использую HAProxy
для перенаправления всех запросов с 80-го порта на 443 и использую NodePort для входа на traefik-ingress-controller
(v1.6.6, внутри кластера Kubernetes).
Здесь HAProxy.conf
:
frontend http-frontend
bind *:80
reqadd X-Forwarded-Proto:\ http
default_backend http_app
frontend https-frontend
bind *:443 ssl crt /etc/ssl/certs/my-cert.pem
reqadd X-Forwarded-Proto:\ https
default_backend traefik_app
backend http_app
redirect scheme https if !{ ssl_fc }
backend traefik_app
server traefik localhost:30010 check
Каждое приложение, работающее в моем кластере Kubernetes, имеет Ingress.
Среди них у меня есть модуль Keycloak (v4.1.0, для аутентификации) с этим входом:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: keycloak
annotations:
kubernetes.io/ingress.class: traefik
spec:
rules:
- host: login.myapp.it
http:
paths:
- backend:
serviceName: keycloak
servicePort: 8080
Вот изображение:
Когда я подключаюсь к https://login.myapp.it/auth/admin/, меня перенаправляют на https://login.myapp.it:80/auth/admin/master/console/ (обратите внимание на порт 80), и я получил ошибку SSL_ERROR_RX_RECORD_TOO_LONG
.
У кого-то есть какие-то подсказки для этой проблемы перенаправления с клавиатурой через прокси?
Заранее спасибо.