Puncte:0

Ajutor Haproxy pentru solicitările https pe porturi personalizate

drapel fr

Am dori să folosim haproxy ingress 1.7 pe kubernetes pentru a asculta pe portul 55560 pentru conexiunea https.

Ați putea ajuta, vă rog, în acest sens?

Aici este fișierul meu haproxy.cfg. Când încercați să accesați, obțineți curl: (35) OpenSSL SSL_connect: SSL_ERROR_SYSCALL în eroare de conectare.

Https pe 443 funcționează bine.

Salutari, Kalyan

# _version=5
# Tehnologii HAProxy
# https://www.haproxy.com/
# acest fișier nu este menit să fie schimbat direct
# este sub managementul controlerului de intrare haproxy

global 
  localpeer local
  maestru-muncitor
  pidfile /var/run/haproxy.pid
  socket statistici /var/run/haproxy-runtime-api.sock expose-fd nivel de ascultători admin
  timeout statistici 1m
  tune.ssl.default-dh-param 2048
  ssl-default-bind-options no-sslv3 no-tls-tickets no-tlsv10
  ssl-default-bind-ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AESDHE-SHA384:ECDHE-ECDSA-AES256-RSG -AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AESHADS128-AESAECHAES128-SHA256: -SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256-SHAES-DHE1 :DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!3DES :!MD5:!PSK
  log stdout format raw daemon
  server-state-fișier global
  server-state-base /var/state/haproxy/

implicite 
  jurnal global
  format de jurnal „%ci:%cp [%tr] %ft %b/%s %TR/%Tw/%Tc/%Tr/%Ta %ST %B %CC %CS %tsc %ac/%fc/ %bc/%sc/%rc %sq/%bq %hr %hs „%HM %[var(txn.base)] %HV”’
  reexpedierea opțiunii
  opțiunea dontlognull
  opțiunea http-keep-alive
  timeout http-request 5s
  timeout conectare 5s
  timeout client 50s
  timeout coada 5s
  server timeout 50s
  timeout tunel 1h
  timeout http-keep-alive 1m
  încărcare-server-starea-din-fișier global

colegii instanță locală 
  peer local 127.0.0.1:10000

sănătatea frontendz 
  modul http
  bind 0.0.0.0:1042 nume v4
  bind :::1042 nume v6 v4v6
  monitor-uri /healthz
  opțiunea dontlog-normal

frontend http 
  modul http
  bind 0.0.0.0:80 nume v4
  bind :::80 nume v6
  tcp-request connection expect-proxy layer4 dacă { src -f /etc/haproxy/maps/proxy-protocol-827c05ecc804eacf23a63899ca0ffcf6.map }
  http-request set-var(txn.base) bază
  http-request set-var(txn.path) cale
  http-request set-var(txn.host) req.hdr(Host),field(1,:),lower
  http-request set-var(txn.host_match) var(txn.host),map(/etc/haproxy/maps/host.map)
  http-request set-var(txn.host_match) var(txn.host),regsub(^[^.]*,,),map(/etc/haproxy/maps/host.map,'') if !{ var (txn.host_match) -m găsit }
  http-request set-var(txn.path_match) var(txn.host_match),concat(,txn.path,),map(/etc/haproxy/maps/path-exact.map)
  http-request set-var(txn.path_match) var(txn.host_match),concat(,txn.path,),map_beg(/etc/haproxy/maps/path-prefix.map) dacă !{ var(txn.path_match ) -m găsit }
  use_backend %[var(txn.path_match),field(1,.)]
  default_backend default-default-ingress-default-backend-port-1

frontend https 
  modul http
  bind 127.0.0.1:443 name v4 accept-proxy
  bind ::1:443 nume v6 v4v6 accept-proxy
  http-request set-var(txn.base) bază
  http-request set-var(txn.path) cale
  http-request set-var(txn.host) req.hdr(Host),field(1,:),lower
  http-request set-var(txn.host_match) var(txn.host),map(/etc/haproxy/maps/host.map)
  http-request set-var(txn.host_match) var(txn.host),regsub(^[^.]*,,),map(/etc/haproxy/maps/host.map,'') if !{ var (txn.host_match) -m găsit }
  http-request set-var(txn.path_match) var(txn.host_match),concat(,txn.path,),map(/etc/haproxy/maps/path-exact.map)
  http-request set-var(txn.path_match) var(txn.host_match),concat(,txn.path,),map_beg(/etc/haproxy/maps/path-prefix.map) dacă !{ var(txn.path_match ) -m găsit }
  http-request set-header X-Forwarded-Proto https
  use_backend %[var(txn.path_match),field(1,.)]
  default_backend default-default-ingress-default-backend-port-1

frontend ssl 
  modul tcp
  bind 0.0.0.0:443 nume v4
  bind :::443 nume v6 v4v6
  format de jurnal „%ci:%cp [%t] %ft %b/%s %Tw/%Tc/%Tt %B %ts %ac/%fc/%bc/%sc/%rc %sq/% bq %hr %hs haproxy.MAP_SNI: %[var(sess.sni)]'
  tcp-request conținut respinge dacă !{ req_ssl_hello_type 1 }
  tcp-request inspect-delay 50000
  tcp-request connection expect-proxy layer4 dacă { src -f /etc/haproxy/maps/proxy-protocol-827c05ecc804eacf23a63899ca0ffcf6.map }
  tcp-request content set-var(sess.sni) req_ssl_sni
  tcp-request content set-var(txn.sni_match) req_ssl_sni,map(/etc/haproxy/maps/sni.map)
  tcp-request content set-var(txn.sni_match) req_ssl_sni,regsub(^[^.]*,,),map(/etc/haproxy/maps/sni.map)
  use_backend %[var(txn.sni_match),field(1,.)]
  default_backend ssl

statistici frontend 
  modul http
  lega*:1024
  bind :::1024 nume v6
  statisticile permit
  statistici uri /
  statisticile reîmprospătează 10 secunde
  http-request set-var(txn.base) bază
  http-request use-service prometheus-exporter dacă { calea /metrics }

frontend tcp-55560 
  modul tcp
  bind 0.0.0.0:55560 nume v4
  bind :::55560 nume v6 v4v6
  opțiunea tcplog
  default_backend default-rapid-po-service-55560

backend default-ic-http-service-80 
  modul http
  echilibru roundrobin
  opțiune forwardfor
  default-server init-addr ultimul, libc, niciunul
  server SRV_1 xxxxxxxxxxxx.com:80 verificați greutatea 128

backend default-default-ingress-default-backend-port-1 
  modul http
  echilibru roundrobin
  opțiune forwardfor
  server SRV_1 10.119.58.166:8080 verificați greutatea 128
  server SRV_2 127.0.0.1:8080 dezactivat verificarea greutății 128

backend implicit-rapid-po-service-55560 
  modul tcp
  echilibru roundrobin
  default-server init-addr ultimul, libc, niciunul
  server SRV_1 xxxxxxx:55560 verificați greutatea 128

backend implicit-rapid-service-44448 
  modul tcp
  echilibru roundrobin
  default-server init-addr ultimul, libc, niciunul
  server SRV_1 xxxxxxxxxx:44448 verificați greutatea 128

backend default-sample-http-service-80 
  modul http
  echilibru roundrobin
  opțiune forwardfor
  default-server init-addr ultimul, libc, niciunul
  server SRV_1 xxxxxxxxxxxx:80 verificați greutatea 128

backend default-sample-https-service-443 
  modul tcp
  echilibru roundrobin
  default-server init-addr ultimul, libc, niciunul
  server SRV_1 xxxxxxxxxxxx:443 verificați greutatea 128

backend ssl 
  modul tcp
  server https 127.0.0.1:443 send-proxy-v2
drapel in
`Iată fișierul meu haproxy.cfg`, se pare că ai uitat asta.
drapel fr
Mulțumesc @GeraldSchneider, am adăugat, vă rog să mă ajutați în acest caz
drapel in
Ați configurat haproxy pentru a transmite traficul către backend fără terminarea SSL. Problema este în serviciul dvs. de backend, nu în haproxy.
drapel fr
@GeraldSchneider, Vă mulțumesc foarte mult pentru răspuns. Ați putea vă rog să sugerați cum să faceți rezilierea SSL.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.