firewalld

一、Firewalld概述

  • Firewalld

        支持网络区域所定义的网络链接以及接口安全等级的动态防火墙管理工具

        支持IPV4、IPV6防火墙设置以及以太网桥

        支持服务或应用程序直接添加防火墙规则接口

        拥有两种配置模式

                运行时配置

                永久配置

二、Firewalld和iptables的关系

  • netfilter

        位于Linux内核中的包过滤功能体系

        称为Linux防火墙的“内核态”

  • Firewalld/iptables

        Centos默认的管理防火墙规则的工具

        称为防火墙的“用户态”

  • Firewalld和iptables的区别

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

三、Firewalld网络区域

  • 区域介绍

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

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

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

trusted
(信任区域)
允许所有的传入流量
public
(公共区域)
允许与ssh或dhcpv6-client预定义服务匹配的传入流量,其余均拒绝。是新添加网络接口的默认区域
external
(外部区域)
允许与 ssh 预定义服务匹配的传入流量,其余均拒绝。 默认将通过此区域转发的IPv4传出流量将进行地址伪装,可用于为路由器启用了伪装功能的外部网络
home
(家庭区域)
允许与ssh、mdns、samba-client或dhcpv6-client预定义服务匹配的传入流量,其余均拒绝
internal
(内部区域)
默认值时与home区域相同
work
(工作区域)
允许与 ssh、dhcpv6-client 预定义服务匹配的传入流量,其余均拒绝
dmz
(隔离区域也称为非军事区域)
允许与 ssh 预定义服务匹配的传入流量,其余均拒绝
block
(限制区域)
拒绝所有传入流量
drop
(丢弃区域)
丢弃所有传入流量,并且不产生包含 ICMP的错误响应
  • 最终一个区域的安全程度是取决于管理员在此区域中设置的规则;
  • 区域如同进入主机的安全门,每个区域都具有不同限制程度的规则,只会允许符合规则的流量传入;
  • 可以根据网络规模,使用一个或多个区域,但是任何一个 活跃区域 至少需要关联 源地址或接口;
  • 默认情况下,public区域是默认区域,包含所有接口(网卡)
  • Firewalld数据处理流程

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

  • 检查数据来源的源地址

        若源地址关联到特定的区域,则执行该区域所指定的规则

        若源地址未关联到特定的区域,则使用传入网络接口的区域并执行该区域所指定的规则

        若网络接口未关联到特定的区域,则使用默认区域并执行该区域所指定的规则

四、Firewalld防火墙的配置方法

  • 运行时配置

        实时生效,并持续至Firewalld重新启动或重新加载配置

        不中断现有连接

        不能修改服务配置

  • 永久配置

        不立即生效,除非Firewalld重新启动或重新加载配置

        中断现有连接

        可以修改服务配置


  • Firewalld-config图形工具
  • Firewalld-cmd命令行工具
  • /etc/firewalld/中的配置文件

        Firewalld会优先使用/etc/firewalld/中的配置,如果不存在配置文件,则使用/usr/lib/firewalld/中的配置

            /etc/firewalld/:用户自定义配置文件,需要时可通过从/etc/lib/firewalld/中拷贝

            /usr/lib/firewalld/:默认配置文件,不建议修改,若恢复至默认配置,可直接删除/etc/firewalld/中的配置


systemctl start firewalld.service
--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>[/<mask>]	:        #为指定源地址绑定区域
--zone=<zone> --change-source=<source>[/<mask>] :        #为指定的区域更改绑定的源地址
--zone=<zone> --remove-source=<source>[/<mask>] :        #为指定的区域删除绑定的源地址

--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 类型

  • 区域管理

        显示当前系统中的默认区域

firewall-cmd --get-default-zone

        显示默认区域的所有规则

firewall-cmd --list-all

        显示当前正在使用的区域及其对应的网卡接口

firewall-cmd --get-active-zones

        设置默认区域

firewall-cmd --set-default-zone=home
firewall-cmd --get-default-zone
  • 服务管理

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

firewall-cmd --list-service

        添加httpd 服务到public 区域

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

        查看public 区域已配置规则

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

        删除public 区域的httpd 服务

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

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

firewall-cmd --add-service=http --add-service=https --permanent
firewall-cmd --add-service={http,https,ftp} --zone=internal
firewall-cmd --reload	
firewall-cmd --list-all		
#添加使用 --permanent选项表示设置成永久生效,需要重新启动firewalld服务或执行firewall-cmd --reload命令 重新加载防火墙规则时才会生效。若不带有此选项,表示用于设置运行时规则,但是这些规则在系统或firewalld服务重启、停止时配置将失效。firewall-cmd --runtime-to-permanent:        #将当前的运行时配置写入规则配置文件中,使之成为永久性配置
  • 设置地址转换

        设置 SNAT

firewall-cmd --zone=区域 --direct --passthrough ipv4 -t nat -A POSTROUTING -s 源地址 -j SNAT --to-source 源地址转换地址

        设置 DNAT

firewall-cmd --zone=区域 --direct --passthrough ipv4 -t nat -A PREROUTING -d 目的地址 -p tcp --dport 目的端口 -j DNAT --to-destination 目的地址转换地址

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

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

相关文章

10个最佳Android数据恢复工具,用于恢复已删除的文件

由于我们现在在智能手机上存储了许多重要文件&#xff0c;因此了解数据恢复工具变得很重要。您永远不会知道何时需要使用适用于Android的数据恢复工具。 由于不乏Windows数据恢复工具&#xff0c;因此从崩溃的计算机中恢复文件很容易。但是&#xff0c;当涉及到从Android恢复数…

兆原数通基于Apache SeaTunnel的探索实践

随着大数据技术的不断发展&#xff0c;数据同步工具在企业中的应用变得愈发重要。为了满足复杂多样的业务需求&#xff0c;找到一款高效、灵活的数据同步工具变得尤为关键。 在这篇文章中&#xff0c;我们将分享兆原数通研发经理李洪军对Apache SeaTunnel的选择、应用及经验。这…

jinkens打包前端依赖下载失败怎么办

不知道有没有小伙伴遇见这种问题&#xff0c;项目在本地可以正常下载、运行打包&#xff0c;但在jinkens上就不行了&#xff0c;配置了几种镜像也还是不行&#xff0c;这要如何解决呢&#xff1f; 那就只能去到jinkens配置的工作空间那里&#xff0c;找到对应的项目 &#xff…

总结优秀的prompt案例,学习更有效的prompt提示词工程写法,值得收藏

Prompt 提示词工程大多数人都在用&#xff0c;而且都会用&#xff0c;但是不一定写的好&#xff1f;很多人都在想怎么写好&#xff0c;更能满足自己的业务需求&#xff0c;或者实际场景。 我最近工作中也写了很多的prompt&#xff0c;像zero-shot、few-shot、COT这些都尝试过、…

FSC认证是什么?森林认证的好处是什么?

FSC认证&#xff08;Forest Stewardship Council&#xff0c;森林管理委员会认证&#xff09;是一种运用市场机制来促进森林可持续经营&#xff0c;实现生态、社会和经济目标的工具。以下是关于FSC认证的详细介绍&#xff1a; 一、FSC认证包括两个方面&#xff1a; 森林经营认…

乡村振兴与农业现代化:以现代农业科技为引领,提升农业综合生产能力,打造高产高效、生态安全的美丽乡村

目录 一、引言 二、现代农业科技在乡村振兴中的作用 &#xff08;一&#xff09;提高农业生产效率 &#xff08;二&#xff09;促进农业产业升级 &#xff08;三&#xff09;改善农村生态环境 三、提升农业综合生产能力的途径 &#xff08;一&#xff09;加强农业科技研…

Diffusion Policy:基于扩散模型的机器人动作生成策略

项目地址&#xff1a; Diffusion Policy (columbia.edu) 一、摘要 本文介绍了 "扩散策略"&#xff0c;这是一种生成机器人行为的新方法&#xff0c;它将机器人的视觉运动策略&#xff08;visuomotor policy&#xff09;表示为条件去噪扩散过程&#xff08;conditi…

添加、修改和删除列表元素

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 添加、修改和删除列表元素也称为更新列表。在实际开发时&#xff0c;经常需要对列表进行更新。下面我们介绍如何实现列表元素的添加、修改和删除。 …

如何使用Matlab进行三角剖分(自定义函数实现delaunayTriangulation 使用Bowyer-Watson 算法)

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 目录 前言 一、Delaunay三角形 二、使用步骤 1.Bowyer-Watson算法 2.算法步骤 三、动画演示 四、核心代码 五、对比matlab自带函数和我们的算法&#xff1a; 总结 前…

谷歌开源项目BERT源码解读与应用实例

数据及代码见文末 基于BERT的中文情感分析实战:基于BERT的中文情感分析实战-CSDN博客 基于BERT的中文命名实体识别识别实战:基于BERT的中文命名实体识别识别实战-CSDN博客 1.项目配置文件 GLUE/BERT_BASE_DIR是项目的预训练权重,预训练权重主要包含3个部分:参数配置文件…

打气球小游戏

1.气球往上飘 我们声明两个符号常量来作为窗体的长和宽,接着就是常规操作 #define WINDOW_WIDTH 800 #define WINDOW_HEIGHT 600#include<easyx.h> #include<stdio.h> int main() {initgraph(WINDOW_WIDTH, WINDOW_HEIGHT);setbkcolor(WHITE);cleardevice();get…

python+selenium - UI自动框架之封装浏览器引擎driver方法

在做兼容性测试的适合&#xff0c;可以运行指定的浏览器&#xff08;IE,Chrome,Edge&#xff09; 目录文件&#xff1a; from selenium import webdriver from urllib3.exceptions import ProtocolError from common.log import *def getDriver():# if browserType is None:br…

模拟面试题

1.装箱和拆箱是指什么&#xff1f; 装箱——把栈中内容迁移到堆中去&#xff08;值转引用&#xff09; 拆箱——把堆中内容迁移到栈中去&#xff08;引用转值&#xff09; 2.值和引用类型在变量赋值时的区别是什么&#xff1f; 值类型&#xff1a;赋值时复制数据本身&a…

Gitee在已有项目基础上创建仓库中遇到的问题和解决

问题一&#xff1a;fatal: remote origin already exists 解释&#xff1a;当前仓库添加了一个名为"origin"的远程仓库配置&#xff0c;此时输入 git remote add origin https://xxx就会提示上面的内容。 解决方案1:移除旧的origin git remote remove origin 解决方案…

C++——mapset红黑树

目录 一补充知识 1关联式容器 2键值对 二set 1set的介绍 2set的使用 三map 1map的说明 2map的使用 四容器在oj中的使用 五AVL树 1概念 2插入 3AVL的旋转 3.1右单旋 3.2左单旋 3.3左右双旋 3.4右左双旋 4判断AVL树是否平衡 完整源代码 六红黑树 1概念 2性…

紫光展锐突破创新终端品类,搭载展锐芯的全球首款二合一5G云电脑正式发布

近日&#xff0c;搭载紫光展锐5G芯片T760的中兴云电脑逍遥系列正式发布&#xff0c;亮点&#xff1a; 全球首款二合一5G云电脑&#xff0c;支持本地/云端双模式&#xff0c;一键切换&#xff0c;用户可同时享有Android平板和Windows云电脑两种形态&#xff1b;支持5G蜂窝网络&…

C++相关概念和易错语法(13)(string的模拟实现)

string由于存在字符串和单字符的概念&#xff0c;使得它的一些接口&#xff0c;实现要比vector多一些。本质上来看string的实现是在顺序表的基础上加入串相关的操作。下面我会分享如何模拟实现string&#xff0c;这可以进一步提高我们对string的熟练程度。 1.构造函数、拷贝构…

附代码:策略常用-正余弦优化算法

正余弦优化算法作为群智能优化算法的一种, 正弦余弦算法 (sine cosine algorithm, SCA) 是 2016 年由 Mirjalili 提出的一种新型仿自然优化算法, 通过创建多个随机候选解, 利用正余弦函数的数学性质来平衡算法在搜系过程中的全局探索和局部开发能力。该算法具有结构简单、参数少…

docker三种自定义网络(虚拟网络) overlay实现原理

docker提供了三种自定义网络驱动&#xff1a;bridge、overlay、macvlan。 bridge驱动类似默认的bridge网络模式。 overlay和macvlan是用于创建跨主机网络。 支持自定义网段、网关&#xff0c;docker network create --subnet 172.77.0.0/24 --gateway 172.77.0.1 my_n…

PPT大珩助手新功能-生成迷宫

大珩助手是一款功能丰富的办公软件插件&#xff0c;它主要分为两个版本&#xff1a;PPT大珩助手和Word大珩助手。这两个版本都旨在提高用户在处理演示文稿和文档时的效率。 PPT大珩助手 这是一款专门为Microsoft PowerPoint设计的插件。它提供了多种功能&#xff0c;例如素材…