在某些站点上绕过 Squid 的最佳方法?

Jas*_*lor 4 proxy squid

我们有一个 Squid 透明代理正在运行,这很棒,我敢说真棒。问题是当一些非常随机的站点似乎讨厌鱿鱼时。Cox.com 是其中之一。现在我们只是设置了一个 IPtables 规则来将请求转发到那个 IP,而不是将它发送到鱿鱼缓存。

拥有一个我们可以在 squid 中设置的“坏”站点的 ACL 真是太棒了,这样如果客户要求访问这些站点之一,它就可以让他们直接访问它,完全避免使用 squid 代理。那可能吗?或者 iptables 是最好的解决方案?

小智 5

我不认为always_direct配置指令是合适的选择——它只是指定不联系父级或对等缓存,不影响网站本身是否会被缓存。

查看 Squid 常见问题解答:如何配置 Squid 不缓存特定服务器?, 关于缓存指令和 ACL


cor*_*ump 4

如果你想完全避免鱿鱼,向透明代理 iptables 重定向规则添加例外是一种方法。

但是,您可以在squid 中为该always_direct指令创建一个acl。来自鱿鱼文档

acl local-servers dstdomain my.domain.net
always_direct allow local-servers
Run Code Online (Sandbox Code Playgroud)

它并非在所有情况下都有效,有时只需完全避免代理就可以了。

编辑:如果您使用像shorewall这样的东西,您可以创建列表,使重定向规则的例外更易于管理,但这可能太过分了。