什么是防火墙?详解三种常见的防火墙及各自的优缺点

目录

防火墙的定义 

防火墙的功能

防火墙的特性

防火墙的必要性

防火墙的优点

防火墙的局限性

防火墙的分类

分组过滤防火墙

优点:

缺点:

应用代理防火墙 

优点

缺点

状态检测防火墙

优点

缺点


防火墙的定义 

防火墙的本义原是指古代人们房屋之间修建的墙,这道墙可以防止火灾发生的时候蔓延到别的房屋,如下图所示

在互联网上,防火墙是一种非常有效的网络安全系统,通过它可以隔离风险区域(Internet或有一定风险的网络)与安全区域(局域网)的连接,同时不会妨碍安全区域对风险区域的访问,网络防火墙结构如图所示

 

防火墙一般放置在被保护网络的边界,要使防火墙起到安全防御作用,必须做到三点:

  • 使所有进出被保护网络的通信数据流必须经过防火墙
  • 所有通过防火墙的通信必须经过安全策略的过滤或者防火墙的授权
  • 防火墙本身也必须是不可被侵入的

防火墙的功能

根据不同的需要,防火墙的功能有比较大差异,但是一般都包含以下三种基本功能:

  • 可以限制未授权的用户进入内部网络,过滤掉不安全的服务和非法用户
  • 防止入侵者接近网络防御设施
  • 限制内部用户访问特殊站点

由于防火墙假设了网络边界和服务,因此适合于相对独立的网络,例如Intranet(内部网)等种类相对集中的网络。Internet上的Web网站中,超过三分之一的站点都是有某种防火墙保护的,任何关键性的服务器,都应该放在防火墙之后

防火墙的特性

防火墙的必要性

随着世界各国信息基础设施的逐渐形成,国与国之间变得“近在咫尺”。Internet已经成为信息化社会发展的重要保证,深入到国家的政治、军事、经济、文教等诸多领域。 许多重要的政府宏观调控决策、商业经济信息、银行资金转帐、股票证券、能源资源数据、科研数据等重要信息都通过网络存贮、传输和处理。因此,难免会遭遇各种主动或被动的攻击。 例如信息泄漏、信息窃取、数据篡改、数据删除和计算机病毒等。因此,网络安全已经成为迫在眉睫的重要问题,没有网络安全就没有社会信息化

防火墙的优点

  • 防火墙对内部网实现了集中的安全管理,可以强化网络安全策略,比分散的主机管理更经济易行
  • 防火墙能防止非授权用户进入内部网络
  • 防火墙可以方便地监视网络的安全性并报警。 可以作为配置网络地址转换的地点,利用NAT技术,可以缓解地址空间的短缺,隐藏内部网的结构
  • 由于所有的访问都经过防火墙,防火墙是审计和记录网络访问和使用的最佳地方

防火墙的局限性

没有万能的网络安全技术,防火墙也不例外。防火墙有以下三方面的局限:

  • 防火墙不能防范网络内部的攻击。比如:防火墙无法禁止变节者或内部间谍将敏感数据拷贝到软盘上
  • 防火墙也不能防范那些伪装成超级用户或诈称新雇员的黑客们劝说没有防范心理的用户公开其口令,并授予其临时的网络访问权限
  • 防火墙不能防止传送己感染病毒的软件或文件,不能期望防火墙去对每一个文件进行扫描,查出潜在的病毒

防火墙的分类

常见的防火墙有三种类型:

  1. 分组过滤防火墙
  2. 应用代理防火墙
  3. 状态检测防火墙

分组过滤防火墙

分组过滤(Packet Filtering):也叫作包过滤防火墙,作用在协议组的网络层和传输层,根据分组包头源地址、目的地址和端口号、协议类型等标志确定是否允许数据包通过,只有满足过滤逻辑的数据包才被转发到相应的目的地的出口端,其余的数据包则从数据流中丢弃。

数据包过滤可以在网络层截获数据。使用一些规则来确定是否转发或丢弃所各个数据包。 通常情况下,如果规则中没有明确允许指定数据包的出入,那么数据包将被丢弃

防火墙审查每个数据包,以确定其是否与某条包过滤规则相匹配。 过滤规则基于IP转发所使用的包头信息,包括IP源/目的地址,内部协议(TCP/UDP/ICMP)、TCP/UDP目的端口号和ICMP消息类型等。 如果规则匹配失败,用户配置的默认参数会决定转发还是丢弃数据包。

一个可靠的分组过滤防火墙依赖于规则集,下表列出了几条典型的规则集:

  • 第一条规则:主机10.1.1.1任何端口访问任何主机的任何端口,基于TCP协议的数据包都允许通过
  • 第二条规则:任何主机的20端口访问主机10.1.1.1的任何端口,基于TCP协议的数据包允许通过
  • 第三条规则:任何主机的20端口访问主机10.1.1.1小于1024的端口,如果基于TCP协议的数据包都禁止通过 

优点:

  • 无需修改客户机和主机上的程序。因为工作在网络层和传输层,与应用层无关
  • 可以和现成的路由器集成,也可以软件实现 

缺点:

  • 不能区分出数据包的好坏
  • 需要广泛的TCP/IP知识
  • 需要创建大量规则,工作量大
  • 基于IP包头中的信息进行过滤容易受到欺骗攻击,例如伪造IP地址等

应用代理防火墙 

应用代理(Application Proxy):也叫应用网关(Application Gateway),它作用在应用层,其特点是完全“阻隔”网络通信流,通过对每种应用服务编制专门的代理程序,实现监视和控制应用层通信流的作用。实际中的应用网关通常由专用工作站实现。

应用代理是运行在防火墙上的一种服务器程序,防火墙主机可以是一个具有两个网络接口的双重宿主主机,也可以是一个堡垒主机。 代理服务器被放置在内部服务器和外部服务器之间,用于转接内外主机之间的通信,它可以根据安全策略来决定是否为用户进行代理服务。代理服务器运行在应用层,因此又被称为“应用网关”。

应用代理防火墙通过编程来弄清用户应用层的流量,并能在应用层提供访问控制。而且,还可记录所有应用程序的访问情况,记录和控制所有进出流量,代理服务器会像一堵墙一样挡在内部用户和外界之间,从外部只能看到该代理服务器而无法获知任何的内部资源

代理服务器指代表客户处理与服务器连接请求的程序。 当代理服务器接收到用户对某站点的访问请求后,便会检查该请求是否符合规则,如果规则允许用户访问该站点的话,代理服务器会像一个客户一样去那个站点取回所需信息再转发给客户,代理服务器通常都拥有一个高速缓存,这个缓存存储着用户经常访问的站点内容,在下一个用户要访问同一站点时,服务器就不用重复地获取相同的内容,直接将缓存内容发出即可,既节约了时间也节约了网络资源

可以使用代理来控制实际的数据流:例如,一个应用代理可以限制FTP用户只能从Internet上获取文件,而不能将文件上传至Internet。 如果网络管理员没有为某种应用安装代理程序,那么该项服务就不支持并不能通过防火墙系统来转发

优点

  • 具有代理服务的应用网关可被配置成唯一可以被外部网络可视的主机,这样就可以保护内部主机免受外部主机的攻击
  • 一些代理服务器提供高速的缓存功能,在应用网关上可以强制执行用户身份认证
  • 代理工作在客户机与真实服务器之间,完全控制会话,所以可提供详细的日志
  • 在应用网关上可以使用第三方提供的身份认证和日志记录系统
  • 能灵活、完全地控制进出流量和内容,能过滤数据内容以及能为用户提供透明的加密机制

缺点

  • Internet服务的代理版本总是要滞后其标准版本,对于一个新的或者不常用的服务,很难找到可靠的代理版本
  • 代理服务器具有解释应用层命令的功能(如解释FTP命令、Telnet命令等),因此可能需要提供很多种不同的代理服务器(如FTP代理服务器、Telnet代理服务器),并且所能提供的服务和可伸缩性是有限的
  • 解释应用层命令的代理服务器,需要定制用户进程,这就给用户的使用带来了不便
  • 一些服务是很难进行代理的,比如某些数据交流很复杂的服务,要同时用到tcp和udp协议
  • 代理建立了一个网络的服务瓶颈,因为它要检查每一个数据包。因此速度较路由器慢,且对用户不透明

状态检测防火墙

状态检测(Status Detection):直接对分组里的数据进行处理,并且结合前后分组的数据进行综合判断,然后决定是否允许该数据包通过

状态检测防火墙在网络层有一个执行网络安全策略的检查引擎截获数据包并抽取出与应用层状态有关的信息,并以此为依据决定对该连接是接受还是拒绝。 检查引擎在不影响网络正常工作的前提下,采用抽取相关数据的方法对网络通信的各层实施监测,抽取部分数据,即状态信息 状态检测防火墙克服了包过滤防火墙和应用代理服务器的局限性,不仅仅检测“to”和“from”的地址,而且不要求每个访问的应用都有代理。

状态检测防火墙同包过滤技术一样,它能够检测通过IP地址、端口号以及TCP标记,过滤进出的数据包。 允许受信任的客户机和不受信任的主机建立直接连接,不依靠与应用层有关的代理,而是依靠某种算法来识别进出的应用层数据,这些算法通过己知合法数据包的模式来比较进出数据包,这样从理论上就能比应用级代理在过滤数据包上更有效。 此外,它还可监测RPC和UDP端口信息,而包过滤和代理都不支持此类端口。

优点

安全性:状态检测防火墙工作在数据链路层和网络层之间,它从这里截取数据包,因为数据链路层是网卡工作的真正位置,网络层是协议栈的第一层,这样防火墙确保了截取和检查所有通过网络的原始数据包

性能:状态检测防火墙工作在协议栈的较低层,通过防火墙的所有的数据包都在低层处理,而不需要协议栈的上层处理任何数据包,这样减少了高层协议头的开销

扩展性:状态检测防火墙不区分每个具体的应用,只是根据从数据包中提取出的信息、对应的安全策略及过滤规则处理数据包

当有一个新的应用时,它能动态产生新的应用的新的规则,而不用另外写代码,所以具有很好的伸缩性和扩展性

能够支持多种协议和应用程序,并可以很容易地实现应用和服务的扩充

缺点

包过滤防火墙得以进行正常工作的一切依据都在于过滤规则的实施,但又不能满足建立精细规则的要求,并不能分析高级协议中的数据

应用网络关防火墙的每个连接都必须建立在为之创建的有一套复杂的协议分析机制的代理程序进程上,这会导致数据延迟的现象

状态检测防火墙虽然继承了包过滤防火墙和应用网关防火墙的优点,克服了它们的缺点,但它仍只是检测数据包的第三层信息,无法彻底的识别数据包中大量的垃圾邮件、广告以及木马程序等等

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

LLaMA-Adapter源码解析

LLaMA-Adapter源码解析 伪代码 def transformer_block_with_llama_adapter(x, gating_factor, soft_prompt):residual xy zero_init_attention(soft_prompt, x) # llama-adapter: prepend prefixx self_attention(x)x x gating_factor * y # llama-adapter: apply zero_init…

中国多主数据库:压强投入,期待破茧

拿破仑曾说:“战争的艺术就是在某一点上集中最大优势兵力”,强调了力量集中的重要性。 如今,国际形势风云变幻,西方世界对中国的围剿不再仅仅体现在军事和地缘政治上,而更多表现在经济与科技上。在科技领域&#xff0…

[黑马程序员SpringBoot2]——运维实用篇

目录: 工程打包与运行打包插件Boot工程快速启动(Linux版本)临时属性配置文件4级分类自定义配置文件多环境开发(yaml版)多环境开发多文件版(yaml版)多环境开发多文件版(properties版)多环境分组…

竞赛 深度学习疫情社交安全距离检测算法 - python opencv cnn

文章目录 0 前言1 课题背景2 实现效果3 相关技术3.1 YOLOV43.2 基于 DeepSort 算法的行人跟踪 4 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 **基于深度学习疫情社交安全距离检测算法 ** 该项目较为新颖,适合作为竞赛…

DI93a HESG440355R3 通过其Achilles级认证提供网络安全

DI93a HESG440355R3 通过其Achilles级认证提供网络安全 施耐德电气宣布推出Modicon M580以太网PAC (ePAC)自动化控制器,该控制器采用开放式以太网标准,通过其Achilles级认证提供网络安全。M580 ePAC使工厂操作员能够设计、实施和运行一个积极利用开放网…

torch.cumprod实现累乘计算

cumprod取自“cumulative product”的缩写,即“累计乘法”。 数学公式为: y i x 1 x 2 x 3 . . . x i y_ix_1\times{x_2}\times{x_3}\times{...}\times{x_i} yi​x1​x2​x3​...xi​ 官方链接:torch.cumprod 用法: impo…

AFL入门教学

1、AFL简介 AFL(American Fuzzy Lop)是一个面向安全的模糊测试工具,它使用了一个新的编译时插桩技术和遗传算法,可以自动发现触发目标二进程程序的测试用例,从而大大提高测试代码的功能覆盖率。 AFL官网:…

轻量封装WebGPU渲染系统示例<14>- 多线程模型载入(源码)

当前示例源码github地址: https://github.com/vilyLei/voxwebgpu/blob/main/src/voxgpu/sample/ModelLoadTest.ts 此示例渲染系统实现的特性: 1. 用户态与系统态隔离。 细节请见:引擎系统设计思路 - 用户态与系统态隔离-CSDN博客 2. 高频调用与低频调用隔离。 …

第 370 周赛 100112. 平衡子序列的最大和(困难,离散化,权值树状数组)

太难了,看答案理解了半天 题目的要求可以理解为 nums[ij] - ij > nums[ii] - ii ,所以问题化为求序列 bi nums[i] - i 的非递减子序列的最大元素和需要前置知识,离散化,树状数组离散化:将分布大却数量少(即稀疏)的…

改进YOLO系列:12.Repulsion损失函数【遮挡】

1. RepLoss论文 物体遮挡问题可以分为类内遮挡和类间遮挡两种情况。类间遮挡产生于扎堆的同类物体,也被称为密集遮挡(crowd occlusion)。Repulsion损失函数由三个部分构成,yolov5样本匹配,得到的目标框和预测框-一对应第一部分主要作用:预测目标框吸引IOU最大的真实目标框,…

YOLOv8-Seg改进:动态稀疏注意力(BiLevelRoutingAttention)助力分割 | CVPR2023

🚀🚀🚀本文改进:动态稀疏注意力(BiLevelRoutingAttention),实现更灵活的计算分配和内容感知,使其具备动态的查询感知稀疏性,引入到YOLOv8-Seg任务中,1)与C2f结合实现二次创新;2)注意力机制使用; 🚀🚀🚀BiLevelRoutingAttention 亲测在番薯破损分割任务…

微服务注册中心之安装+实例搭建zookeeper

1.下载安装包并上传到Linux服务器 Apache ZooKeeper 可以使用wget或者curl命令 wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.7.1/apache-zookeeper-3.7.1-bin.tar.gz连接失败也可以本地下载之后上传到服务器 scp /本地/文件的/路径 用户名远程服务器IP或主…

单链表的应用(2)

环形链表的约瑟夫问题 编号为 1 到 n 的 n 个人围成一圈。从编号为 1 的人开始报数,报到 m 的人离开。 下一个人继续从 1 开始报数。 n-1 轮结束以后,只剩下一个人,问最后留下的这个人编号是多少? 利用链表实现 思路&#xff1…

【JVM系列】- 挖掘·JVM堆内存结构

挖掘JVM堆内存结构 文章目录 挖掘JVM堆内存结构堆的核心概念堆的特点 堆的内存结构内存划分新生代/新生区(Young Generation)老年代(Tenured Generation)永久代(或元数据区)(PermGen 或 MetaSpa…

STM32F103C8T6第一天:认识STM32 标准库与HAL库 GPIO口 推挽输出与开漏输出

1. 课程概述(297.1) 课程要求:C语言熟练,提前学完 C51 2. 开发软件Keil5的安装(298.2) 开发环境的安装 编程语言:C语言需要安装的软件有两个:Keil5 和 STM32CubeMX Keil5 的安装…

Javascript知识点详解:正则表达式

目录 RegExp 对象 概述 实例属性 实例方法 RegExp.prototype.test() RegExp.prototype.exec() 字符串的实例方法 String.prototype.match() String.prototype.search() String.prototype.replace() String.prototype.split() 匹配规则 字面量字符和元字符 转义符…

【软件STM32cubeIDE下H73xx配置串口uart1+中断接收/DMA收发+HAL库+简单数据解析-基础样例】

#【软件STM32cubeIDE下H73xx配置串口uart1中断接收/DMA收发HAL库简单数据解析-基础样例】 1、前言2、实验器件3-1、普通收发中断接收实验第一步:代码调试-基本配置(1)基本配置(3)时钟配置(4)保存…

前端滚动分页

场景 在前端开发中,我们经常碰到分页加载的需求,在PC端通常用分页组件就可以解决这种类型的场景。而当我们在移动端中,分页组件就显得有点不符合逻辑和正常的交互体验,所以滚动分页常常成为我们的一种选择,即页面滚动…

AMD老电脑超频及性能提升方案及实施

收拾电子元件的时候找到了若干古董的CPU 其中有一个X3 440 是原来同学主板烧了之后给我的,我从网上配了AM2 昂达主板,然后又买了AMD兼容内存,组成了win7 64位电脑,用起来非常不错,我把硬件配置和升级过程说明下&#x…

唐顿庄园的AI圣诞设计(ideogram.ai )

唐顿庄园是一部经典的英国历史剧,讲述了 Crawley 家族在 20 世纪初生活的故事。该剧以其精美的服装、场景和道具而闻名,因此它是圣诞装饰的绝佳灵感。 在本文中,我们将使用 ideogram.ai 创建一个 Downton Abbey 圣诞设计。ideogram.ai 是一个…