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

我使用iptables多年,因为这是一个简单的解决scheme,没有任何魔法。 但是现在我正在为自己构build一个路由器,我发现Shorewall提供了许多有用的function。

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

此外,我需要阻止大量的地址,所以ipset是完美的解决scheme。 使用所有这三个防火墙是安全的吗?

如你所说 :

Shorewall只是iptables的前端

那么,在你看来,有什么可以是一个很好的理由使用两个?

此外, ipsets可以使用纯iptables ,但Shorewall也支持ipsets : http : //www.shorewall.net/ipsets.html

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

两者都没有意义。

Shorewall和ipsets是完全互补的,shorewall就像上面说的正确pipe理iptables的前端工具。 Ipsets是一个更加高效的白名单/黑名单工具,所以他们可以一起工作,大部分都是系统pipe理员,我知道,推荐它。

需要注意的主要考虑因素是,为了使shorewall与ipsets一起工作,您的内核需要支持ipset匹配 (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匹配的支持被包添加。 你可以阅读ipset的更新日志 。 但是你的内核可能已经支持它了。 由于这个软件包版本不在Jessie仓库中(至less在这个时候),我需要从testing版本库安装它,这不是最值得推荐的方法,但是它的工作非常完美。