Puncte:0

Obținerea unui CD pe conexiunea HAProxy TCP (Layer 4) pentru Windows RDS Gateway

drapel cn

Am o instanță Windows RDS la care utilizatorii se conectează prin internet, deși am plasat un HAProxy folosind un front-end/backend TCP:

frontend front_https_rds
        legați XXX.XXX.XXX.XXX:443
        modul tcp
        timeout client 6h
        jurnal global
        opțiunea tcplog
        opțiunea clitcpka
        default_backend backend_https_rds

backend backend_https_rds
        modul tcp
        server timeout 6h
        echilibru roundrobin
        jurnal global
        opțiunea tcplog
        opțiunea tcp-check
        server srv-rdgateway pri.vat.e.IP:443 verifica

Este important de reținut că folosesc RD Gateway prin HTTPS (RPC peste HTTP) și nu RDP 3389 standard.

Utilizatorii se plâng de deconectări frecvente. Văd CD (clientul se deconectează în faza de date) în coloana termination_state. Din jurnalele HAProxy:

23 noiembrie 18:14:24 srv-haproxy haproxy[215010]: XXX.XXX.XXX.XXX:55674 [23/Nov/2021:18:08:48.979] față_https_rds spate_https_rds/srv-rdgateway 1/0/435916/3 20/20/19/19/0 0/0
23 noiembrie 18:14:24 srv-haproxy haproxy[215010]: XXX.XXX.XXX.XXX:55678 [23/Nov/2021:18:08:49.370] față_https_rds spate_https_rds/srv-rdgateway 1/06/12552 SD 19/19/18/18/0 0/0
23 noiembrie 18:14:35 srv-haproxy haproxy[215010]: XXX.XXX.XXX.XXX:56448 [23/Nov/2021:18:14:35.135] față_https_rds spate_https_rds/srv-rdgateway 1/0/8 SD 20/20/19/19/0 0/0
23 noiembrie 18:14:35 srv-haproxy haproxy[215010]: XXX.XXX.XXX.XXX:56451 [23/Nov/2021:18:14:35.461] față_https_rds spate_https_rds/srv-rdgateway 1/07/8 SD 21/21/20/20/0 0/0
23 noiembrie 18:14:36 ​​srv-haproxy haproxy[215010]: XXX.XXX.XXX.XXX:56453 [23/Nov/2021:18:14:35.965] față_https_rds înapoi_https_rds/srv-rdgateway 1/07/89 21/21/20/20/0 0/0
23 noiembrie 18:16:13 srv-haproxy haproxy[215010]: XXX.XXX.XXX.XXX:56447 [23/Nov/2021:18:14:34.997] față_https_rds spate_https_rds/srv-rdgateway 1/0/431621 CD 14/14/13/13/0 0/0
23 noiembrie 18:16:13 srv-haproxy haproxy[215010]: XXX.XXX.XXX.XXX:56450 [23/Nov/2021:18:14:35.385] față_https_rds spate_https_rds/srv-rdgateway 1/0/12975 SD 13/13/12/12/0 0/0
23 noiembrie 18:16:23 srv-haproxy haproxy[215010]: XXX.XXX.XXX.XXX:56746 [23/Nov/2021:18:16:23.423] față_https_rds spate_https_rds/srv-rdgateway 1/0/86 14/14/13/13/0 0/0
23 noiembrie 18:16:23 srv-haproxy haproxy[215010]: XXX.XXX.XXX.XXX:56749 [23/Nov/2021:18:16:23.728] față_https_rds spate_https_rds/srv-rdgateway 1/0/8 SD 15/15/14/14/0 0/0
23 noiembrie 18:16:24 srv-haproxy haproxy[215010]: XXX.XXX.XXX.XXX:56751 [23/Nov/2021:18:16:24.232] față_https_rds spate_https_rds/srv-rdgateway 1/0/8 SD 15/15/14/14/0 0/0
23 noiembrie 18:16:57 srv-haproxy haproxy[215010]: XXX.XXX.XXX.XXX:56745 [23/Nov/2021:18:16:23.274] față_https_rds spate_https_rds/srv-rdgateway 1/0/23400204 14/14/13/13/0 0/0
23 noiembrie 18:16:57 srv-haproxy haproxy[215010]: XXX.XXX.XXX.XXX:56747 [23/Nov/2021:18:16:23.655] față_https_rds spate_https_rds/srv-rdgateway 1/0/12364 SD 13/13/12/12/0 0/0
23 noiembrie 18:17:07 srv-haproxy haproxy[215010]: XXX.XXX.XXX.XXX:56867 [23/Nov/2021:18:17:07.548] față_https_rds spate_https_rds/srv-rdgateway 1/07/8 SD 14/14/13/13/0 0/0
23 noiembrie 18:17:07 srv-haproxy haproxy[215010]: XXX.XXX.XXX.XXX:56870 [23/Nov/2021:18:17:07.872] față_https_rds spate_https_rds/srv-rdgateway 1/0/8 SD 15/15/14/14/0 0/0
23 noiembrie 18:17:08 srv-haproxy haproxy[215010]: XXX.XXX.XXX.XXX:56872 [23/Nov/2021:18:17:08.360] față_https_rds spate_https_rds/srv-rdgateway 1/0/8 SD 15/15/14/14/0 0/0

Presupun că ceva la client cauzează acest lucru, deși nu pot identifica nimic. Am adăugat Keepalive în interfață clientului fără nicio modificare.

Mă întreb dacă cineva s-a mai confruntat cu această problemă sau aș putea face ceva din perspectiva HAProxy pentru a depana mai multe?!

Configurația mea globală:

global
        log /dev/log local0
        log /dev/log local1 notificare
        chroot /var/lib/haproxy
        socket statistici /run/haproxy/admin.sock mod 660 nivel de administrare expose-fd ascultători
        statistici timeout 30s
        utilizator haproxy
        haproxy de grup
        demonul

        # Locații implicite ale materialelor SSL
        ca-base /etc/ssl/certs
        crt-base /etc/ssl/private

        # Cifruri implicite de utilizat pe prizele de ascultare compatibile SSL.
        # Pentru mai multe informații, consultați ciphers(1SSL). Aceasta lista este de la:
        # https://hynek.me/articles/hardening-your-web-servers-ssl-ciphers/
        # O listă alternativă cu directive suplimentare poate fi obținută de la
        # https://mozilla.github.io/server-side-tls/ssl-config-generator/?server=haproxy
        ssl-default-bind-ciphers ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:RSA+AESGCM:RSA+AES:!aNULL:!MD5:!DSS
        ssl-default-bind-options no-sslv3

implicite
        jurnal global
        modul http
        opțiunea httplog
        opțiunea dontlognull
        timeout connect 5000
        timeout client 10800000
        server timeout 10800000
        fişierul de erori 400 /etc/haproxy/errors/400.http
        fişierul de erori 403 /etc/haproxy/errors/403.http
        fişierul de erori 408 /etc/haproxy/errors/408.http
        fişierul de erori 500 /etc/haproxy/errors/500.http
        fişierul de erori 502 /etc/haproxy/errors/502.http
        fişierul de erori 503 /etc/haproxy/errors/503.http
        fişierul de erori 504 /etc/haproxy/errors/504.http

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.