我已经用ssl_bump配置了Squid,这样它就可以在中间进行HTTPS连接并缓存回复,如下所示:
http_port 3128 ssl-bump \
cert=/etc/squid/certs/squid-ca-cert-and-key.pem \
generate-host-certificates=on dynamic_cert_mem_cache_size=16MB
acl step1 at_step SslBump1
ssl_bump peek step1
ssl_bump bump all我希望Squid在尝试连接到上游服务器之前接受客户端的连接,并尝试从它的缓存中提供响应。
但是,它首先尝试连接到服务器,如果无法访问服务器,则返回503错误(例如,因为网络离线):
1635102093.658 13 172.17.0.1 NONE/200 0 CONNECT deb.nodesource.com:443 - HIER_NONE/- -
1635102093.673 0 172.17.0.1 NONE/503 4110 GET https://deb.nodesource.com/setup_12.x - HIER_NONE/- text/html当网络可用并且可以到达上游主机时,Squid将很高兴地从其内存缓存中提供服务:
1635102172.772 101 172.17.0.1 NONE/200 0 CONNECT deb.nodesource.com:443 - HIER_DIRECT/18.2.197.72 -
1635102172.792 1 172.17.0.1 TCP_MEM_HIT/200 14319 GET https://deb.nodesource.com/setup_12.x - HIER_NONE/- text/plain发布于 2021-10-24 19:56:52
使用client-first似乎有效:
acl step1 at_step SslBump1
ssl_bump client-first step1
ssl_bump bump all然而,这是一个长期反对的选项,它将无法干预每种类型的TLS连接。
https://unix.stackexchange.com/questions/674635
复制相似问题