ungleich-k8s/apps/haproxy/haproxy.cfg

64 lines
1.4 KiB
INI

global
log stdout format raw local0
# turn on stats unix socket
stats socket /var/lib/haproxy/stats
resolvers mydns
parse-resolv-conf
timeout retry 1s
hold valid 30s
hold nx 3s
hold other 3s
hold obsolete 0s
accepted_payload_size 8192
defaults
retries 3
log global
timeout http-request 10s
timeout queue 1m
timeout connect 10s
timeout client 1m
timeout server 1m
timeout http-keep-alive 10s
timeout check 10s
frontend f_http
bind ipv6@:80
mode http
http-request do-resolve(txn.myip,mydns,ipv6) hdr(Host),lower
# if DNS resolving did not work
# use_backend b_503 unless { var(txn.myip) -m found }
default_backend b_http
backend b_http
mode http
http-request deny unless { hdr(host) -i c2.k8s.ooo }
http-request set-dst var(txn.myip)
server http ipv6@*
# # HTTPs
frontend f_https
bind ipv6@:443
mode tcp
tcp-request inspect-delay 5s
tcp-request content accept if { req_ssl_hello_type 1 }
tcp-request deny unless { req_ssl_sni -i k8s.ooo }
tcp-request content do-resolve(txn.myip,mydns,ipv6) req_ssl_sni,lower
default_backend b_https
backend b_https
mode tcp
tcp-request content set-dst var(txn.myip)
server tcp_https ipv6@*
# tcp-request connection deny unless { hdr(host) -i c2.k8s.ooo }
# use_backend b_503 unless { var(txn.myip) -m found }