Squid 未正确阻止 SSL HTTPS

Squid 未正确阻止 SSL HTTPS

所以我的目标是只屏蔽某些 YouTube 频道。

如果我做:

acl block_youtube dstdomain .youtube.com
http_access deny block_youtube

它会阻止任何对 youtube 的访问。

如果我做:

acl block_youtube url_regex -i ^https://www.youtube.com/watch\?v=v2AC41dglnM
http_access deny block_youtube

尽管我在我的access_log中看到了这个特定的页面,但它并没有阻止这个特定的页面。

475862685.876      0 100.100.100.100 TAG_NONE/200 0 CONNECT www.youtube.com:443 - HIER_NONE/- -
1475862686.359    412 100.100.100.100 TCP_MISS/200 51182 GET https://www.youtube.com/watch\?v=v2AC41dglnM - HIER_DIRECT/216.58.192.238 application/json

有人知道如何解决这个问题吗?

答案1

由于您尝试阻止的 YouTube 是 HTTPS,因此您遇到了问题。代理不会解封装 HTTPS 来了解 URL 和内容,因此它能够断开连接。要解决您的问题,您必须查看 Squid 的 SSL Bump 解决方案。由于许可证问题,它默认不启用,但您可以轻松地重新编译包。此解决方案的问题是客户端必须知道代理中使用的认证机构,并且此机构是本地的并允许为所有 https 站点创建证书。因此您需要在所有 PC 上部署该机构。

http://wiki.squid-cache.org/Features/SslBump

答案2

你知道该如何屏蔽 YouTube 频道了吗?我正在研究类似的东西。关于你的正则表达式,你可以使用类似这样的网站https://regex101.com/根据字符串值测试你的正则表达式。

相关内容