更新 防火墙.MD
This commit is contained in:
@@ -238,3 +238,55 @@ table ip filter {
|
||||
```
|
||||
|
||||
保存后再执行语法校验。
|
||||
|
||||
## 如果依然有问题:手动测试单条命令
|
||||
|
||||
```
|
||||
nft add element ip filter cn_ip {1.0.1.0/24}
|
||||
```
|
||||
|
||||
这条命令不报错,说明 nftables 配置文件的`table ip filter`和`set cn_ip`已经正确加载。
|
||||
|
||||
>
|
||||
> 确认 nftables 已经启动:
|
||||
|
||||
```
|
||||
systemctl start nftables
|
||||
nft list ruleset
|
||||
```
|
||||
|
||||
## 额外注意
|
||||
|
||||
1. `nftables.conf`必须完整,table ip filter 以及 set cn_ip 必须存在,否则 add element 会找不到集合。
|
||||
2. 如果你服务器访问 apnic 很慢 / 超时,可以把 `delegated‑apnic‑latest` 下载本地,修改脚本读取本地文件。
|
||||
3. 不要残留旧 ipset,执行:`ipset destroy cn_ip`
|
||||
|
||||
### 完整 nftables.conf 再次贴一遍对照
|
||||
|
||||
```
|
||||
#!/usr/sbin/nft -f
|
||||
flush ruleset
|
||||
|
||||
table ip filter {
|
||||
set cn_ip {
|
||||
type ipv4_addr
|
||||
flags interval
|
||||
auto-merge
|
||||
}
|
||||
|
||||
chain input {
|
||||
type filter hook input priority 0; policy accept;
|
||||
ip saddr @cn_ip tcp dport 40000-50000 drop
|
||||
ip saddr @cn_ip udp dport 40000-50000 drop
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
修改配置后校验语法:
|
||||
|
||||
```
|
||||
nft -f /etc/nftables.conf --check
|
||||
systemctl restart nftables
|
||||
```
|
||||
|
||||
执行完后,`nft list ruleset` 可以看到完整规则。
|
||||
Reference in New Issue
Block a user