2017-10-10 12 views
0

Mon cas d'utilisation est d'utiliser HAProxy comme terminaison SSL sur Parse Server & Parse LiveQuery. Je suis bloqué sur haproxy config car il ne peut pas se connecter correctement à websocket, et cela ne fonctionne que si vous vous connectez à local (pas de terminaison SSL). Testé sur iOS (réagir à l'application native).HAProxy bloqué sur SSL Websocket (parse livequery)

Voici ma config haproxy

global 
    maxconn  50000 
    log   127.0.0.1 local0 
    user  haproxy 
    chroot  /usr/share/haproxy 
    pidfile  /run/haproxy.pid 
    tune.ssl.default-dh-param 2048 
    ssl-default-bind-ciphers ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS 
    ssl-default-bind-options no-sslv3 
    daemon 

defaults 
    log global 
    retries 3 
    mode http 
    stats enable 
    stats uri /stats 
    stats realm Haproxy\ Statistics 
    stats auth xx:xx 
    option forwardfor 
    option http-server-close 
    option httplog 
    option dontlognull 

frontend xxx_web 
    bind *:443 ssl crt /etc/haproxy/certs/xxx.com.pem 
    acl host_api_xxx hdr(host) -i api.xxx.com 
    acl is_websocket hdr(Upgrade) -i websocket 

    reqadd X-Forwarded-Port:\ 443 
    reqadd X-Forwarded-Proto:\ https 
    reqadd X-Forwarded-Scheme:\ https 
    redirect scheme https if !{ ssl_fc } 

    use_backend ws_xxx if is_websocket 
    use_backend api_xxx if host_api_xxx 

backend ws_xxx 
    server ws_xxx 127.0.0.1:7777 check 

backend api_xxx 
    balance roundrobin 
    reqadd X-Forwarded-Port:\ 443 
    reqadd X-Forwarded-Proto:\ https 
    reqadd X-Forwarded-Scheme:\ https 
    server api_xxx 127.0.0.1:7777 check # ssl verify none 

Répondre

0

Modification du mode en mode "tcp" devrait aider.