相关疑难解决方法(0)

haproxy + stunnel + 保持活动状态?

我想在 haproxy 1.4 前面放置 stunnel 来处理 HTTPS 流量。我还需要 stunnel 添加X-Forwarded-For标头。这可以通过 haproxy 网站上的“stunnel-4.xx-xforwarded-for.diff”补丁来实现。

但是,描述中提到:

请注意,此补丁不适用于 keep-alive,...

我的问题是:这对我来说在实践中意味着什么?我不确定,

  1. 如果这是关于保持活动之间的
    • 客户端和 stunnel
    • stunnel 和 haproxy
    • 或haproxy 和后端服务器?
  2. 这对性能意味着什么:如果我在网页上有 100 个图标,浏览器是否必须协商 100 个完整的 SSL 连接,或者它可以重新使用 SSL 连接,只是创建新的 TCP 连接?

ssl https tcp haproxy stunnel

10
推荐指数
2
解决办法
8713
查看次数

我可以使用 HAProxy 的新“捕获”功能将远程地址保存在 TCP 前端,并将其用作 HTTP 后端中的“X-Forwarded-For”标头吗?

使用 HAProxy 1.6 和一个聪明的 hack,我现在有一个 HAProxy tcp 模式前端,它检测浏览器是否支持 SNI,并基于此,路由到一个强加密的 SSL 终止后端,或更弱的一个。这确保了 SSL 实验室的 A+ 等级,同时仍然允许除 IE6 之外的所有浏览器使用 SSL。

这是我的配置。它有一些模板变量应该是不言自明的,但不在与我的问题相关的领域:

frontend https_incoming
 bind 0.0.0.0:443
 mode tcp
 option tcplog
 tcp-request inspect-delay 5s
 tcp-request content accept if { req.ssl_hello_type 1 }
 use_backend https_strong if { req.ssl_sni -m end .transloadit.com }
 default_backend https_weak

backend https_strong
 mode tcp
 option tcplog
 server https_strong 127.0.0.1:1665

frontend https_strong
 bind 127.0.0.1:1665 ssl crt ${DM_ROOT_DIR}/envs/ssl/haproxy-dh2048.pem no-sslv3 no-tls-tickets ciphers ${strongCiphers}
 mode http
 option httplog
 option httpclose
 option forwardfor if-none …
Run Code Online (Sandbox Code Playgroud)

ssl haproxy packet-capture

6
推荐指数
1
解决办法
4057
查看次数

标签 统计

haproxy ×2

ssl ×2

https ×1

packet-capture ×1

stunnel ×1

tcp ×1