可以搜索、过滤和阻止网站的 VPN

网络工程 虚拟专用网 http代理
2022-02-18 01:10:06

我想阻止 MacBook 和 iPhone 上的大量网站(如数千到数百万),我最初的解决方案是使用 /etc/hosts 文件来阻止 MacBook 中的网站并使用移动设备管理来过滤网站,但它会减慢浏览速度随着被列入黑名单的网站数量的增加。

所以我想到了一个可以使用 VPN 的替代方案,我连接到 VPN,它将搜索(使用二进制搜索)并阻止列入黑名单的网站。我在实现上搜索了很多,但没有运气。这里的任何人都知道我该如何实现?



谢谢

1个回答

您好,欢迎来到网络工程。

这就是 Web 过滤代理服务器(透明或显式)的用途。因此,它们在这里几乎是题外话。资源推荐也是题外话。

然而,有时,此类代理(尤其是其“透明”种类)嵌入在“下一代防火墙”产品系列、硬件盒或某些供应商提供的虚拟设备上运行的软件中。

它们的作用是:这些盒子伪造初始 (TCP) 会话设置,将服务器模拟给客户端,然后等待客户端发出应用层请求,通常是 HTTP GET 或 SSL/TLS 协商的开始用于 HTTPS。同时,在他们的“外部界面”上,他们冒充客户端并开始与互联网上的“真实”服务器对话。然后仔细检查这个初始流量。

他们查看来自 HTTP 请求的标头(例如 HTTP Host 标头或 GET 请求)或检查 SSL/TLS 对话框(例如来自客户端的 ServerNameIndication 或来自服务器提供的证书的 CN 或 SAN)。然后,他们将这些信息与他们的过滤机制(例如本地数据库,或在给定供应商的数据库中的在线查找)进行匹配,并相应地处理或阻止请求。

更进一步,这些盒子不仅可以查看 HTTP 或 SSL/TLS 的尚未加密的部分,而且有时,它们甚至可以临时生成 SSL/TLS 证书(使用自己的内部 CA)并呈现它给客户。

如果客户端(通过配置或欺骗)碰巧信任由“ourwebfilterproxy.company.com”签名的“my.bank.com”证书,则 SSL/TLS 会话建立,客户端发出其 http 请求,并且webfiltering 框可以查看加密的内容。是的,这就是其他人所说的中间人攻击。

在这种情况下,VPN(哪种类型?MPLS L3-VPN?多点 L2 VPN?远程访问 VPN?站点到站点 VPN?)只是让感兴趣的流量流过这样一个“下一个”的众多选项之一。代防火墙”,如果该盒子或虚拟机未托管在您的场所。

从远处看,您的主要过滤标准可能是 URL 中的网站域名。因此,您可能需要考虑从这方面解决问题:有一些方法可以通过执行DNS过滤、提供限制性 DNS 服务和阻止客户端系统使用替代 DNS 服务器来完成此类“Web”过滤的大部分子集 - ——但现在我们肯定跑题了。