温馨提示×

CentOS如何添加iptables

小樊
35
2026-07-19 07:02:18
栏目: 智能运维

CentOS 上添加 iptables 规则,常见做法取决于你的 CentOS 版本(6 还是 7/8)。下面按版本说明,并给出通用示例。


一、确认系统版本

cat /etc/centos-release

二、CentOS 6(默认使用 iptables)

1. 查看当前规则

iptables -L -n -v

2. 添加规则(示例)

开放 80 端口

iptables -I INPUT -p tcp --dport 80 -j ACCEPT

允许某个 IP

iptables -I INPUT -s 192.168.1.100 -j ACCEPT

拒绝某个 IP

iptables -I INPUT -s 10.0.0.5 -j DROP

3. 保存规则(非常重要)

service iptables save

4. 重启 iptables

service iptables restart

三、CentOS 7 / 8(默认使用 firewalld)

方式一:使用 firewalld(推荐)

systemctl start firewalld
systemctl enable firewalld

开放端口:

firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --reload

方式二:手动使用 iptables(不推荐但可用)

1. 停止 firewalld

systemctl stop firewalld
systemctl disable firewalld

2. 安装 iptables 服务

yum install -y iptables-services

3. 启动 iptables

systemctl start iptables
systemctl enable iptables

4. 添加规则

iptables -I INPUT -p tcp --dport 80 -j ACCEPT

5. 保存规则

service iptables save

四、常用 iptables 规则示例

允许 SSH(22)

iptables -A INPUT -p tcp --dport 22 -j ACCEPT

允许本地回环

iptables -A INPUT -i lo -j ACCEPT

允许已建立连接

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

设置默认策略(谨慎)

iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

五、查看 / 删除规则

查看规则

iptables -L -n --line-number

删除规则(按编号)

iptables -D INPUT 3

六、注意事项(非常重要)

⚠️ CentOS 7/8 强烈建议使用 firewalld
⚠️ 修改 iptables 前建议先放行 SSH,避免被锁在外面
⚠️ 规则不保存会重启后丢失


如果你愿意,可以告诉我:

  • ✅ CentOS 具体版本
  • ✅ 想实现什么(开放端口 / 限制 IP / 防 CC / 端口转发)

我可以给你 精确可用的规则

0