In my configuration, I use Haproxy mainly for reverse proxy.
I installed Squid Proxy in my private lan and I can access it from external with port 3128. But I use the basic authentification ncsa and the headers is not crypted so my login is vulnerable. I want to forward my proxy by haproxy.
[Client]->proxy.example.net->[haproxy:443 ssl]->[squid:3128]
I added in my haproxy configuration a new backend:
frontend www-https
bind *:443 ssl crt /etc/haproxy/ssl/fullchain.pem no-sslv3
log global
mode http
use_backend proxy-squid if { ssl_fc_sni proxy.example.com }
use_backend default if { ssl_fc_sni example.com }
default_backend default
backend default
option forwardfor
server d8-apps 127.0.0.1:8000 #nginx
backend proxy-squid
mode http
option forwardfor
option http-server-close
server d8-apps 127.0.0.1:3128
My default backend and other works fine but not proxy-squid. I realized a "tcpdump -nX -vv -i lo port 3128" during my request and nothing.. and with the port 443, I see many packets with incorrect checksum.
In Wireshark, I do not see the ssl handshake like when I accessing example.com (default backend). I just see the 3-way handshake tcp followed by FIN, ACK.
I think Haproxy do not understand my real request when I set the proxy in my browser config. So, is it possible to realize that with a specific configuration?
Thanks!