使用 netfilter-persistent 的伪装规则

使用 netfilter-persistent 的伪装规则

我用来netfilter-persistent管理防火墙。

我想使用伪装来共享两个接口之间的连接(例子, 或者其他)。当我通过调用它来运行这些操作时,iptables它起作用了。

但是,如果我尝试更新存储在/etc/iptables/rules.v4添加这样一行的防火墙规则:

-t nat -A POSTROUTING -o wlan0 -j MASQUERADE

-tmake开头的行netfilter-persistent无法运行并且防火墙未更新:

Nov 16 11:51:32 helena systemd[1]: netfilter-persistent.service: Main process exited, code=exited, status=1/FAILURE
Nov 16 11:51:32 helena systemd[1]: Failed to start netfilter persistent configuration.

netfilter-persistent所以我想知道是否可以用or来存储这种规则

  • 这是一个已知的限制吗?
  • 它不能工作有充分的理由吗?
  • 有没有办法让它工作?

答案1

您可能正在添加一条旨在用于NAT表在里面过滤表块适合于iptables-restore,并且语法不恰当。

直到您知道如何/etc/iptables/rules.v4直接编辑(通过研究iptables-save),你应该这样做:

  • 请小心,因为该规则将立即应用,
  • 使用以下命令更改当前运行的防火墙规则:

    iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE
    
  • 研究结果:是否值得更改配置?

  • 如果值得,请询问netfilter-persistent保存规则。它将依次运行iptables-persistent将使用的插件iptables-save在引擎盖下。

    netfilter-persistent save
    

您会注意到新的配置文件(适合由iptables-restore)现在有一个块纳特表与您的规则(和没有-t nat),与筛选表块。

相关内容