Squid 身份驗證和串流傳輸

Squid 身份驗證和串流傳輸

我已經使用 Kerberos 驗證進行了魷魚設定。我還使用 squidguard 作為 URL 重定向器來阻止網路上常見的骯髒行為。有些網站我們允許某些用戶訪問,而有些則不允許。假設我沒有使用任何串流媒體,這一切都運作良好。

從我可以從魷魚日誌和wireshark追蹤中確定的情況來看,當發送初始串流請求時,一切都很好,經過身份驗證的使用者名稱與請求一起發送到squidguard。問題是,在後續流量中,使用者名稱不會發送到squidguard,導致它根據預設策略被封鎖。

我嘗試過使用魷魚內建的允許/拒絕功能,但它相對笨重,到目前為止,魷魚衛士非常簡單和快速。

問題來了:

  • 如何讓 Squid 在所有請求中傳遞使用者名稱? (有件事告訴我這不是最好的方法)
  • 即使未傳遞用戶名,如何讓squidguard 查看流量已通過特定用戶的身份驗證?
  • 有其他方法可以實現此目的嗎?

一些可能很重要的細節:

  • 我正在使用儲存在文字檔案中的使用者列表,供squidguard 進行比較。
  • 我正在對 Squid 使用完整的 kerberos 身份驗證。
  • CentOS 6.0
  • 魷魚3.1.4
  • 烏賊衛士1.3

編輯

為了澄清起見,我添加了以下魷魚片段來演示發生的情況:

wsXX.domain.local                       534   5.99      34M   3.04    1   69.93
  *.outsidedomain.com                   204  14.22       5M  20.66    0   92.14
 <error>                                137   0.00       0M   0.00    0  589.16

[email protected]@wsXX.domain.local    115   0.00       1M   0.00   70    0.16
 *.outsidedomain.com                     84   0.00       1M   0.00   73    0.17
 <error>                                 24   0.00       0M   0.00   21    0.00

* 編輯 *

當我進一步深入研究時,發現它尤其沒有針對 HTTP 請求的回覆進行身份驗證。事實上,如果我加入聲明

    http_reply_access deny !auth

它不會允許任何 https 流量,但會允許大多數 http 流量。我完全被難住了,它實際上看起來像是讓未經身份驗證的流量通過(今天將進行測試)[已測試,它將允許未經身份驗證的http 流量,但熱https],儘管我的魷魚.conf 中有以下幾行:

    http_access deny !auth
    http_access allow auth
    http_access deny all

* 編輯 * 我已經修復了未經身份驗證的 http,並且 httpsm 一切似乎都運作良好,除了串流媒體網站仍然:(

為了它的價值,我必須更改配置中的以下行

   http_access deny !Safe_ports 

   http_access deny !Safe_ports !auth

答案1

所以,我想通了。事實證明,我的 squid.conf 中還有一些其他 ACL 允許未經身份驗證的流量通過代理。由於這些規則在拒絕未經身份驗證的流量的規則之前受到影響,因此流量是透過未經身份驗證的方式發送的。

我希望這對於任何嘗試做類似事情的人來說都是一個很好的資源。

相關內容