温馨提示×

centos iptables怎么开启

小樊
49
2026-07-07 22:22:30
栏目: 智能运维

CentOS 上开启并使用 iptables,不同版本差别较大,下面按 CentOS 6 / CentOS 7 / CentOS 8 分别说明(CentOS 8 已不再支持 iptables 作为默认防火墙)。


一、CentOS 6(默认使用 iptables)

1. 查看 iptables 状态

service iptables status

2. 启动 iptables

service iptables start

3. 设置开机自启

chkconfig iptables on

4. 保存规则(重要)

service iptables save

二、CentOS 7(默认是 firewalld,需要手动切换)

✅ 方式一:继续使用 firewalld(推荐)

systemctl start firewalld
systemctl enable firewalld

✅ 方式二:切换到 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. 查看状态

systemctl status iptables

5. 保存规则

service iptables save
# 或
/usr/libexec/iptables/iptables.init save

三、CentOS 8(⚠️ 不推荐 iptables)

CentOS 8 默认使用 nftablesiptables 只是兼容层。

查看是否安装

iptables -V

如果需要强行使用(不推荐)

yum install -y iptables-services
systemctl stop firewalld
systemctl disable firewalld
systemctl start iptables
systemctl enable iptables

⚠️ 建议直接使用 firewalld 或 nftables


四、常用 iptables 开启示例

允许 SSH(22)

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

允许 HTTP/HTTPS

iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT

允许本地回环

iptables -A INPUT -i lo -j ACCEPT

设置默认策略

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

保存规则

service iptables save

五、快速判断你的系统用哪个

systemctl status firewalld
systemctl status iptables

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

  • ✅ CentOS 具体版本
  • ✅ 是服务器还是本地虚拟机
  • ✅ 是否需要开放某个端口(如 80、3306、9000)

我可以给你一套 完整可用的 iptables 规则

0