我可以同时使用 iptables、Shorewall 和 ipset 吗?

我可以同时使用 iptables、Shorewall 和 ipset 吗?

我使用 iptables 很多年了,因为它是一种简单直接的解决方案,没有任何魔法。但现在我正在为自己构建一个路由器,我发现 Shorewall 提供了许多有用的功能。

是否可以同时使用 iptables 和 Shorewall?我知道 Shorewall 只是 iptables 的一个前端。但我不知道是否会引起冲突。

另外,我需要阻止大量地址,因此 ipset 是完美的解决方案。同时使用这三个防火墙安全吗?

答案1

如你所说 :

Shorewall 只是 iptables 的一个前端

那么,您认为同时使用这两种方法的充分理由是什么?

此外,ipsets可以与纯一起使用iptables,而且Shorewall还支持ipsetshttp://www.shorewall.net/ipsets.html

所以,我想说:使用iptables 或者 Shorewall(作为前端)。

两者同时使用是没有意义的。

答案2

Shorewall 和 ipsets 是完全互补的,shorewall 就像上面所说的那样,是一个可以正确管理 iptables 的前端工具。Ipsets 是一个可以更有效地将大量 ips 列入白名单/黑名单的工具,因此它们可以协同工作,而且据我所知,大多数系统管理员都推荐它。

需要考虑的主要问题是,为了让 Shorewall 与 IPSET 一起工作,你的内核需要支持 ipset match(IPSET_MATCH)。要检查您的服务器是否支持它,请运行:

$ shorewall show -f capabilities | grep IPSET_MATCH

你应该看到:

IPSET_MATCH=Yes

为了能够使用带有 ipset 的 shorewall。此支持完全取决于您的内核和操作系统。

我的经验是,为了使其正常工作,我需要将 iptables 和 ipset 包更新到最新版本:

iptables v1.6.0
ipset v6.27, protocol version: 6

因为在该版本中,软件包添加了对 ipset match 的支持。您可以阅读变更日志ipset。但您的内核可能已经支持它。由于此软件包版本不在 Jessie 存储库中(至少目前如此),我需要从测试存储库安装它们,这不是最值得推荐的方法,但它效果很好。

相关内容