一,nftables的动作
list 查看
create 创建
add 添加
insert 插入
replace 替换
delete 删除
flush 清空
说明: create和add的区别: 如果指定的内容已经存在,add
不会返回错误,而 create
会返回错误
add和insert的区别: add是在后面添加,insert是在前面插入。
二,nftables的动作目标:
ruleset
table
chain
rule
set
map
element
三,Address Family 地址族
地址族决定处理的数据包的类型。
对于每个地址族,内核在数据包处理路径的特定阶段包含所谓的钩子,
如果存在这些钩子的规则,这些钩子将调用 nftables。
ip IPv4,默认
ip6 IPv6
inet Internet (IPv4/IPv6)
arp 处理 IPv4 ARP 数据包
bridge 处理通过网桥设备的数据包
netdev 处理来自入口的数据包,主要用于ingress勾子
四,一个nftables配置例子:
例子: 允许SSH、HTTP、HTTPS和ICMP,禁止其他流入流量#!/usr/sbin/nft -f
flush ruleset
table inet filter {
chain input {
type filter hook input priority 0; policy drop;
# accept any localhost traffic
iif lo accept
# accept traffic originated from us
ct state established,related accept
# drop invalid packets
ct state invalid counter drop
# accept ssh, http, and https
tcp dport { 22, 80, 443 } accept
# accept icmp
ip protocol icmp accept
# count and reject everything else
counter reject with icmpx type admin-prohibited
}
chain forward {
type filter hook forward priority 0; policy drop;
}
chain output {
type filter hook output priority 0; policy accept;
}
}
标签:chain,drop,accept,之二,add,nftables,常用命令,数据包
From: https://www.cnblogs.com/architectforest/p/18394141