在主 pfSense 防火墙上运行 SquidProxy 的安全隐患

在主 pfSense 防火墙上运行 SquidProxy 的安全隐患

我想讨论一下在与主防火墙相同的 pfSense 盒上运行 SquidProxy 服务器的利弊。

今天,我有一个 pfSense 负责所有防火墙工作,例如路由和过滤(我不使用 NAT),因此 pfSense 仅过滤公共 IPv4 地址。出于安全原因,本地 DNS 被禁用,DHCPd 在内部 LAN 内的另一台机器上运行。

因为我想安装 SquidProxy 并可能使用 SquidGuard 进行一些过滤,所以显而易见的想法是将所有内容放在主防火墙上,但我不确定这是否是一种好的做法。但我不知道是否有任何可行的选择。Squid 必须以透明模式运行,因此用户不知道他们位于代理后面。

答案1

最佳做法是将网络防火墙的作用与其他一切分开。一般来说。

其背后的原因是,与防火墙一起运行的软件越多,防火墙通过其他软件中的错误受到损害的风险就越大 - 并且如果有人破坏了您的防火墙,他们实际上就拥有了您的网络(或者至少是该防火墙“保护”的网络分区)。

但是,通常只需拒绝来自外部世界的访问即可轻松缓解这种情况,因为大多数攻击尝试通常都源自外部世界。由于“外部人员”无需使用您的代理(而且您也有足够的理由拒绝他们这样做),因此您可以轻松地将防火墙配置为丢弃/拒绝来自网络外部的此类连接。(就我而言,即使我使用 SSH 来管理基于 Linux 的防火墙并允许从外部通过 SSH 进入我的网络,外部 SSH 连接实际上也会通​​过端口转发到我网络内部的单独服务器,如果需要,我可以从该服务器跳转到防火墙,而不是直接在防火墙上接受它们。这仅仅是因为它减少了防火墙本身的攻击面。)

这仍然会使您的防火墙暴露在 Squid 漏洞之下,而网络内的恶意用户可能会利用该漏洞破坏防火墙。这种风险是否严重到值得在完全独立的机器上安装 Squid(即使是一台透明代理配置正如您所要求的,但确实增加了复杂性)是您必须自己考虑的权衡——如果这只是一个家庭网络,可能不值得麻烦,但如果这是一个大型学区或 ISP 的互联网网关,那么您必须非常认真地考虑来自内部的攻击风险。

与所有安全问题一样,这是一个权衡的问题。但是,如果有疑问,我的建议是遵循此处的最佳做法,并将代理放在单独的框中——安全总比后悔好,尤其是在谈论防火墙时!

相关内容