arptables-nft 持久性

arptables-nft 持久性

介绍

这是在带内核的 D​​ebian Buster 上4.19.0-6

我已经安装iptables-persistentnetfilter-persistent版本1.0.11

并添加了一条基本规则来arptables-nft阻止除默认网关之外的所有 LAN 地址,如下所示:

# arptables-nft -A INPUT -s ! 10.0.0.1 -j DROP

将规则保存到文件中可以像这样完成

$ sudo arptables-nft-save >> ~/Desktop/arptable-rules.save
$ less ~/Desktop/arptable-rules.save
*filter
:INPUT ACCEPT
:OUTPUT ACCEPT
-A INPUT ! -s 10.0.0.1 --h-length 6 --h-type 1 -j DROP

规则可以像这样恢复

$ sudo arptables-nft -F
$ sudo arptables-nft-restore < ~/Desktop/arptable-rules.save
$ sudo arptables-nft -L -n
Chain INPUT (policy ACCEPT)
! -s 10.0.0.1 --h-length 6 --h-type 1 -j DROP

Chain OUTPUT (policy ACCEPT)

但由于某种原因,它在重新启动后不会持续存在。我认为 arptables-nft 将成为 netfilter arp 表的一部分,但事实并非如此。除了制作启动脚本(例如使用 Debian 使脚本在启动时运行)它运行arptables-nft-restore,也许还有一个运行的关闭脚本arptables-nft-save,我不确定如何使arptable-nft表规则在重新启动后保持不变。

问题

有什么方法可以让规则自动保存,就像它们使用nftoriptables-persistent以及它们处理表的方式一样?或者编写启动/关闭脚本会不会更麻烦?

相关内容