HAProxy - SSL SNI不便

问题描述:

当我尝试配置SSL SNI时,发现haproxy 1.5存在一些不便。HAProxy - SSL SNI不便

有HAProxy的配置的一个片段:pastebin

我想客户端IP传递到后端。无论我如何配置reqadd/set-header X-Forwarded-For/Real-IP,我总是在X-Forwarded-For中获得一个haproxy IP地址。

有人试图通过HAProxy上SSL SSL SNI的真实IP ? :/

从这个配置,你似乎在做SNI嗅探,但所有的后端循环回HAProxy本身...这不是一个需要SNI嗅探的情况。也许我忽略了其他需要这个的东西。

它应该很明显,你为什么要获得代理的IP X-Forwarded-For - HAProxy正在谈论自己。通过代理的第一次传递是客户端连接,只要代理可以在第二次传递中确定,因为只有第二次传递说HTTP。它只能看到传入的TCP连接已经到达......自身。

该解决方案是为第一遍后端使用代理协议和第二遍前端传递原始客户端信息来解码它。

添加accept-proxybind线用于第二通前端,并添加send-proxyserver线在第一通后端。这样,在HAProxy与自己交谈的连接上,第一遍后端将发送代理协议前导码,第二遍前端将解码传入值并将其放入X-Forwarded-For