【发布时间】:2010-10-22 04:28:38
【问题描述】:
我需要一个反向代理,通过一个 IP/端口来支持 Lablz Web 服务器和 SSL VPN Adito(SSL Explorer fork)。使用 Nginx 无法实现这一点。无法将 Adito 用作通用反向 HTTP 代理。
如果 HAProxy 无法感知 HTTP 流量,它是否可以回退为 TCP 代理? 换句话说,如果它的第 7 层检查确定这不是 HTTP 流量,它是否可以回退到第 4 层?
这是我的设置
- 具有一个公共 IP(弹性 IP)的 EC2 机器。
- 只有一个端口是开放的 - 443。
- Stunnel 位于 443 并将流量传递给 HAProxy(我不喜欢使用 Stunnel,但 HAProxy 还没有完全支持 SSL,这与 Nginx 不同)。
- HAProxy 必须配置为将一些 HTTP 流量传递到一台服务器(位于 SVN 服务器前面的 Apache 服务器),并将其余 HTTP 流量传递到我们的 Lablz Web/App 服务器。
- 所有非 HTTP 流量都必须转发到 Adito VPN。
- 此流量为:
- VNC、NX、SMB
- ...以及 Adito 支持的所有其他协议
- 此流量为:
我不能依赖源 IP 地址或端口将流量分成 HTTP 和非 HTTP。
那么,这样的配置可以在 HAProxy 中完成吗?可以为此使用任何其他反向代理吗?如果我对 HAProxy 的想法不正确,请告诉我,并且可以使用替代方法。
顺便说一句,Adito SSL VPN 非常棒,如果此设置有效,我们将能够为 Lablz 开发人员提供出色的一键式单次登录安全 VNC-over-HTTPS 访问权限,以访问他们在云中的盒子。
没有解决方案,但通过 Adito - 请证明我错了。但请不要说 VNC over SSH 更好。是的,VNC-over-SSH 更快、更安全,但也更难(对于我们的目标用户群)设置并假定用户位于允许端口 22 上的出站流量的防火墙后面(并非总是如此)。
此外,Adito 不仅仅是远程访问网关 - 它是一个成熟的浏览器内 VPN、一个软件分发平台等等。我与 Adito 的人没有任何关系 - 请参阅我的 Adito post on our Lablz blog。
【问题讨论】:
标签: ssl amazon-ec2 nginx vpn haproxy