Squid 5代理伺服器穩定發布

經過三年的開發,Squid 5.1 代理伺服器的穩定版本已經發布,可以在生產系統上使用(5.0.x 版本處於測試版狀態)。 5.x分支獲得穩定狀態後,今後將僅修復漏洞和穩定性問題,並允許進行較小的最佳化。新功能的開發將在新的實驗分支6.0中進行。建議先前穩定的 4.x 分支的使用者計劃遷移到 5.x 分支。

Squid 5 的主要創新:

  • 用於與外部內容驗證系統整合的ICAP(互聯網內容適應協議)的實現增加了對資料附件機制(預告片)的支持,該機制允許您將帶有元資料的附加標頭附加到回應中,放置在訊息之後正文(例如,您可以發送校驗和以及有關已識別問題的詳細資訊)。
  • 重定向請求時,使用「Happy Eyeballs」演算法,該演算法立即使用接收的 IP 位址,而無需等待所有潛在可用的 IPv4 和 IPv6 目標位址被解析。現在不再使用「dns_v4_first」設定來確定使用 IPv4 還是 IPv6 位址族,而是考慮 DNS 回應的順序:如果在等待 IP 位址解析時先到達 DNS AAAA 回應,則會使用產生的 IPv6 位址。因此,現在可以使用「--disable-ipv6」選項在防火牆、DNS 或啟動層級設定首選位址系列。提議的變更使我們能夠加快 TCP 連線的設定時間,並減少 DNS 解析期間延遲對效能的影響。
  • 為了在「external_acl」指令中使用,已新增「ext_kerberos_sid_group_acl」處理程序,以便使用 Kerberos 在 Active Directory 中進行群組檢查進行驗證。若要查詢群組名稱,請使用 OpenLDAP 套件提供的 ldapsearch 實用程式。
  • 由於授權問題,對 Berkeley DB 格式的支援已被棄用。 Berkeley DB 5.x 分支已經多年沒有維護,並且仍然存在未修補的漏洞,並且由於 AGPLv3 的許可證更改而阻止了向新版本的過渡,其要求也適用於以以下形式使用 BerkeleyDB 的應用程式:庫- Squid 在GPLv2 授權下提供,AGPL 與GPLv2 不相容。該專案不再使用 Berkeley DB,而是轉而使用 TrivialDB DBMS,與 Berkeley DB 不同,TrivialDB DBMS 針對資料庫的同時並行存取進行了最佳化。 Berkeley DB 支援暫時保留,但「ext_session_acl」和「ext_time_quota_acl」處理程序現在建議使用「libtdb」儲存類型而不是「libdb」。
  • 新增了對RFC 8586 中定義的CDN-Loop HTTP 標頭的支持,該標頭允許您在使用內容交付網路時檢測循環(標頭提供保護,防止在CDN 之間重定向的過程中由於某種原因返回原始CDN,形成無限循環)。
  • SSL-Bump 機制允許您攔截加密的 HTTPS 會話的內容,並添加了對透過 cache_peer 中指定的其他代理伺服器重定向欺騙(重新加密)HTTPS 請求的支持,使用基於 HTTP CONNECT 方法的常規隧道(不支持通過HTTPS 傳輸,因為Squid 尚無法在TLS 內傳輸TLS)。 SSL-Bump 允許您在收到第一個攔截的 HTTPS 請求後與目標伺服器建立 TLS 連線並取得其憑證。之後,Squid 使用從伺服器收到的真實證書中的主機名稱並建立一個虛擬證書,在與客戶端互動時模仿所請求的伺服器,同時繼續使用與目標伺服器建立的 TLS 連線來接收資料(為了使替換不會導致客戶端瀏覽器中輸出警告,您需要將用於產生虛構憑證的憑證新增至根憑證儲存體)。
  • 新增了 mark_client_connection 和 mark_client_pack 指令,用於將 Netfilter 標記 (CONNMARK) 綁定到客戶端 TCP 連線或單一資料包。

緊隨其後,Squid 5.2 和 Squid 4.17 的版本發布,修復了以下漏洞:

  • CVE-2021-28116 - 處理特製的 WCCPv2 訊息時資訊外洩。此漏洞允許攻擊者破壞已知 WCCP 路由器的列表,並將流量從代理伺服器用戶端重定向到其主機。此問題僅出現在啟用 WCCPv2 支援的設定中以及可能欺騙路由器的 IP 位址時。
  • CVE-2021-41611 - TLS 憑證驗證中的問題允許使用不受信任的憑證進行存取。

來源: opennet.ru

添加評論