Squid
HTTPS 代理中繼
在 Ubuntu 16.04 機器中,我使用 squid 3.5.12 設置了代理中繼配置,如下所示:
External_proxy <-> Internal_proxy <-> 主機
此時,從外部和內部代理我都可以訪問 http 和 https 網站,但從主機我只能訪問 http 網站。
我
squid.conf
在 internal_proxy 中的目前是:http_port 3128 logformat lmc %ts %la %>a %ul %<A %rm %ru %mt %>Hs %Ss "%{Referer}>h" "%{User-Agent}>h" %>st %<st %tr %<pt %<tt access_log syslog:local1.info access_log syslog:local0.info lmc icp_port 0 cache_peer <external_proxy_IP> parent 8080 0 proxy-only originserver acl SSL_ports port 443 acl Safe_ports port 80 acl Safe_ports port 443 acl local_subnet src 192.168.100.0/24 acl CONNECT method CONNECT http_access allow CONNECT local_subnet http_access allow local_subnet Safe_ports http_access allow local_subnet SSL_ports http_access deny all connect_timeout 510 minutes request_timeout 500 minutes cache_dir ufs /var/cache/squid 8192 16 256 shutdown_lifetime 2 seconds hierarchy_stoplist cgi-bin ? refresh_pattern -i (/cgi-bin/|\?) 0 0% 0 refresh_pattern . 0 20% 4320 ftp_epsv off via off never_direct allow all visible_hostname "internal_proxy_hostname"
當我嘗試連接到某個 https 站點時,我收到以下資訊:
wget https://google.com --2019-07-08 13:08:23-- https://google.com/ Connecting to internal_proxy:3128... connected. Proxy tunneling failed: Service UnavailableUnable to establish SSL connection.
在 internal_proxy 日誌中:
TAG_NONE/503 0 CONNECT google.com:443 - HIER_NONE/- - CONNECT google.com:443 - 503 TAG_NONE "-"
我試過這個程序:但結果是一樣的。
注意:我無權訪問 external_proxy 配置
更改 squid.conf 中的行後:
cache_peer <external_proxy_IP> parent 8080 0 proxy-only originserver
經過
cache_peer <external_proxy_IP> parent 8080 0
問題已解決。