CentOS 7 系统中,防火墙要怎么使用?

CentOS 7 系统中,默认有两个防火墙管理工具:

  1. firewalld (默认的动态防火墙,基于 D-Bus 管理)

  2. iptables (传统的静态防火墙,底层由 netfilter 提供支持)

是否需要关闭这两个防火墙,取决于你的具体需求。以下是详细分析和操作指南:

1. 两个防火墙的关系

  • firewalld 是 CentOS 7 的默认前端管理工具,底层仍然依赖 iptables/nftables 规则。

  • iptables 是直接操作内核级防火墙规则的传统工具。

  • 两者同时启用可能导致规则冲突 (例如端口开放不一致),但通常 firewalld 会管理 iptables 规则。

2. 是否需要关闭?

场景 建议操作
使用 firewalld 保持 firewalld 开启,无需关闭 iptablesfirewalld 会自动管理规则)。
使用 iptables 关闭 firewalld,直接通过 iptables 配置规则(避免冲突)。
完全禁用防火墙 关闭 firewalld 并清空 iptables 规则(仅限测试环境,生产环境不推荐!)。

3. 操作步骤

(1)查看防火墙状态
复制代码
systemctl status firewalld    # 检查 firewalld 状态
systemctl status iptables     # 检查 iptables 服务(通常未启用)
iptables -L -n                # 查看 iptables 规则
(2)关闭 firewalld
复制代码
sudo systemctl stop firewalld      # 临时停止
sudo systemctl disable firewalld   # 永久禁用
(3)关闭 iptables(如需)
复制代码
sudo systemctl stop iptables       # 临时停止
sudo systemctl disable iptables    # 永久禁用
sudo iptables -F                  # 清空所有规则(谨慎操作!)
(4)启用 iptables(替代 firewalld
复制代码
sudo yum install iptables-services  # 确保 iptables 服务已安装
sudo systemctl enable iptables      # 启用服务
sudo systemctl start iptables       # 启动服务

4. 注意事项

  1. 生产环境建议保留防火墙

    • 使用 firewalld(推荐)或 iptables 至少开启一个,避免暴露所有端口。

    • 通过 firewall-cmdiptables 命令配置放行必要端口(如 SSH、HTTP)。

  2. firewalldiptables 冲突

    • 如果同时修改两者,可能导致规则混乱。建议统一使用一种工具。
  3. 临时测试关闭防火墙

    复制代码
    sudo systemctl stop firewalld
    sudo iptables -F

5. 推荐方案

  • 大多数情况 :保持 firewalld 开启,通过以下命令管理:

    复制代码
    sudo firewall-cmd --zone=public --add-port=80/tcp --permanent  # 放行端口
    sudo firewall-cmd --reload                                    # 重载配置
  • 需要传统 iptables :禁用 firewalld,手动编写 /etc/sysconfig/iptables 规则。


总结

需求 操作
默认安全防护 保持 firewalld 开启,无需操作 iptables
使用自定义规则 关闭 firewalld,启用 iptables-services 并手动配置。
彻底关闭防火墙 停止并禁用 firewalld + 清空 iptables 规则(仅限内网测试环境)。
相关推荐
qq762118225 分钟前
Linux c 在内存中创建zip,最后写入测试
linux·运维·服务器
半路_出家ren20 分钟前
Shell脚本基础应用
linux·网络·shell
故事很腻i23 分钟前
安装elk
运维·elk·jenkins
华纳云IDC服务商36 分钟前
网站服务器频繁掉线的主要原因是什么
运维·服务器
知白守黑26737 分钟前
keepalived
网络
小黄人软件37 分钟前
【部署python网站】宝塔面板 小目标2:实时搜索网上资源文件网站放在服务器上 用AI做一个作品,不断迭代。
运维·服务器
未来之窗软件服务41 分钟前
服务器运维(四)服务器漏洞扫描工具与审查——东方仙化神期
运维·服务器·仙盟创梦ide·东方仙盟·东方仙盟运维
小猪写代码44 分钟前
服务器相关:什么是 alios. centos. cuda. cuda tookit. gcc. cudann. pytorch.
服务器·pytorch·centos
云飞云共享云桌面44 分钟前
SolidWorks服务器多人使用方案
大数据·运维·服务器·前端·网络·电脑·制造