add HAProxy configuration
[ach-master.git] / src / configuration / Proxies / HAProxy / haproxy.cfg
1 global
2     ssl-default-bind-ciphers EDH+CAMELLIA:EDH+aRSA:EECDH+aRSA+AESGCM:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH:+CAMELLIA256:+AES256:+CAMELLIA128:+AES128:+SSLv3:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!DSS:!RC4:!SEED:!ECDSA:CAMELLIA256-SHA:AES256-SHA:CAMELLIA128-SHA:AES128-SHA
3     ssl-default-bind-options no-sslv3 #disable SSLv3
4     tune.ssl.default-dh-param 2048 #tune minimum DH to 2048
5     log 127.0.0.1    local0 notice
6     user haproxy
7     group haproxy
8     maxconn 2048
9 defaults
10     log     global
11     mode    http
12     option  httplog
13     option  dontlognull
14     option  nolinger
15     retries 3
16     option redispatch
17     timeout connect  5000
18     timeout client  10000
19     timeout server  10000
20
21 frontend public
22     bind *:80
23     bind *:443 ssl crt server.pem
24     mode http
25     default_backend backend
26                 
27 backend backend
28     mode http
29     server server 192.168.1.1:80 check
30     http-request set-header X-Forwarded-Port %[dst_port]
31     http-request add-header X-Forwarded-Proto https if { ssl_fc }
32     rspadd Strict-Transport-Security:\ max-age=15768000;\ includeSubDomains #enable HSTS header for this backend
33     rspadd X-XSS-Protection:\ 1;\ mode=block #enable XSS protection for this backend
34     balance roundrobin
35     option forwardfor
36     option httpchk HEAD / HTTP/1.1\r\nHost:localhost
37     timeout connect 10s
38     timeout server  1m