温馨提示×

CentOS怎么安装iptables

小樊
71
2026-07-19 07:22:11
栏目: 智能运维

在 CentOS 上安装和使用 iptables,不同版本差异较大,下面按 CentOS 7 / 8 / Stream 分别说明(重点放在 CentOS 7,因为 8 以后默认用 nftables)。


一、CentOS 7 安装 iptables(最常见)

1️⃣ 检查是否已安装

rpm -q iptables

2️⃣ 安装 iptables

yum install -y iptables iptables-services

3️⃣ 关闭 firewalld(CentOS 7 默认使用)

systemctl stop firewalld
systemctl disable firewalld

4️⃣ 启动并设置 iptables 开机自启

systemctl start iptables
systemctl enable iptables

5️⃣ 查看 iptables 状态

systemctl status iptables
iptables -L -n

二、CentOS 8 / Stream(不推荐直接用 iptables)

CentOS 8 默认使用 nftables,iptables 只是一个兼容层。

查看 iptables 是否存在

iptables -V

安装 iptables-services(不推荐)

dnf install -y iptables-services

⚠️ 注意:

  • CentOS 8 官方已停止维护(2021 年底)
  • 不建议新系统强装 iptables,推荐用 firewalld 或 nftables

三、常见 iptables 基本操作

查看规则

iptables -L -n

清空规则

iptables -F
iptables -X

允许 SSH(22)

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

允许本机回环

iptables -A INPUT -i lo -j ACCEPT

设置默认策略

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

保存规则(CentOS 7)

service iptables save
# 或
iptables-save > /etc/sysconfig/iptables

四、CentOS 7 示例:最小安全规则

iptables -F
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
service iptables save

五、如何选择?

系统 推荐
CentOS 7 ✅ iptables
CentOS 8 / Stream ✅ firewalld / nftables
老服务器 ✅ iptables

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

  • ✅ CentOS 具体版本
  • ✅ 是服务器还是本地虚拟机
  • ✅ 是否需要 开放端口 / 防止攻击 / 端口转发

我可以帮你直接写一套 完整可用的 iptables 规则 ✅

0 踩