macleo's blog

孤独 和 赛跑

导航

debian 12 bullesys 新一代防火墙 ntfables 使用体验总结

debian12 防火墙默认采用nftables,不再自带iptables 

想安装 iptables 的也可以自行安装一下,不过我想体验一下 nftables ,之所有有新的替代旧的,那一定是有它存在的理由的。废话不多说,开始。

1.先了解一下 nftables 的概念:

nftable 概念介绍

2.创建表(如果还没有创建表)

首先,确保有一个表来存放规则。如果还没有创建表,可以使用以下命令创建一个

sudo nft add table ip filter

 

3.创建链(如果还没有创建链): 创建一个链来放置规则,例如 input 链:

sudo nft add chain ip filter input { type filter hook input priority 0 \; }

 

4.添加规则来禁止特定 IP 地址的访问: 例如,禁止 IP 地址 192.168.1.100 的访问:

sudo nft add rule ip filter input ip saddr 192.168.1.100 drop

 这个命令会在 input 链中添加一个规则,禁止来自 IP 地址 192.168.1.100 的流量。ping 192.168.1.100 会发现已经无法联通了 。

5.要查看当前的 nftables 规则,可以使用以下命令:

sudo nft -a list ruleset

 6.使用 handle 删除规则

假设你找到的规则如下所示:

 
table ip filter {
    chain input {
        type filter hook input priority 0; policy accept;
        ip saddr 192.168.1.100 drop # handle 3
    }
}

7.其中,# handle 3 表示该规则的 handle 值是 3。要删除这条规则,你可以运行以下命令:

sudo nft delete rule ip filter input handle 3

 

总结

  • 查找规则的 handle 值是删除规则的关键。
  • nftables 删除规则时必须指定 handle,而不能直接使用规则的内容。

与搜素到这里的朋友共勉,一同进步

posted on 2024-08-10 19:47  macleo  阅读(0)  评论(0编辑  收藏  举报