首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将防火墙规则从iptables转换为nftable

将防火墙规则从iptables转换为nftable
EN

Unix & Linux用户
提问于 2022-10-22 06:24:49
回答 1查看 1.1K关注 0票数 3

我对iptables有这样的规则

代码语言:javascript
运行
复制
iptables -I INPUT 1 -i eth0 -p tcp -s 192.168.178.20 --dport 8201 -j REJECT

我在寻找如何翻译规则教程,但找不到它们。如何使用nftables创建该规则?还是语法相同?

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2022-10-22 08:24:40

来自nftable 维基

自2018年6月以来,旧的xtable/setsockopt工具被认为是遗留的。但是,支持在nf_tables内核后端使用iptables/ip6table/arptable/ebtables旧语法。这在Legacy xtable工具wiki页面中有更详细的描述。

您可以使用iptables-nft实现如下目标:

代码语言:javascript
运行
复制
iptables-nft -I INPUT 1 -i eth0 -p tcp -s 192.168.178.20 --dport 8201 -j REJECT

在输入之后,iptabels-nft-save将应用您的规则。您可以通过以下方法确认nftable中存在此规则:

代码语言:javascript
运行
复制
nft list ruleset

你必须看到这样的东西:

代码语言:javascript
运行
复制
nft list ruleset                 
table ip filter {
        chain INPUT {
                type filter hook input priority filter; policy accept;
                iifname "eth0" ip saddr 192.168.178.20 tcp dport 8201 counter packets 0 bytes 0 reject
        }
}

此外,还可以使用以下语法直接翻译规则:

代码语言:javascript
运行
复制
iptables-translate -I INPUT 1 -i eth0 -p tcp -s 192.168.178.20 --dport 8201 -j REJECT

这将为您提供以下输出:

代码语言:javascript
运行
复制
nft insert rule ip filter INPUT iifname "eth0" ip saddr 192.168.178.20 tcp dport 8201 counter reject

另外,您可以保存所有iptables规则,比如iptables-save > save.txt,然后使用iptables-restore-translate -f save.txt来获取转换的规则。

看看几个月前我自己的问题,得到进一步的解释。

票数 3
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/722007

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档