我有使用Kerberos身份validation的鱿鱼设置。 我也使用squidguard作为URLredirect来阻止网页的通常的尴尬。 有一些网站,虽然我们允许某些用户,而其他人不。 假设我没有使用任何stream媒体,这一切运作良好。
从我可以从鱿鱼日志和wireshark跟踪我已经确定,当最初的stream请求发送,一切都很好,authentication用户名与请求发送到鱿鱼。 问题是,在后续stream量上,用户名不会发送到squidguard,导致它根据默认策略被阻止。
我试过使用鱿鱼内置的允许/拒绝的东西,但它相对笨重,到目前为止squidguard已经相当容易和快速。
问题在于:
一些细节可能是重要的:
编辑
澄清我已经添加了以下calamaris片段来演示发生了什么:
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请求的答复进行authentication。 事实上,如果我把状态网
http_reply_access deny !auth
它不会允许任何httpsstream量,但会允许大多数httpstream量。 我完全难住,它实际上看起来就像它让未经authentication的stream量通过(今天将testing)[testing,它将允许未经身份validation的HTTPstream量,但热HTT],虽然我在我的squid.conf中有以下几行:
http_access deny !auth http_access allow auth http_access deny all
*编辑*我已经修复了未经authentication的http,并且httpsm一切似乎都运行良好,除了stream式网站仍:(
为什么这是值得我不得不改变configuration中的以下行
http_access deny !Safe_ports
至
http_access deny !Safe_ports !auth
所以,我明白了这一点。 事实certificate,在我的squid.conf中有一些其他的ACL允许通过代理的非authenticationstream量。 由于这些规则在规则之前被击中以拒绝未经authentication的stream量,所以stream量正在通过未经authentication的方式发送。
我希望这可以作为一个很好的资源给那些想要做类似事情的人。