firewalld防火墙

news2024/12/27 0:39:40

firewalld防火墙

1:firewalld概述

  • firewalld防火墙是Centos7系统默认的防火墙管理工具,取代了之前的iptables防火墙,也是工作在网络层,属于包过滤防火墙。
  • firewalld和iptables都是用来管理防火墙的工具(属于用户态)来定义防火墙的各种规则功能,内部结构都指向netfilter网络过过滤子系统(属于内核态)来实现包过滤防火墙功能。
  • firewalld提供了支持网络区域所定义的网络链接以及接口安全等级的动态防火墙管理工具。 它支持IPv4、IPv6防火墙设置以及以太网桥(在某些高级服务可能会用到,比如云计算), 并且拥有两种配置模式:运行时配置与永久配置。

2:firewalld 与 iptables 的区别:

  • 1.iptables主要是基于接口,来设置规则,从而判断网络的安全性。
    firewalld是基于区域,根据不同的区域来设置不同的规则,从而保证网络的安全。与硬件防火墙的设置相类似。
  • 2.iptables 在 /etc/sysconfig/iptables 中储存配置,
    firewalld 将配置储存在 /etc/firewalld/(优先加载)和 /usr/lib/firewalld/(默认的配置文件)中的各种 XML 文件里。
  • 3.使用 iptables 每一个单独更改意味着清除所有旧有的规则和从/etc/sysconfig/iptables 里读取所有新的规则
    使用 firewalld 却不会再创建任何新的规则,仅仅运行规则中的不同之处。因此firewalld 可以在运行时间内,改变设置而不丢失现行连接。

在这里插入图片描述
在这里插入图片描述

3:firewalld 区域的概念:

firewalld防火墙为了简化管理,将所有网络流量分为多个区域(zone)。然后根据数据包的源IP地址或传入的网络接口等条件将流量传入相应区域。每个区域都定义了自己打开或者关闭的端口和服务列表。
firewalld防火墙预定义了9个区域:

区域含义
trusted(信任区域)允许所有的传入流量。
public(公共区域)允许与ssh或dhcpv6-client预定义服务匹配的传入流量,其余均拒绝。是新添加网络接口的默认区域。
external(外部区域)允许与 ssh 预定义服务匹配的传入流量,其余均拒绝。 默认将通过此区域转发的IPv4传出流量将进行地址伪装,可用于为路由器启用了伪装功能的外部网络。
home(家庭区域)允许与ssh、ipp-client、mdns、samba-client或dhcpv6-client预定义服务匹配的传入流量,其余均拒绝。
internal(内部区域)默认值时与home区域相同
work(工作区域)允许与 ssh、ipp-client、dhcpv6-client 预定义服务匹配的传入流量,其余均拒绝
dmz(隔离区域也称为非军事区域)允许与 ssh 预定义服务匹配的传入流量,其余均拒绝
block(限制区域)拒绝所有传入流量
drop(丢弃区域)丢弃所有传入流量,并且不产生包含 ICMP的错误响应

在这里插入图片描述

最终一个区域的安全程度是取决于管理员在此区域中设置的规则。
区域如同进入主机的安全门,每个区域都具有不同限制程度的规则,只会允许符合规则的流量传入。
可以根据网络规模,使用一个或多个区域,但是任何一个 活跃区域 至少需要关联 源地址或接口。
默认情况下,public区域是默认区域,包含所有接口(网卡)

4:firewalld数据处理流程:

firewalld对于进入系统的数据包,会根据数据包的源IP地址或传入的网络接口等条件,将数据流量转入相应区域的防火墙规则。对于进入系统的数据包,首先检查的就是其源地址。

5:firewalld检查数据包的源地址的规则:

  • 1.若源地址关联到特定的区域(即源地址或接口绑定的区域有冲突),则执行该区域所制定的规则。
  • 2.若源地址未关联到特定的区域(即源地址或接口绑定的区域没有冲突),则使用传入网络接口的区域并执行该区域所制定的规则。
  • 3.若网络接口也未关联到特定的区域(即源地址或接口都没有绑定特定的某个区域),则使用默认区域并执行该区域所制定的规则。

在这里插入图片描述

一:firewalld防火墙的配置方法:

  • 1、使用firewall-cmd 命令行工具。

  • 2、使用firewall-config 图形工具。
    在这里插入图片描述

  • 3、编写/etc/firewalld/中的配置文件。
    编写配置文件
    在这里插入图片描述

在这里插入图片描述

二:常用的firewall-cmd 命令选项

firewall-cmd --get-default-zone :显示当前默认区域
firewall-cmd --set-default-zone=<zone> :设置默认区域

在这里插入图片描述

firewall-cmd --get-active-zones :显示当前正在使用的区域及其对应的网卡接口
firewall-cmd --get-zones :显示所有可用的区域

在这里插入图片描述

firewall-cmd --get-zone-of-interface=<interface> :显示指定接口绑定的区域

在这里插入图片描述

firewall-cmd --zone=<zone> --add-interface=<interface> :为指定接口绑定区域
firewall-cmd --zone=<zone> --change-interface=<interface> :为指定的区域更改绑定的网络接口
firewall-cmd --zone=<zone> --remove-interface=<interface> :为指定的区域删除绑定的网络接口

在这里插入图片描述

firewall-cmd --zone=<zone> --add-source=<source>[/<mask>]  :为指定源地址绑定区域
firewall-cmd --zone=<zone> --change-source=<source>[/<mask>] :为指定的区域更改绑定的源地址
firewall-cmd --zone=<zone> --remove-source=<source>[/<mask>] :为指定的区域删除绑定的源地址

在这里插入图片描述
在这里插入图片描述

firewall-cmd --list-all-zones :显示所有区域及其规则
firewall-cmd [--zone=<zone>] --list-all 
显示所有指定区域的所有规则,省略--zone=<zone>时表示仅对默认区域操作
firewall-cmd [--zone=<zone>] --list-services 
显示指定区域内允许访问的所有服务,省略--zone=<zone>时表示仅对默认区域操作
firewall-cmd [--zone=<zone>] --add-service=<service> 
为指定区域设置允许访问的某项服务,省略--zone=<zone>时表示仅对默认区域操作
firewall-cmd [--zone=<zone>] --remove-service=<service> 
删除指定区域已设置的允许访问的某项服务,省略--zone=<zone>时表示仅对默认区域操作

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

firewall-cmd [--zone=<zone>] --list-ports :显示指定区域内允许访问的所有端口号
firewall-cmd [--zone=<zone>] --add-port=<端口号portid>[-<端口号portid>]/<协议protocol> :为指定区域设置允许访问的某个/某段端口号(包括协议名)
firewall-cmd [--zone=<zone>] --remove-port=<portid>[-<portid>]/<protocol> :删除指定区域已设置的允许访问的端口号(包括协议名)

在这里插入图片描述

firewall-cmd --get-icmptypes :显示所有 ICMP 类型
firewall-cmd [--zone=<zone>] --list-icmp-blocks :显示指定区域内拒绝访问的所有 ICMP 类型
firewall-cmd [--zone=<zone>] --add-icmp-block=<icmptype> :为指定区域设置拒绝访问的某项 ICMP 类型
firewall-cmd [--zone=<zone>] --remove-icmp-block=<icmptype> :删除指定区域已设置的拒绝访问的某项ICMP类型


在这里插入图片描述

1:区域管理:

  • (1)显示当前系统中的默认区域
firewall-cmd --get-default-zone
  • (2)显示默认区域的所有规则
firewall-cmd --list-all
  • (3)显示当前正在使用的区域及其对应的网卡接口
firewall-cmd --get-active-zones
  • (4)设置默认区域
firewall-cmd --set-default-zone=home
firewall-cmd --get-default-zone

在这里插入图片描述

2:服务管理:

(1)查看默认区域内允许访问的所有服务

firewall-cmd --list-service

(2)添加httpd 服务到public 区域

firewall-cmd --add-service=http --zone=public

(3)查看public 区域已配置规则

firewall-cmd --list-all --zone=public

(4)删除public 区域的httpd 服务

firewall-cmd --remove-service=http --zone=public

(5)同时添加httpd、https 服务到默认区域,设置成永久生效

firewall-cmd --add-service=http --add-service=https --permanent
firewall-cmd --reload	
firewall-cmd --list-all	

#添加使用 --permanent选项表示设置成永久生效,需要重新启动firewalld服务或执行firewall-cmd --reload命令 重新加载防火墙规则时才会生效。若不带有此选项,表示用于设置运行时规则,但是这些规则在系统或firewalld服务重启、停止时配置将失效。

firewall-cmd --runtime-to-permanent
将当前的运行时配置写入规则配置文件中,使之成为永久性配置。

在这里插入图片描述

3:端口管理:

(1)允许TCP的443端口到internal 区域

firewall-cmd --zone=internal --add-port=443/tcp
firewall-cmd --list-all --zone=internal

(2)从internal 区域将TCP的443端口移除

firewall-cmd --zone=internal --remove-port=443/tcp

(3)允许UDP的2048~2050端口到默认区域

firewall-cmd --add-port=2048-2050/udp
firewall-cmd --list-all

(4)允许UDP的2048~2050端口到默认区域

firewall-cmd --add-port={2048,2049,2050}/udp

4:设置地址转换:

(1)设置 SNAT

firewall-cmd --zone=public --direct --passthrough ipv4 -t nat -A POSTROUTING -s 192.168.80.0/24 -j SNAT --to-source 12.0.0.1

(2)设置 DNAT

firewall-cmd --zone=public --direct --passthrough ipv4 -t nat -A PREROUTING -d 12.0.0.1 -p tcp --dport 80 -j DNAT --to-destination 192.168.80.11

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

小小的提到下firewall富规则

firewalld的富规则可以定义更复杂强大的防火墙规则
语法:

fiewall-cmd [--permanent] --add-rich-rule="rich rule"

这里不做过多赘述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/555527.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何使用ChatGPT对论文进行润色

本文提供两种基于chatGPT的润色方式&#xff1a; &#xff08;1&#xff09;在chatGPT中利用editGPT插件润色 &#xff08;2&#xff09;chatGPT对话框引导chatGPT按照具体的意见进行润色。 1. 安装editGPT插件 问&#xff1a;为什么安装 editGPT&#xff1f; 答&#xff1a;…

STM32手柄PS2

PS2手柄介绍 PS2手柄由手柄与接收器两部分组成&#xff0c;手柄主要负责发送按键信息&#xff1b;接收器与单片机&#xff08;也可叫做主机&#xff09;相连&#xff0c;用于接收手柄发来的信息&#xff0c;并传递给单片机&#xff0c;单片机也可通过接收器&#xff0c;向手柄…

提示词工程师入门 百度文心Prompt课之十大技巧(适用所有AI大模型)

Promot知识 大模型基本原理 给模型输入什么数据&#xff0c;模型就会尝试学习什么内容Prompt十个技巧 三大类 迭代法 1、定基础 优先保证任务生成主体能够生成出我们想要的内容细节形式 在给出任务生成主体的情况下&#xff0c;模型生成效果较差&#xff0c;可增加细节词也无济…

百度API实现logo商标识别接口介绍

作者介绍 严松&#xff0c;男&#xff0c;西安工程大学电子信息学院&#xff0c;2022级研究生 研究方向&#xff1a;机器人抓取检测 电子邮件&#xff1a;2448052777qq.com 王泽宇&#xff0c;男&#xff0c;西安工程大学电子信息学院&#xff0c;2022级研究生&#xff0c;张…

建设一站式DevOps平台,腾讯云研发效能提升实践

本文作者&#xff1a;张渝 导语 | 近年来&#xff0c;研发效能提升越来越受到业界重视&#xff0c;许多厂商都在不断探索研发效能提升之路&#xff0c;从而实现研发效率和质量的持续优化&#xff0c;以应对日趋复杂的产品开发。那么腾讯云的研发效能相关工作是如何开展和落地的…

【遥感图像】目标检测系列.1

目录 Unsupervised Domain Adaptation for Cloud Detection Based on Grouped Features Alignment and Entropy Minimization, TGRS2022 Semi-Supervised Cloud Detection in Satellite Images by Considering the Domain Shift Problem, RS2022 CoF-Net: A Progressive Coa…

深度学习笔记之递归网络(四)铺垫:Softmax函数的反向传播过程

深度学习笔记之递归网络——铺垫&#xff1a;Softmax的反向传播过程 引言总结&#xff1a;递归神经网络的前馈计算过程场景构建前馈计算描述 铺垫&#xff1a; Softmax \text{Softmax} Softmax的反向传播过程场景构建 Softmax \text{Softmax} Softmax反向传播过程 引言 上一节…

OpenSIPS 3.1 负载均衡 MRCP 服务器的实现

文章目录 1. 方案设计2. 实现方式2.1 FreeSWITCH 的配置2.2 OpenSIPS 3.1 的配置2.2.1 OpenSIPS 保存 MRCP 服务器地址2.2.2 OpenSIPS 脚本开发 2.3 实现效果 1. 方案设计 FreeSWITCH 通过 unimrcp 模块来对接 MRCP 服务器&#xff0c;该模块在启动时会根据 mrcp profile 配置…

【Java|golang】1080. 根到叶路径上的不足节点--dfs

给你二叉树的根节点 root 和一个整数 limit &#xff0c;请你同时删除树中所有 不足节点 &#xff0c;并返回最终二叉树的根节点。 假如通过节点 node 的每种可能的 “根-叶” 路径上值的总和全都小于给定的 limit&#xff0c;则该节点被称之为 不足节点 &#xff0c;需要被删…

【Linux基本指令(2)】几十条指令快速入手Linux/深入理解什么是指令

本文思维导图&#xff1a; 文章目录 Tips&#xff1a;7.man指令&#xff08;重要&#xff09;&#xff1a;echo指令和输出重定向&#xff0c;追加重定向&#xff0c;输入重定向 8、cp指令&#xff08;重要&#xff09;9.mv指令&#xff08;重要&#xff09;10.cat指令11.more指…

weblogic CVE 2017-10271

weblogic ip :192.168.27.128:7001 使用weblogicscan对目标进行探测 python3 WeblogicScan.py -u 192.168.27.128 -p 7001 扫到了不少洞&#xff0c;现在开搞2017-10271 漏洞原理 CVE-2017-10271漏洞主要是由WebLogic Server WLS组件远程命令执行漏洞&#xff0c;主要由wls-…

自动化如何做?爆肝整理企业自动化测试工具/框架选择实施,你要的都有...

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 Python自动化测试&…

电容的电介吸收性质

电介质吸收 我们首先讨论电介质吸收&#xff0c; 也称为“浸润” &#xff0c; 有时也称为“电介质迟滞” &#xff0c; 这可能是我们了解最少而潜在破坏性最高的一种电容效应。 放电时&#xff0c; 多数电容都不愿意放弃之前所拥有的全部电荷。 图2 显示了这一效应。 电容在时…

科技云报道:穿行数字经济时代,数据如何找到“安全感”?

科技云报道原创。 数据作为数字经济时代的新型生产要素&#xff0c;正快速融入经济社会的方方面面&#xff0c;甚至常常被形容为“未来的石油”。 在数字经济时代&#xff0c;数据安全与数据流通同等重要。但随着我国数字经济驶入快车道&#xff0c;数据流动和安全发展的矛盾…

idea中关联Git

注意&#xff1a;未安装和配置Git软件&#xff0c;请先跳转到 Git宝典_没办法&#xff0c;我就是这么菜的博客-CSDN博客 idea关联git 关联git.exe 选择你的Version Control 下的Git 选择你的Git安装目录bin下的git.exe&#xff0c;点击ok 点击Test&#xff0c;显示版本号…

opencv文字识别

OpenCV&#xff08;开源计算机视觉库&#xff09;是一个用于实现计算机视觉和机器学习的开源库。它包含了许多预先训练的模型和算法&#xff0c;可以帮助开发者快速实现图像处理、对象检测和识别等功能。在文字识别方面&#xff0c;OpenCV也有一些实用的工具和方法。 要在OpenC…

【使用ChatGPT写思维导图】

内容目录 一、利用ChatGPT生成思维导图内容1. 打开ChatGPT&#xff1a;2. 输入需求&#xff1a;3. 复制&#xff1a; 二、制作生成思维导图1. 打开思维导图制作网站&#xff1a;2. 网页版下侧 - Try it out → - 粘贴Markdown内容&#xff0c;就会自动生成。3. 自行下载。 一、…

四川省信创联盟2023年第一次理事会顺利召开,MIAOYUN荣获“信创企业优秀奖”!

5月18日&#xff0c;四川省技术创新促进会信创工委会&#xff08;四川省信创产业联盟&#xff09;在成都市高新区新川科技园成功召开《2023年第一次理事单位&#xff08;扩大&#xff09;会议》&#xff0c;四川省技术创新促进会专家组杜纯文副组长、四川省技术创新促进会任渝英…

构建完善的帮助中心,降低企业客户服务成本

随着信息技术的发展和应用的普及&#xff0c;越来越多的企业已开始意识到&#xff0c;通过构建完善的帮助中心&#xff0c;可以有效地降低企业客户服务成本&#xff0c;提高客户满意度。一个完善的帮助中心不仅仅是企业用于回答客户问题的工具&#xff0c;更是客户自主获取和消…

vite + electron 构建前端桌面应用程序

文章目录 一、创建 vite 项目二、构建 Electron 项目三、打包 Electron 桌面程序四、项目地址 一、创建 vite 项目 npm npm create vitelatestyarn yarn create vite选择是否继续 Need to install the following packages:create-vite3.2.1 Ok to proceed? (y) y项目名称 P…