02ded6c26b
Browsers coalesce HTTP/2 connections across *.unkin.net hosts sharing the traefik-external IP. A request for a haproxy-fronted host (e.g. git.unkin.net) on a grafana connection skips SNI passthrough and hits Traefik with no HTTP router, returning 404. - replace the TLS passthrough listener with an HTTPS listener terminating the three LE wildcards - replace the haproxy TLSRoute with an HTTPRoute for the same hosts - add a BackendTLSPolicy re-encrypting to haproxy:443 Reviewed-on: #547 Co-authored-by: unkin-agent <unkin-agent@unkin.net> Co-committed-by: unkin-agent <unkin-agent@unkin.net>
40 lines
1.0 KiB
YAML
40 lines
1.0 KiB
YAML
---
|
|
# External (DMZ) front for the haproxy edge on the traefik-external LB VIP
|
|
# 198.18.199.0. Traefik terminates TLS so HTTP/2 connections coalesced from
|
|
# other *.unkin.net hosts still route by Host; the hop to haproxy is re-encrypted via
|
|
# BackendTLSPolicy. Routes carry the explicit hostname list.
|
|
apiVersion: gateway.networking.k8s.io/v1
|
|
kind: Gateway
|
|
metadata:
|
|
name: haproxy
|
|
namespace: haproxy
|
|
labels:
|
|
traefik.io/instance: external
|
|
spec:
|
|
gatewayClassName: traefik-external
|
|
listeners:
|
|
- name: http
|
|
port: 80
|
|
protocol: HTTP
|
|
allowedRoutes:
|
|
namespaces:
|
|
from: Same
|
|
- name: https
|
|
port: 443
|
|
protocol: HTTPS
|
|
tls:
|
|
mode: Terminate
|
|
certificateRefs:
|
|
- group: ""
|
|
kind: Secret
|
|
name: wildcard-unkin-net-tls
|
|
- group: ""
|
|
kind: Secret
|
|
name: wildcard-main-unkin-net-tls
|
|
- group: ""
|
|
kind: Secret
|
|
name: wildcard-ceph-unkin-net-tls
|
|
allowedRoutes:
|
|
namespaces:
|
|
from: Same
|