防火墙..

news2024/11/15 17:16:29

目录

1.什么是防火墙

1.1分类

1.2.Netfilter(数据包过滤)

1.2.1定义

1.2.2Netfilter分析内容

1.3防火墙无法完成的任务

1.4iptables 与firewalld区别

2.iptables

2.1iptables执行原则

2.1.1原则

2.1.2防火墙规则

2.2规则链

2.2.1概念

2.2.2分析

2.2.3规则链分类

2.2.4规则链之间的匹配顺序

2.2.5iptables流量处理动作

2.3iptables表

2.3.1四种规则表

2.4安装iptables

2.4.1预处理

2.4.2管理命令

2.4.3规则链存储文件

2.5iptables命令​​​​​​​

2.5.1原则

2.5.2格式

2.5.3参数

2.5.4示例

2.5.5实验

3.firewalld

3.1概述

3.1.1概念

3.1.2firewalld特点


1.什么是防火墙


•防火墙是位于内部网和外部网之间的屏障,它按照系统管理员预先定义好的规则来控制数据包的进出。


1.1分类


•硬件防火墙:由厂商设计好的主机硬件,其操作系统主要以提供数据包数据的过滤机制为主,并去掉不必要的功能
•软件防火墙:保护系统网络安全的一套软件(或称为机制),如Netfilter(数据包过滤机制)


1.2.Netfilter(数据包过滤)


1.2.1定义


onetfilter是一个工作在Linux内核的网络数据包处理框架,用于分析进入主机的网络数据包,将数据包的头部数据(硬件地址软件地址,TCP、UDP、ICMP等)提取出来进行分析,以决定该连接为放行或抵挡的机制,主要用于分析OSI七层协议的2、3、4层。
 


1.2.2Netfilter分析内容


•拒绝让lnternet的数据包进入主机的某些端口
•拒绝某些来源lP的数据包进入
•拒绝让带有某些特殊标志(flag)的数据包进入,如:带有SYN的主动连接标志
•分析MAC地址决定是否连接


1.3防火墙无法完成的任务


•防火墙并不能杀毒或清除木马程序(假设主机开放了www服务,防火墙的设置是一定要将www服务的port开放给client端的。假设www服务器软件有漏洞,或者请求www服务的数据包本身就是病每的一部分时,防火墙止不了的)
•防火墙无法阻止来自内部LAN的攻击(防火墙对于内部的规则设置通常比较少,所以就很容易造成内部员工对于网络无用或滥用的情况)


1.4iptables 与firewalld区别


•onetfilter数据包过滤机制是由linux内核内建的,不同的内核版本使用的设置防火墙策略的软件不一样,从红帽7系统开始firewalld服务取代了iptables服务
•iptables 与firewalld都不是真正的防火墙,它们都只是用来定义防火墙策略的防火墙管理工具而已,即只是一种服务,而真正使用规则干活的是内核的netfilter
•总之,当前Linux系统中存在多个防火墙管理工具,旨在方便运维人员管理Linux系统中的防火墙策略,我们只需要配置妥当其中的一个就足够了。虽然这些工具各有优劣,但它们在防火墙策略的配置思路上是保持一致的


2.iptables


•早期的Linux系统中,默认使用iptables防火墙来管理服务和配置防火墙,虽然新型的
firewalld防火墙管理服务已经被投入使用多年,但iptables在当前生产环境中还继续使用,具有顽强的生命力
 


2.1iptables执行原则

2.1.1原则


•防火墙会从上至下的顺序来读取配置的策略规则,在找到匹配项后就立即结束匹配工作并去执行
匹配项中定义的行为(即放行或阻止)。
•如果在读取完所有的策略规则之后没有匹配项,就去执行默认的策略


2.1.2防火墙规则


•通(放行、允许)

•堵(阻止、拒绝)
•当默认策略为拒绝时,就要设置允许规则,否则数据包都进不来;若默认策略为允时,就要设置拒绝规则,否则数据包都能进来防火墙也就失去了作用


2.2规则链


2.2.1概念


iptables服务把用于过滤流量的策略条目称之为规则,多条规则组成一个规则链


2.2.2分析


•数据包经过iptables处理必须闯过5个控制关卡,每个关卡放置5个规则链用于检查规则和处理,每一道关卡中有多个规则,数据报文必须按顺序一个一个匹配这些规则,这些规则串起来就像一条链,所以我们把这些关卡都叫规则链


2.2.3规则链分类
 


• INPUT链:数据包流入时,即数据包从内核流入用户空间
• OUTPUT链:向外发送数据包(流出)时,即数据包从用户空间流出到内核空间,一般不配置
•FORWARD链:处理数据包转发时,即在内核空间中,从一个网络接口进入,到另一个网络接口去
•PREROUTING链:在对数据包作路由选择之前,即互联网进入局域网
•POSTROUTING链:在对数据包作路由洗择之后,即局城网出互联网


注意:从内网向外网发送的流量-般都是可控且良性的,因此使用最多的是INPUT规则链,该规
则链可以增大黑客人员从外网入侵内网的难度
例:物业管理公司有两条规定
。禁止小商小贩进入社区;
。各种车辆在进入社区时都要登记。
。这两条规定是用于社区正门的(流量必须经过的地方),而不是每家的防盗门。根据防火墙策
略的匹配顺序,可能会存在多种情况。
o如:来访人员是小商小贩,则会被保安拒之门外,也就无需再对车辆进行登记。若来访人员乘
坐一辆汽车进入社区正门,则"禁止小商小贩进入社区""的第一条规则就没有被匹配到,因此按照顺序匹配第二条策略,即需要对车辆进行登记。如果是社区居民要进入正门,则这两条规定都不会匹配到,因此会执行默认的放行策略
 


2.2.4规则链之间的匹配顺序


**主机型防火墙:
。入站数据(来自外界的数据包,且目标地址是防火墙本机):PREROUTING-->INPUT -->本机的应用程序
。出站数据(从防火墙本机向外部地址发送的数据包):本机的应用程序->OUTPUT -->POSTROUTING
·网络型防火墙:转发数据(需要经过防火墙转发的数据包):PREROUTING --> FORWARD -->POSTROUTING
·规则链内的匹配顺序
。自上向下按顺序依次进行检查,找到相匹配的规则即停止(LOG策略例外,表示记录相关日志)
。若在该链内找不到相匹配的规则,则按该链的默认策略处理(未修改的状况下,默认策略为允许)
 


2.2.5iptables流量处理动作


•当规则链匹配后应采用以下几种动作来处理匹配流量
• ACCEPT:允许流量通过
•REJECT:拒绝流量通过,拒绝后回复拒绝信息
• LoG:记录日志信息
•DROP:拒绝流量通过,流量丢弃不响应
•例:若某天您正在家里看电视,突然听到有人敲门,透过防盗门的猫眼一看是推销商品的,便会
在不需要的情况下开门并拒绝他们(REJECT)。但如果您看到的是债主带了十几个小弟来讨债,此时不仅要拒绝开门,还要默不作声,伪装成自己不在家的样子(DROP)


2.3iptables表


•规则链容纳了各种流量匹配规则规则表则存储了不同功能对应的规则链,总之表里有链,链里
有规则


2.3.1四种规则表


**filter表:用于对数据包过滤,根据具体的规则决定是否放行该数据包(如DROP、ACCEPT、REJECT、LOG),包含三个规则链,INPUT、FORWARD、OUTPUT,所谓的防火墙其实基本
上是指这张表上的过滤规则,常用*
nat表: network address translation,网络地址转换功能,主要用于修改数据包的源、目
标IP地址、端口,包含三个规则链,OUTPUT、PREROUTING、POSTROUTING
mangle表:拆解报文,做出修改,并重新封装,主要用于修改数据包的TOS(Type of
Service,服务类型)、TTL(Time To Live,生存周期)指以及为数据包设置Mark标记,由于需要相应的路由设备支持,因此应用并不广泛,包含全部五个规则链
raw表:是自1.2.9以后版本的iptables新增的表,用于是否对该数据包进行状态跟踪,在匹配数据包时,raw表的规则要优先于其他表,包含两个规则链,OUTPUT、PREROUTING
·注意:最终定义的防火墙规则链都会添加到这四张表中的其中一张表中


2.4安装iptables


2.4.1预处理


。RHEL(Centos)9中默认使用的是firewalld,且与iptables之间有冲突,如果需要使用iptables需要先停止firewalld再进行安装
 

2.4.2管理命令

2.4.3规则链存储文件


2.5iptables命令

2.5.1原则


•iptables命令根据流量的源地址目的地址、传输协议、服务类型等信息进行匹配,若匹配成,
则iptables 会根据策略规则所预设的动作来处理这些流量,由于策略规则的匹配顺序是从上至下,则要把较为严格、优先级较高的策略规则放到前面,以免发生错误


2.5.2格式


•简化:

•详细:

2.5.3参数


2.5.4示例


•查看已有的防火墙规则链


•清空规则

2.5.5实验

•实验1:搭建web服务器,设置任何人都能通过80端口访问http服务

•实验2:禁止所有人使用ssh进行远程登录


3.firewalld


3.1概述

3.1.1概念


•firewalld (Dynamic Firewall Manager of Linux systems,Linux系统的动态防火墙管理器)服务是默认的防火墙配置管理工具,从RHEL 7开始,用firewalld服务替代了iptables服务RHEL 9采用firewalld管理netfilter子系统,默认情况,firewalld则是交由内核层面的nftables包过滤框架来处理

3.1.2firewalld特点


•firewalld可以动态修改单条规则不需要像iptables那样,修改规则后必须全部刷新才可生效
firewalld默认动作是拒绝,则每个服务都需要去设置才能放行,而iptables里默认是每个服务是允许,需要拒绝的才去限制
•iptables防火墙类型为静态防火墙firewalld 防火墙类型为动态防火墙
firewall必和iptables一样自身并不具备防火墙功能,它们的作用都是用于维护规则,而真正使用规则干活的是内核防火墙模块
firewalld 加入了区域(zone)概念

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

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

相关文章

leetcode:反转链表

题目描述 题目链接:206. 反转链表 - 力扣(LeetCode) 分析题目 思路一 我们可以设计算法让整个链表掉头 定义三个代码n1,n2,n3 n1指向NULL,n2指向head,n3指向第二个结点 当n2不为NULL的时候,让n2->ne…

fastdfs-client-java-1.30 maven 打包安装

1. 进入源代码目录,打开cmd mvn clean install 或者 mvn package 问题不大的话会在同级目录target目录下生成打包后文件 2. 当前目录下cmd进行maven安装 mvn install:install-file -DgroupIdorg.csource -DartifactIdfastdfs-client-java -Dversion${version} -D…

CompletableFuture.join() vs Future.get(),开发中哪个更好

CompletableFuture和Future都是Java中的接口,用于异步编程和并发处理。 Future表示一种异步计算的结果,可以通过get()方法获取计算结果或等待计算的完成。但是,如果计算还未完成,get()方法会阻塞线程,这会影响并发性能…

虾皮台湾站点什么好卖

在如今的电商时代,越来越多的人选择通过网购来满足购物需求。而中国台湾地区作为一个充满机遇的市场,吸引了许多商家的目光。虾皮作为台湾地区最大的电商平台之一,为卖家提供了丰富的销售机会。但是,卖家们在选择什么产品来销售时…

文档明明在桌面上却不显示?5个方法轻松解决!

“我之前保存文档的时候明明选择保存在桌面,上次看的时候文件还在,但是今天打开电脑后发现我保存在桌面的文档不见了,这是为什么呢?还有机会找回我的文件吗?” 在日常使用电脑时,有些用户为了方便&#xff…

大势智慧代理商体系持续开疆拓土,全国代理火热招募中...

11月15日,武汉大势智慧科技有限公司(后简称“大势智慧”)与上海宝天信息科技有限公司(后简称“宝天信息”)金牌代理商签约授牌仪式成功举行。大势智慧副总裁周济安先生、宝天信息经理王芳女士分别作为双方签约代表出席…

virtuoso 后仿 ADE L error

ADE后仿时出现error ERROR (SFE-23): "input.scs" 299: The instance _57_D32_noxref is referencing an undefined model or subcircuit, parasitic_nwd. Either include the file containing the definition of parasitic_nwd, or define parasitic_nwd before run…

STM32定时器输入捕获测量高电平时间

STM32定时器输入捕获测量高电平时间 输入捕获测量高电平时间CuebMX配置代码部分 本篇内容要求读者对STM32通用定时器有一点理解,如有不解,请看 夜深人静学32系列15——通用定时器 输入捕获 输入捕获是STM32通用定时器的一种功能,可以捕获特定…

mysql数据库【进阶篇】

1.存储引擎 1.1 mysql的体系结构 连接层:最上层是一些客户端和链接服务,主要完成- -些类似于连接处理、授权认证、及相关的安全方案。服务器也会为安全接入的每个客户端验证它所具有的操作权限。服务层:第二层架构主要完成大多数的核心服务功…

Scrum敏捷开发培训团队和组织来说的重要性

Scrum敏捷开发培训对于团队和组织来说是至关重要的,有以下几点,大家可以参考下: 理解敏捷价值观和原则: 培训有助于团队理解敏捷方法背后的核心理念和价值观,包括个体和互动、工作软件、客户合作和响应变化。这有助于建…

解决Spring Boot应用在Kubernetes上健康检查接口返回OUT_OF_SERVICE的问题

现象 在将Spring Boot应用部署到Kubernetes上时,健康检查接口/actuator/health返回的状态为{"status":"OUT_OF_SERVICE","groups":["liveness","readiness"]},而期望的是返回正常的健康状态。值得注…

单脉冲测角-和差比幅法-方向图传播因子-函数编写

方向图传播因子-函数编写 和差比幅法单脉冲测角原理代码仿真结果参数说明 和差比幅法单脉冲测角原理 有关单脉冲测角和差比幅法的原理已经在博文单脉冲测角-和差比幅法中详细介绍了,我们在实际仿真的时候,往往需要在给定来波方向下方向图转化因子&#…

关于代码混淆,看这篇就够了

​ 代码混淆一.基本概念java的bytecode很容易通过JAD等反编译工具还原出源代码。这样势必不满足安全的定义。如何一定程度上保护需要防止被反编译的源代码呢?混淆(obfuscate)技术。注意:用obfuscate防盗版是根本不可能&#xff0c…

java 实现发送邮箱,复制即用,包含邮箱设置第三方登录授权码获取方法

application.yml spring:profiles:active: dev # active: test#邮件附件上传文件大小限制servlet:multipart:max-file-size: 50MB #单个文件大小限制max-request-size: 100MB #总文件大小限制(允许存储文件的文件夹大小)mail:default-encoding: UTF…

[uni-app] uni.showToast 一闪而过问题/设定时间无效/1秒即逝

toast一闪就消失 1.猜测频繁点击导致 – 排除 2.猜测再定时器内导致-- 排除 3.和封装的接口调用一起导致 - 是改原因 深挖发现: axios封装中, 对loading/hindloading进行了配置, 看来是 showToast 与 loading等冲突导致的 wx.hideLoading(Object object) 解决办法 再封装的…

数据结构与算法之美学习笔记:23 | 二叉树基础(上):什么样的二叉树适合用数组来存储?

目录 前言树(Tree)二叉树(Binary Tree)二叉树的遍历解答开篇 & 内容小结 前言 本节课程思维导图: 前面我们讲的都是线性表结构,栈、队列、链表等等。今天我们讲一种非线性表结构,树。问题&…

开源免费的流程设计器如何选型

大家在开发OA办公自动化、ERP、CRM、BPM、低代码平台等项目的时候,经常用到流程引擎,目前主流的开源流程引擎有activiti、flowable、camunda。这几个开源的流程引擎均基于BPMN2.0国际规范标准,其功能均比较强大,接口也很丰富。但涉…

远程数据采集继电器RTU如何应用在智能电动汽车充电桩

远程数据采集继电器(Remote Terminal Unit,RTU)在智能电动汽车充电桩中的应用,可以为充电桩系统提供更高效、安全和可靠的远程监控与控制功能。下面将详细说明RTU在智能电动汽车充电桩中的应用。 远程监控功能: RTU可以…

找不到msvcp110.dll怎么办,msvcp110.dll丢失的修复方法

您可能已经碰见过这样的情况,当您试图打开某个软件时,屏幕上突然跳出一个提示窗口,告诉您 “找不到msvcp110.dll”,“msvcp110.dll丢失”。遇到这种情况是不是让人很焦头烂额呀?别担心,接下来我就为您提供几…

NX二次开发UF_CAM_ask_clear_plane_tag 函数介绍

文章作者:里海 来源网站:里海NX二次开发3000例专栏 UF_CAM_ask_clear_plane_tag Defined in: uf_cam_planes.h int UF_CAM_ask_clear_plane_tag(tag_t object_tag, tag_t * target_tag ) overview 概述 Query the tag of a clearance plane 查询清洁…