CentOS 安装与配置 iptables
iptables 简介

iptables 是 Linux 系统上用于实现网络地址转换(NAT)和包过滤功能的强大工具,它可以帮助系统管理员控制进出网络的流量,增强系统的安全性,在 CentOS 系统中,iptables 是默认的防火墙软件。
安装 iptables
检查系统是否已安装 iptables
iptables -V
如果系统已安装 iptables,则上述命令会显示其版本信息。
安装 iptables
如果系统未安装 iptables,可以使用以下命令进行安装:
sudo yum install iptables
安装 iptables 服务
sudo systemctl enable iptables sudo systemctl start iptables
配置 iptables

临时配置
编辑 /etc/sysconfig/iptables 文件,添加以下规则:
-A INPUT -p tcp -s 192.168.1.0/24 --dport 22 -j ACCEPT -A OUTPUT -p tcp -d 192.168.1.0/24 --sport 22 -j ACCEPT
上述规则表示允许来自 192.168.1.0/24 网络的 SSH 连接。
永久配置
将临时配置保存到 /etc/sysconfig/iptables 文件中,并重启 iptables 服务:
sudo systemctl restart iptables
查看 iptables 规则
sudo iptables -L
此命令将显示当前系统的防火墙规则。
iptables 规则优先级

iptables 规则按照从上到下的顺序进行匹配,一旦匹配到符合条件的规则,则不再继续匹配后续规则,建议将更具体的规则放在前面,以避免不必要的匹配。
常用 iptables 命令
| 命令 | 功能 |
|---|---|
iptables -A | 在链的末尾添加规则 |
iptables -D | 删除链中的规则 |
iptables -R | 替换链中的规则 |
iptables -I | 在链的指定位置插入规则 |
iptables -F | 清空链中的所有规则 |
iptables -X | 删除链并释放相关资源 |
FAQs
问题 1:如何允许所有来自特定 IP 地址的流量?
解答:可以使用以下命令允许所有来自特定 IP 地址的流量:
sudo iptables -A INPUT -s 192.168.1.100 -j ACCEPT
问题 2:如何查看 iptables 的版本信息?
解答:可以使用以下命令查看 iptables 的版本信息:
iptables -V
