Ssl

帶有可選 SSL 的 Squid 反向代理

  • March 2, 2010

我正在嘗試將 squid 設置為負載平衡反向代理,但我在使用 SSL 時遇到了一些麻煩。該站點的應用程序之一檢查站點是否通過 SSL 載入,如果是這種情況,則行為不同,因此我需要通過 SSL 代理 SSL 連接,並且在沒有它的情況下代理非 SSL 連接。

現在,squid 伺服器接受通過 HTTP 和 HTTPS 的連接,但它只通過 HTTP 與上游伺服器建立連接。

我的 squid 配置中有趣的部分如下所示:

http_port 80 vhost vport
https_port 443 vhost vport  cert=/etc/cert.pem key=/etc/cert.key
cache_peer 10.0.0.10 parent 80 0 originserver round-robin
cache_peer 10.0.0.11 parent 80 0 originserver round-robin

有沒有一種簡單的方法可以告訴它通過 SSL 代理上游的 SSL 連接,同時不理會其他人?

更新(實際上是從我的魷魚中嘗試過的……):

acl is_ssl port 443
https_port 443 cert=<yourcert> key=<yourkey> accel name=site_ssl defaultsite=<y\
our_external_site>
cache_peer <your_internal_ssl> parent 443 0 no-query originserver ssl sslflags=\
DONT_VERIFY_PEER name=site_ssl
cache_peer_access site_ssl allow is_ssl
cache_peer_access site_ssl deny !is_ssl

acl nonssl port 80
http_port 80 accel defaultsite=<your_external_site>  name=site_nonssl
cache_peer <your_internal_nonssl> parent 80 0 no-query name=site_nonssl origins\
erver
cache_peer_access site_nonssl allow nonssl
cache_peer_access site_nonssl deny !is_nonssl

原始答案如下:

你想要類似的東西

cache_peer 10.0.0.11 parent 443 0 no-query originserver ssl sslflags=DONT_VERIFY_PEER name=site_ssl
acl sites_server_3 dstdomain site_ssl
cache_peer_access site_ssl allow ssl_servers
http_access allow ssl_servers

引用自:https://serverfault.com/questions/118055