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

【firewalld防火墙】

目录

  • 一、firewalld概述
  • 二、firewalld 与 iptables 的区别
    • 1、firewalld 区域的概念
  • 三、firewalld防火墙默认的9个区域
  • 四、Firewalld 网络区域
    • 1、区域介绍
    • 2、firewalld数据处理流程
  • 五、firewalld防火墙的配置方法
    • 1、使用firewall-cmd 命令行工具。
    • 2、使用firewall-config 图形工具。
    • 3、区域管理
    • 4、服务管理
    • 5、端口管理
    • 6、设置地址转换


一、firewalld概述

1、firewalld防火墙是Centos7系统默认的防火墙管理工具,取代了之前的iptables防火墙,也是工作在网络层,属于包过滤防火墙。

2、firewalld和iptables都是用来管理防火墙的工具(属于用户态)来定义防火墙的各种规则功能,内部结构都指向netfilter网络过过滤子系统(属于内核态)来实现包过滤防火墙功能。字号4

3、firewalld提供了支持网络区域所定义的网络链接以及接口安全等级的动态防火墙管理工具。 它支持IPv4、IPv6防火墙设置以及以太网桥(在某些高级服务可能会用到,比如云计算), 并且拥有两种配置模式:运行时配置与永久配置。

二、firewalld 与 iptables 的区别

1.
iptables 主要是基于接口,来设置规则,从而判断网络的安全性。
firewalld 是基于区域,根据不同的区域来设置不同的规则,从而保证网络的安全。与硬件防火墙的设置相类似。

2.
iptables 在 /etc/sysconfig/iptables 中储存配置
firewalld 将配置储存在 /etc/firewalld/(优先加载) 和 /usr/lib/firewalld/(默认的配置文件)中的各种 XML 文件里。

在这里插入图片描述

默认使用的公共规则
在这里插入图片描述

3.
使用 iptables 规则修改后会立即生效
使用 firewalld 却不会再创建任何新的规则仅仅运行规则中的不同之处。因此firewalld 可以在运行时间内,改变设置而不丢失现行连接。

4、iptables 防火墙类型为静态防火墙
firewalld 防火墙类型为动态防火墙

在这里插入图片描述

1、firewalld 区域的概念

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

1、规则定义区域
区域与网卡或源地址绑定

区域1  (定义规则,如放通HTTP/TFP/DNS ... ) ——> 网卡 绑定

三、firewalld防火墙默认的9个区域

ls /etc/firewalld/zones   #文件里优先使用 public.xml	区域文件cd /usr/lib/firewalld/   
#在优先的区域文件里没有找到对应的区域就在这里面找到默认区域
cd zones/      #默认区域配置文件

在这里插入图片描述

firewalld防火墙预定义了9个区域:

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

四、Firewalld 网络区域

1、区域介绍

区域如同进入主机的安全门,每个区域都具有不同限制程度的规则

可以使用一个或多个区域,但是任何一个活跃区域至少需要关联源地址或接口

默认情况下,public区域是默认区域,包含所有接口(网卡)

在这里插入图片描述

2、firewalld数据处理流程

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

五、firewalld防火墙的配置方法

1、使用firewall-cmd 命令行工具。2、使用firewall-config 图形工具。3、编写/etc/firewalld/中的配置文件。

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

常用的firewall-cmd 命令选项

--get-default-zone :显示当前默认区域--set-default-zone=<zone> :设置默认区域--get-active-zones :显示当前正在使用的区域及其对应的网卡接口--get-zones :显示所有可用的区域--get-zone-of-interface=<interface> :显示指定接口绑定的区域--zone=<zone> --add-interface=<interface> :为指定接口绑定区域--zone=<zone> --change-interface=<interface> :为指定的区域更改绑定的网络接口--zone=<zone> --remove-interface=<interface> :为指定的区域删除绑定的网络接口--zone=<zone> --add-source=<source> 	为指定源地址绑定区域--zone=<zone> --change-source=<source>	为指定的区域更改绑定的源地址--zone=<zone> --remove-source=<source>	为指定的区域删除绑定的源地址
--list-all-zones :显示所有区域及其规则[--zone=<zone>] --list-all :显示所有指定区域的所有规则,省略--zone=<zone>时表示仅对默认区域操作[--zone=<zone>] --list-services :显示指定区域内允许访问的所有服务[--zone=<zone>] --add-service=<service> :为指定区域设置允许访问的某项服务[--zone=<zone>] --remove-service=<service> :删除指定区域已设置的允许访问的某项服务[--zone=<zone>] --list-ports :显示指定区域内允许访问的所有端口号[--zone=<zone>] --add-port=<portid>[-<portid>]/<protocol> :为指定区域设置允许访问的某个/某段端口号(包括协议名)[--zone=<zone>] --remove-port=<portid>[-<portid>]/<protocol> :删除指定区域已设置的允许访问的端口号(包括协议名)[--zone=<zone>] --list-icmp-blocks :显示指定区域内拒绝访问的所有 ICMP 类型[--zone=<zone>] --add-icmp-block=<icmptype> :为指定区域设置拒绝访问的某项 ICMP 类型[--zone=<zone>] --remove-icmp-block=<icmptype> :删除指定区域已设置的拒绝访问的某项ICMP类型firewall-cmd --get-icmptypes :显示所有 ICMP 类型

1、–get-default-zone :显示当前默认区域
2、–get-zone-of-interface= :显示指定接口绑定的区域

在这里插入图片描述

#为指定的区域删除绑定的网络接口[root@dz666 ~]# firewall-cmd --remove-interface=ens35 --zone=public
success[root@dz666 ~]# firewall-cmd --get-zone-of-interface=ens35
no zone

1、–zone=<区域> --add-interface= :为指定接口绑定区域

在这里插入图片描述
1、–zone= --change-interface= :为指定的区域更改绑定的网络接口

在这里插入图片描述

1、–zone= --remove-interface= :为指定的区域删除绑定的网络接口

在这里插入图片描述

1、–zone= --change-source= 为指定的区域更改绑定的源地址
2、–zone= --remove-source= 为指定的区域删除绑定的源地址

在这里插入图片描述

1、–list-all-zones :显示所有区域及其规则
在这里插入图片描述

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

在这里插入图片描述

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

在这里插入图片描述

1、firewall-cmd --get-icmptypes :显示所有 ICMP 类型

在这里插入图片描述

1、[–zone=] --list-icmp-blocks :显示指定区域内拒绝访问的所有 ICMP 类型
2、[–zone=] --add-icmp-block= :为指定区域设置拒绝访问的某项 ICMP 类型
3、[–zone=] --remove-icmp-block= :删除指定区域已设置的拒绝访问的某项ICMP类型

在这里插入图片描述

2、使用firewall-config 图形工具。

systemctl start firewalld.service
#进入图形工具时要先打开防火墙

在里面选择要开放哪些协议直接将协议点击选择
在这里插入图片描述

3、区域管理

(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

在这里插入图片描述

4、服务管理

(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		

设置成永久生效
在这里插入图片描述

显示区域的规则
在这里插入图片描述

5、端口管理

(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

6、设置地址转换

(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

相关文章:

【firewalld防火墙】

目录 一、firewalld概述二、firewalld 与 iptables 的区别1、firewalld 区域的概念 三、firewalld防火墙默认的9个区域四、Firewalld 网络区域1、区域介绍2、firewalld数据处理流程 五、firewalld防火墙的配置方法1、使用firewall-cmd 命令行工具。2、使用firewall-config 图形…...

CNNs: ZFNet之CNN的可视化网络介绍

CNNs: ZFNet之CNN的可视化网络介绍 导言Deconvnet1. Unpooling2. ReLU3. Transpose conv AlexNet网络修改AlexNet Deconv网络介绍特征可视化 导言 上一个内容&#xff0c;我们主要学习了AlexNet网络的实现、超参数对网络结果的影响以及网络中涉及到一些其他的知识点&#xff0…...

云原生之深入解析Airbnb的动态Kubernetes集群扩缩容

一、前言 Airbnb 基础设施的一个重要作用是保证我们的云能够根据需求上升或下降进行自动扩缩容&#xff0c;我们每天的流量波动都非常大&#xff0c;需要依靠动态扩缩容来保证服务的正常运行。为了支持扩缩容&#xff0c;Airbnb 使用了 Kubernetes 编排系统&#xff0c;并且使…...

Django框架之模板其他补充

本篇文章是对django框架模板内容的一些补充。包含注释、html转义和csrf内容。 目录 注释 单行注释 多行注释 HTML转义 Escape Safe Autoescape CSRF 防止csrf方式 表单中使用 ajax请求添加 注释 单行注释 语法&#xff1a;{# 注释内容 #} 示例&#xff1a; {# 注…...

安装Maven 3.6.1:图文详细教程(适用于Windows系统)

一、官网下载对应版本 推荐使用maven3.6.1版本&#xff0c;对应下载链接&#xff1a; Maven3.6.1下载地址 或者&#xff0c;这里提供csdn下载地址&#xff0c;点击下载即可&#xff1a; Maven3.6.1直链下载 其他版本下载地址&#xff1a; 进入网址&#xff1a;http://mave…...

计算机图形学 | 实验八:Phong模型

计算机图形学 | 实验八&#xff1a;Phong模型 计算机图形学 | 实验八&#xff1a;Phong模型Phong模型光源设置 光照计算定向光点光源聚光 华中科技大学《计算机图形学》课程 MOOC地址&#xff1a;计算机图形学&#xff08;HUST&#xff09; 计算机图形学 | 实验八&#xff1a…...

第三十一回:GestureDetector Widget

文章目录 概念介绍使用方法示例代码 我们在上一章回中介绍了ListView响应事件的内容t,本章回中将介绍 GestureDetector Widget.闲话休提&#xff0c;让我们一起Talk Flutter吧。 概念介绍 我们在这里介绍的GestureDetector是一个事件响应Widget,它可以响应双击事件&#xff0…...

Java面试知识点(全)-Java并发-多线程JUC三- JUC集合/线程池

Java面试知识点(全) 导航&#xff1a; https://nanxiang.blog.csdn.net/article/details/130640392 注&#xff1a;随时更新 JUC集合类 为什么HashTable慢? 它的并发度是什么? 那么ConcurrentHashMap并发度是什么? Hashtable之所以效率低下主要是因为其实现使用了synchro…...

Android 如何获取有效的DeviceId

目录 前言官方唯一标识符建议使用广告 ID使用实例 ID 和 GUID不要使用 MAC 地址标识符特性常见用例和适用的标识符 解决方案DeviceIdANDROID_IDMac地址UUID补充 总结 前言 从 Android 10 开始&#xff0c;应用必须具有 READ_PRIVILEGED_PHONE_STATE 特许权限才能访问设备的不可…...

<SQL>《SQL命令(含例句)精心整理版(2)》

《SQL命令&#xff08;含例句&#xff09;精心整理版&#xff08;2&#xff09;》 跳转《SQL命令&#xff08;含例句&#xff09;精心整理版&#xff08;1&#xff09;8 函数8.1 文本处理函数8.2 数值处理函数8.3 时间处理函数8.3.1 时间戳转化为自定义格式from_unixtime8.3.2 …...

完全自主研发,聚芯微发布3D dToF图像传感器芯片!

日前&#xff0c;由中国半导体行业协会IC设计分会&#xff08;ICCAD&#xff09;、芯原股份、松山湖管委会主办的主题为“AR/VR/XR元宇宙”的“2023松山湖中国IC创新高峰论坛”正式在广东东莞松山湖召开。武汉市聚芯微电子有限责任公司发布了完全自主知识产权的3D dToF图像传感…...

MySQL 事物(w字)

目录 事物 首先我们来看一个简单的问题 什么是事务 为什么会出现事务 事务的版本支持 事务提交方式 事务常见操作方式 设置隔离级别 事物操作 事物结论 事务隔离级别 理解隔离性 隔离级别 查看与设置隔离性 注意可重复读【Repeatable Read】的可能问题&#xff…...

字节跳动测试岗四面总结....

字节一面 1、 简单做一下自我介绍 2、 简要介绍一下项目/你负责的模块/选一个模块说一下你设计的用例 3 、get请求和post请求的区别 4、 如何判断前后端bug/3xx是什么意思 5、 说一下XXX项目中你做的接口测试/做了多少次 6、 http和https的区别 7、 考了几个ADB命令/查看…...

基于.NetCore开源的Windows的GIF录屏工具

推荐一个Github上Start超过20K的超火、好用的屏幕截图转换为 GIF 动图开源项目。 项目简介 这是基于.Net Core WPF 开发的、开源项目&#xff0c;可将屏幕截图转为 GIF 动画。它的核心功能是能够简单、快速地截取整个屏幕或者选定区域&#xff0c;并将其转为 GIF动画&#x…...

PCB 基础~典型的PCB设计流程,典型的PCB制造流程

典型的PCB设计流程 典型的PCB制造流程 • 从客户手中拿到Gerber&#xff0c; Drill以及其它PCB相关文件 • 准备PCB基片和薄片 – 铜箔的底片会被粘合在基材上 • 内层图像蚀刻 – 抗腐蚀的化学药水会涂在需要保留的铜箔上&#xff08;例如走线和过孔&#xff09; – 其他药水…...

Python logging使用

目录 logging模块 logging核心组件 logger handler StreamHandler&#xff1a;把日志内容在控制台中输出 FileHandler&#xff1a;把日志内容写入到文件中 filter formatter 注意日志级别的继承问题 logger.exception 上述样例的整体代码 日志的配置文件及其模板 lo…...

红黑树的实现原理和应用场景

红黑树的实现原理和应用场景&#xff1b; 有如图所示的表&#xff0c;现在希望查询的结果将列成行 建表语句如下&#xff1a; CREATE TABLE TEST_TB_GRADE2 ( ID int(10) NOT NULL AUTO_INCREMENT, USER_NAME varchar(20) DEFAULT NULL, CN_SCORE float DEFAULT NU…...

idea插件完成junit代码生成,和springboot代码示例

在idea环境下&#xff0c;可以用过插件的方式自动生成juint模板代码。不过具体要需要自己手动编写。 1、安装插件 打开idea&#xff0c;file–settings–plugins&#xff0c;搜索和安装插件&#xff08;JunitGenerator V2.0和JUnit&#xff09;&#xff0c;安装后&#xff0c;后…...

【Redis面试点总结】

1、缓存 1.1、穿透 查询一个空数据&#xff0c;mysql也查不到也不会写入缓存可能导致多次请求数据库 方案一&#xff1a;缓存设空即可&#xff08;可能发生数据不一致就是这条数据有了但此时缓存是空&#xff0c;消耗内存&#xff09; 方案二&#xff1a;布隆过滤器&#x…...

打卡智能中国(五):博士都去哪儿了?

《打卡智能中国》系列更新了几期&#xff0c;有读者表示&#xff0c;很爱看这类接地气的真实故事&#xff0c;也有读者反映&#xff0c;不是电工&#xff0c;就是文员、农民、治沙人&#xff0c;人工智能不是高精尖学科吗&#xff1f;那些学历很高的博士都去哪儿了&#xff1f;…...

基于ASP.NET+ SQL Server实现(Web)医院信息管理系统

医院信息管理系统 1. 课程设计内容 在 visual studio 2017 平台上&#xff0c;开发一个“医院信息管理系统”Web 程序。 2. 课程设计目的 综合运用 c#.net 知识&#xff0c;在 vs 2017 平台上&#xff0c;进行 ASP.NET 应用程序和简易网站的开发&#xff1b;初步熟悉开发一…...

Java如何权衡是使用无序的数组还是有序的数组

在 Java 中,选择有序数组还是无序数组取决于具体场景的性能需求与操作特点。以下是关键权衡因素及决策指南: ⚖️ 核心权衡维度 维度有序数组无序数组查询性能二分查找 O(log n) ✅线性扫描 O(n) ❌插入/删除需移位维护顺序 O(n) ❌直接操作尾部 O(1) ✅内存开销与无序数组相…...

《通信之道——从微积分到 5G》读书总结

第1章 绪 论 1.1 这是一本什么样的书 通信技术&#xff0c;说到底就是数学。 那些最基础、最本质的部分。 1.2 什么是通信 通信 发送方 接收方 承载信息的信号 解调出其中承载的信息 信息在发送方那里被加工成信号&#xff08;调制&#xff09; 把信息从信号中抽取出来&am…...

Cinnamon修改面板小工具图标

Cinnamon开始菜单-CSDN博客 设置模块都是做好的&#xff0c;比GNOME简单得多&#xff01; 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...

Python如何给视频添加音频和字幕

在Python中&#xff0c;给视频添加音频和字幕可以使用电影文件处理库MoviePy和字幕处理库Subtitles。下面将详细介绍如何使用这些库来实现视频的音频和字幕添加&#xff0c;包括必要的代码示例和详细解释。 环境准备 在开始之前&#xff0c;需要安装以下Python库&#xff1a;…...

让AI看见世界:MCP协议与服务器的工作原理

让AI看见世界&#xff1a;MCP协议与服务器的工作原理 MCP&#xff08;Model Context Protocol&#xff09;是一种创新的通信协议&#xff0c;旨在让大型语言模型能够安全、高效地与外部资源进行交互。在AI技术快速发展的今天&#xff0c;MCP正成为连接AI与现实世界的重要桥梁。…...

全志A40i android7.1 调试信息打印串口由uart0改为uart3

一&#xff0c;概述 1. 目的 将调试信息打印串口由uart0改为uart3。 2. 版本信息 Uboot版本&#xff1a;2014.07&#xff1b; Kernel版本&#xff1a;Linux-3.10&#xff1b; 二&#xff0c;Uboot 1. sys_config.fex改动 使能uart3(TX:PH00 RX:PH01)&#xff0c;并让boo…...

Linux离线(zip方式)安装docker

目录 基础信息操作系统信息docker信息 安装实例安装步骤示例 遇到的问题问题1&#xff1a;修改默认工作路径启动失败问题2 找不到对应组 基础信息 操作系统信息 OS版本&#xff1a;CentOS 7 64位 内核版本&#xff1a;3.10.0 相关命令&#xff1a; uname -rcat /etc/os-rele…...

多模态图像修复系统:基于深度学习的图片修复实现

多模态图像修复系统:基于深度学习的图片修复实现 1. 系统概述 本系统使用多模态大模型(Stable Diffusion Inpainting)实现图像修复功能,结合文本描述和图片输入,对指定区域进行内容修复。系统包含完整的数据处理、模型训练、推理部署流程。 import torch import numpy …...

热门Chrome扩展程序存在明文传输风险,用户隐私安全受威胁

赛门铁克威胁猎手团队最新报告披露&#xff0c;数款拥有数百万活跃用户的Chrome扩展程序正在通过未加密的HTTP连接静默泄露用户敏感数据&#xff0c;严重威胁用户隐私安全。 知名扩展程序存在明文传输风险 尽管宣称提供安全浏览、数据分析或便捷界面等功能&#xff0c;但SEMR…...