登录站点

用户名

密码

haproxy ssl 配置方式简要说明

已有 1686 次阅读  2015-03-05 17:39
haproxy 代理 ssl 有两种方式

1、haproxy 本身提供ssl 证书,后面的web 服务器走正常的http 

2、haproxy 本身只提供代理,后面的web服务器https

第一种方式

需要编译haproxy 支持ssl,编译参数:    

make TARGET=linux26 USE_OPENSSL=1 ADDLIB=-lz
判断haproxy是否支持SSL
ldd haproxy | grep ssl
libssl.so.10 => /usr/lib64/libssl.so.10 (0x00007fb0485e5000)

生产环境下查看配置
# ldd /usr/local/haproxy/sbin/haproxy  
。。…。………
libssl.so.10 => /usr/lib64/libssl.so.10 (0x00000034b6200000)
...................

配置参数:

frontend https_frontend
  bind *:443 ssl crt /etc/ssl/certs/servername.pem
  mode http
  option httpclose
  option forwardfor
  reqadd X-Forwarded-Proto:\ https
  default_backend web_server

backend web_server
  mode http
  balance roundrobin
  cookie SERVERID insert indirect nocache
  server s1 192.168.250.47:80 check cookie s1
  server s2 192.168.250.49:80 check cookie s2
 注意:这里的pem 文件是下面两个文件合并而成:
  cat servername.crt servername.key |tee servername.pem
第二种方式配置

不需要重新编译支持ssl,简单方便。需要后面的web服务器配置好ssl 即可。

frontend https_frontend
  bind *:443
  mode tcp
  default_backend web_server

backend web_server
  mode tcp
  balance roundrobin
  stick-table type ip size 200k expire 30m
  stick on src
  server s1 192.168.250.47:443
  server s2 192.168.250.49:443
  
  注意,这种模式下mode 必须是tcp 模式

原文地址:http://my.oschina.net/u/142602/blog/305237?utm_source=tuicool

参考:

     http://virtuallyhyper.com/2013/05/configure-haproxy-to-load-balance-sites-with-ssl/

     http://www.rackspace.com/knowledge_center/article/setting-up-haproxy
分享 举报

发表评论 评论 (0 个评论)