当前位置: 首页 > ds >正文

firewalld防火墙(一):基础概念、配置详解与实战应用

目录

一、原理与理论

1. Linux防火墙基础

2. firewalld概述  2. firewalld 概述

二、背景与目的

1. 为何需要firewalld?

2. 适用场景

三、配置方法与步骤

1. 基础操作命令

2. 关键配置详解

四、问题及解决方案

常见故障排查

五、总结与心得


 

一、原理与理论

1. Linux防火墙基础
  • Netfilter框架:Linux内核的数据包过滤系统(iptables/nftables底层支撑)。

  • 包处理流程:数据包经过PREROUTING → INPUT/FORWARD → OUTPUT → POSTROUTING链的过滤。

  • 防火墙类型

    • 静态防火墙(iptables):规则更新需重启服务。

    • 动态防火墙(firewalld):规则实时生效,无需中断连接。

2. firewalld概述  2. firewalld 概述
  • 核心特性

    • 基于区域(Zone) 和服务(Service) 的抽象管理。

    • 支持运行时(Runtime) 和永久(Permanent) 双配置模式。

    • 使用D-Bus接口实现动态规则更新。

  • 工作流程


二、背景与目的

1. 为何需要firewalld?
  • iptables规则复杂且变更需重载,影响生产环境连续性。

  • firewalld通过预定义服务(如http、ssh)简化配置,提升可维护性。

2. 适用场景
  • 多网络环境切换(如笔记本移动办公)。

  • 需动态调整规则的云服务器/容器环境。


三、配置方法与步骤

1. 基础操作命令
# 查看活动区域
firewall-cmd --get-active-zones# 添加HTTP服务到public区域(运行时)
firewall-cmd --zone=public --add-service=http# 永久生效
firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --reload  # 重载配置
2. 关键配置详解
功能命令示例
开放端口firewall-cmd --add-port=8080/tcp
绑定网卡到区域firewall-cmd --zone=work --change-interface=eth0
设置默认区域firewall-cmd --set-default-zone=trusted
允许IP段访问firewall-cmd --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" accept'

四、问题及解决方案

常见故障排查
  1. 服务未生效

    • 检查firewall-cmd --list-all --zone=public 确认规则是否存在。

    • 解决:确保使用--permanent后执行--reload

  2. 端口开放但无法访问

    • 可能原因:SELinux限制或服务未监听公网IP。

    • 验证ss -tuln | grep 8080 检查监听地址。

  3. 富规则(Rich Rules)优先级冲突

    • 原则:先添加的规则优先匹配。

    • 调整:使用--remove-rich-rule删除旧规则后重新排序添加。


五、总结与心得

  • firewalld优势:  firewalld 优势 

    • 灵活性:动态更新规则,适应网络环境变化。

    • 易用性:基于服务的配置降低复杂度。

  • 实践建议

    1. 生产环境操作前备份配置:cp /etc/firewalld/firewalld.conf{,.bak}

    2. 使用--permanent修改后必须--reload生效。

    3. 复杂规则优先使用富规则(Rich Rules)保证可读性。

http://www.xdnf.cn/news/14649.html

相关文章:

  • PaddleOCR项目实战(3):SpringBoot服务开发之全局异常处理
  • 华为OD-2024年E卷-增强的strstr[100分] -- python
  • OC-UI学习-Auto Layout使用
  • 自主学习-《Absolute Zero: Reinforced Self-play Reasoning with Zero Data》
  • 《贵州安顺棒垒球》国家队运动员·棒球1号位
  • 器件(九)—对设计的模块进行双脉冲仿真
  • 【系统分析师】2011年真题:案例分析-答案及详解
  • 阿里云OSS任意文件写入/删除漏洞修复方案
  • LDPC码的译码算法
  • 一个包含两款主题的社交APP客户端UI解决方案
  • houdini 简单流体模拟 学习笔记
  • OpenKylin安装dotnet及其永久环境配置
  • Redis windows版安装,启动配置【kaki学习备忘录】
  • 基于RSSI的室内定位的排列不变Transformer神经架构
  • 如何在 Elementary OS 上安装 Cinnamon 桌面环境
  • HTTP协议简易入门
  • Spring AOP
  • csv文档批量转换xlsx,xls文档(带界面)
  • Go语言同步原语与数据竞争:数据竞争的检测工具
  • 2011-2020年各省互联网接入端口数数据
  • 打卡day54
  • AC-MT
  • C语言常用库函数
  • LangChain面试内容整理-知识点14:工具包(Toolkits)与用法
  • 生成对抗网络(GANs)入门介绍指南:让AI学会“创造“的魔法(二)【深入版】
  • Textacy:Python 中的文本数据清理和规范化简介
  • 自我实现的量子隐喻:在可能性场域中动态拓展涌现节点
  • LLMs:《WebDancer: Towards Autonomous Information Seeking Agency》翻译与解读
  • 02-Timer0-Timer1-Timer2-Timer3-Timer4测试程序
  • Sa-Token全面深入学习指南