温馨提示×

centos怎么替换默认防火墙

小樊
44
2026-09-06 09:41:44
栏目: 智能运维

在 CentOS 中,“默认防火墙”通常指 firewalld。如果你想“替换”它(例如改用 iptablesnftables 或完全关闭),可按下面常见方案操作。


一、用 iptables 替换 firewalld(最常见)

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 -F
iptables -P INPUT DROP
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
service iptables save

CentOS 7 保存规则:

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

二、用 nftables 替换 firewalld(CentOS 8+ 推荐)

1. 停止 firewalld

systemctl stop firewalld
systemctl disable firewalld

2. 安装并启用 nftables

yum install -y nftables
systemctl enable --now nftables

3. 示例规则

nft add table inet filter
nft add chain inet filter input { type filter hook input priority 0 \; }
nft add rule inet filter input ct state established,related accept
nft add rule inet filter input tcp dport 22 accept
nft add rule inet filter input drop

三、完全关闭防火墙(不推荐生产环境)

systemctl stop firewalld
systemctl disable firewalld

或彻底 mask:

systemctl mask firewalld

四、查看当前防火墙状态

systemctl status firewalld
iptables -L -n
nft list ruleset

建议

  • CentOS 7:iptables 最稳定
  • CentOS 8+:推荐 nftables
  • 云服务器:注意安全组 + 系统防火墙双重限制

如果你说明:

  • CentOS 版本(6/7/8/Stream)
  • 想换成哪种防火墙
  • 是否是服务器/云环境

我可以给你更精确的命令。

0