firewall-cmd 使用ipset 的案例
时间: 2024-06-07 09:11:56 浏览: 83
CentOS 7.3 下的firewall-cmd命令使用
Firewall-cmd 是一个命令行工具,用于管理 Linux 系统上的防火墙规则,它可以与 IPSet 工具集成使用。
IPSet 是一个 Linux 内核中的模块,它允许你创建、编辑和管理 IP 地址集合,这些集合可以与 iptables 或 nftables 配合使用。IPSet 通过使用哈希表来高效地匹配大量的 IP 地址,这使得它成为管理大规模网络规则的有力工具。
下面是一个使用 firewall-cmd 和 IPSet 的例子,假设我们要禁止来自某个 IP 地址的访问:
1. 创建一个 IPSet 集合
```
sudo ipset create blocked_ips hash:ip
```
2. 将要阻止的 IP 地址添加到该集合中
```
sudo ipset add blocked_ips 192.168.0.1
```
3. 使用 firewall-cmd 添加防火墙规则,禁止来自 blocked_ips 集合中的 IP 地址的访问
```
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="ipset:blocked_ips" drop'
```
4. 重新加载防火墙规则
```
sudo firewall-cmd --reload
```
这样,来自 192.168.0.1 的访问将被阻止。你也可以使用 ipset 命令来删除或修改 IPSet 集合中的 IP 地址,或者使用 firewall-cmd 命令来删除或修改防火墙规则。
阅读全文