在 CentOS 系统中,iptables 是一个用于配置内核防火墙(netfilter)规则的命令行工具。iptables 主要有五个默认链:INPUT、OUTPUT、FORWARD、PREROUTING 和 POSTROUTING。要管理多个链,您需要创建自定义链并为其添加规则。以下是一些基本步骤:
创建自定义链:
使用 iptables -N 命令创建一个新的自定义链。例如,创建一个名为 MY_CHAIN 的自定义链:
iptables -N MY_CHAIN
为自定义链添加规则:
使用 iptables -A 命令将规则添加到自定义链。例如,将 INPUT 链中的所有 TCP 流量跳转到 MY_CHAIN:
iptables -A INPUT -p tcp -j MY_CHAIN
在自定义链中添加规则:
使用 iptables -A 命令将规则添加到自定义链。例如,在 MY_CHAIN 中拒绝所有来自特定 IP 地址的流量:
iptables -A MY_CHAIN -s 192.168.1.100 -j DROP
将自定义链与默认链关联:
使用 iptables -A 命令将自定义链与默认链关联。例如,将 MY_CHAIN 与 INPUT 链关联:
iptables -A INPUT -j MY_CHAIN
查看 iptables 规则:
使用 iptables -L 命令查看当前的 iptables 规则。您可以使用 -v(详细信息)和 -n(数字格式地址和端口)选项来获取更多信息。
保存 iptables 规则:
使用 service iptables save 命令保存当前的 iptables 规则。这将确保在系统重启后规则仍然有效。
重启 iptables 服务:
使用 service iptables restart 命令重启 iptables 服务以应用更改。
通过以上步骤,您可以在 CentOS 系统中使用 iptables 管理多个链。请注意,根据您的需求,您可能需要调整示例中的规则和链名称。