首页 > 解决方案 > 使用 SSL 终止将 h2c 流量发送到后端的 HAProxy 示例

问题描述

我希望能得到一些帮助,让我的 HA-Proxy 实例设置为接受 h2 或 http/1.1 流量并使用http模式执行 SSL 终止。我尝试了以下设置:

frontend local_fe
    mode http
    option http-use-htx
    bind *:8080 proto h2
    default_backend local_be

backend local_be
    mode http
    option http-use-htx
    server localhost localhost:9090 proto h2

但是,使用 proto h2 仍然使用 https 发送数据包(正如我的后端所报告的那样)。对我应该在配置中更改的内容有什么建议吗?

标签: reverse-proxyhaproxyhttp2

解决方案


因为您在 HTTP 上设置前端和后端,所以 TCP 数据包将按原样转发,并且不会执行终止。

将前端设置为 HTTPS / SSL,并保持后端不变。

frontend www-https
   bind *:443 ssl crt /etc/ssl/private/example.com.pem proto h2
   default_backend local_be

此配置将绑定到 SSL 端口 443,使用example.com.pem密钥/证书执行 SSL 终止,然后将未加密的连接转发到您的后端。


推荐阅读