我在 AWS 上有一个 VPC,其中包含一个用于传出流量的 NAT 实例。此 NAT 实例与 AWS 提供的 EIP 相关联。VPC 上的某些 EC2 实例通过 HTTPS 访问外部服务。我正在寻找一种通过 HAPROXY 访问此服务的方法,但我无法让它工作。
该服务通过 HTTPS 访问,因此代理向服务发送 CONNECT 请求,服务以 404 响应。我猜测该服务未配置为接受此类请求。
是否有其他方法可以配置 HAPROXY 以使其正常工作?
我使用的配置:
global
daemon
maxconn 256
log 127.0.0.1:514 local0 debug
chroot /var/lib/haproxy
pidfile /var/run/haproxy.pid
defaults
mode tcp
option tcplog
log 127.0.0.1:514 local0 debug
frontend proxy_in
bind <LOCAL_IP>:8443
mode tcp
option tcplog
log 127.0.0.1:514 local0 debug
default_backend proxy_out
backend proxy_out
mode tcp
log 127.0.0.1:514 local0 debug
option log-health-checks
server server1 <REMOTE_HOSTNAME>:443 ssl check verify none
使用 HTTP 模式时,我可以看到以下内容:
Dec 6 11:01:07 localhost haproxy[23393]: <IP>:41729 [06/Dec/2020:11:00:17.107] proxy_in proxy_out/proxy_out 0/0/24/19/50045 404 3588 - - cD-- 1/1/0/0/0 0/0 "CONNECT <REMOTE_HOSTNAME>:443 HTTP/1.1"