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

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

目录

防火墙的定义 

防火墙的功能

防火墙的特性

防火墙的必要性

防火墙的优点

防火墙的局限性

防火墙的分类

分组过滤防火墙

优点:

缺点:

应用代理防火墙 

优点

缺点

状态检测防火墙

优点

缺点


防火墙的定义 

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

在互联网上,防火墙是一种非常有效的网络安全系统,通过它可以隔离风险区域(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端口信息,而包过滤和代理都不支持此类端口。

优点

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

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

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

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

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

缺点

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

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

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

相关文章:

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

目录 防火墙的定义 防火墙的功能 防火墙的特性 防火墙的必要性 防火墙的优点 防火墙的局限性 防火墙的分类 分组过滤防火墙 优点: 缺点: 应用代理防火墙 优点 缺点 状态检测防火墙 优点 缺点 防火墙的定义 防火墙的本义原是指古代人们…...

动态规划算法实现0-1背包问题Java语言实现

问题介绍: 动态规划算法: 动态规划(Dynamic Programming)是一种解决多阶段决策问题的优化算法。它通过将问题分解为一系列子问题,并利用子问题的解来构建更大规模问题的解,从而实现对整个问题的求解。 动态…...

linux查看系统版本

linux主机 hostnamectl -- 可以查看​ “系统架构”,“发行版本”和“内核版本”等信息 uname -a -- 查看内核版本 cat /proc/version -- 查看当前操作系统版本信息 cat /etc/issue ,lsb_release -a(ubuntu)-- 查看…...

pg14-sql基础(四)-多表联查

多表联查 内联查询 SELECT e.department_id, e.first_name, d.department_name FROM employees e INNER JOIN departments d -- JOIN departments d ON e.department_id d.department_id;左外联查询 SELECT e.department_id, e.first_name, d.department_name FROM employees…...

el-date-picker 日期时间选择器 限时时间范围 精确到时分秒

官方的disabledDate属性:设置禁用状态,参数为当前日期,要求返回 Boolean,它只能禁用日期,对于时间并不能直接禁用,总结以下两个方法解决禁用时间: 1.通过watch去监听源数据: 1.1 组…...

轮廓线dp:GYM103446C

https://vjudge.net/contest/591700#problem/H 考虑轮廓线dp,当我们枚举到蓝色格子的时候,我们记录红色格子的状态 每个格子有4种状态 0有向下1需要向上2不用管3需向右 每次枚举的时候,我们需要考虑这个格子的三种状态: 10不放…...

羊驼免疫制备纳米抗体

纳米抗体(nanobodies,Nbs)是由比利时科学家Hamers等人在骆驼血液内首次发现的一种新型抗体,与传统抗体相比,这种抗体不存在轻链,只有重链抗体(HcAb)和两个常规的CH2和CH3区组成&…...

【AI好好玩02】利用Lama Cleaner本地实现AIGC试玩:擦除对象、替换对象、更换风格等等

目录 一、安装二、擦除功能1. LaMa模型实操实例一:去除路人实操实例二:去水印实操实例三:老照片修复 2. LDM模型3. ZITS模型4. MAT模型5. FcF模型6. Manga模型 三、替换对象功能1. sd1.52. sd23. anything44. realisticVision1.45. 四个模型的…...

SQL FULL OUTER JOIN 关键字(完整外部连接)||SQL自连接 Self JOIN

SQL FULL OUTER JOIN 关键字 当左(表1)或右(表2)表记录匹配时,FULL OUTER JOIN关键字将返回所有记录。 注意: FULL OUTER JOIN可能会返回非常大的结果集! SQL FULL OUTER JOIN 语法 SELECT …...

专科医院污水处理设备构造解析及工艺流程

诸城市鑫淼环保小编带大家了解一下专科医院污水处理设备构造解析及工艺流程 主要组成部分: 1.预处理单元 处理流程的起点是预处理单元,用于去除废水中的大颗粒物质和固体废物。这一阶段通常包括隔栅和筛网,以确保进一步处理的污水清洁。 2.生…...

【RabbitMQ】RabbitMQ 消息的可靠性 —— 生产者和消费者消息的确认,消息的持久化以及消费失败的重试机制

文章目录 前言:消息的可靠性问题一、生产者消息的确认1.1 生产者确认机制1.2 实现生产者消息的确认1.3 验证生产者消息的确认 二、消息的持久化2.1 演示消息的丢失2.2 声明持久化的交换机和队列2.3 发送持久化的消息 三、消费者消息的确认3.1 配置消费者消息确认3.2…...

百万套行泊一体量产定点,中国市场「开启」智驾高低速集成

进入2023年,席卷中国市场的行泊一体概念方案进入定点、量产交付的第一波高峰期。这套方案,以高性价比、硬件复用、高低速智驾集成的模式,备受市场青睐。 本周,纵目科技宣布,Amphiman3000行泊一体产品获得长安汽车旗下…...

Gopro hero5运动相机格式化后恢复案例

Gopro运动相机以稳定著称,旗下的Hero系列销售全球。下面我们来看一个Hero5格式化后拍了少量素材的恢复案例。 故障存储:64G MicroSD卡 Exfat文件系统 故障现象: 64G的卡没备份数据时做了格式化操作又拍了一条,发现数据没有备份,客户自行使…...

Microsoft Dynamics 365 CE 扩展定制 - 6. 增强代码

在本章中,我们将介绍以下内容: 使用三层模式重构插件用QueryExpressions替换LINQ数据访问层记录自定义项中的错误将插件转换为自定义工作流活动单元测试插件业务逻辑使用内存上下文对插件进行单元测试端到端集成测试插件分析插件构建通用读取审核插件利用CRM Online实现跨来源…...

基于libopenh264 codec的svc分层流实现方案

OpenH264 http://www.openh264.org/ 是标准的H.264 encoder/decoder. ffmpeg已经集成libopenh264,但不支持svc特性。 openh264 encoder支持svc特性: 1. 时域4层:Temporal scalability up to 4 layers in a dyadic hierarchy 2. 空域4层&#…...

为机器学习算法准备数据(Machine Learning 研习之八)

本文还是同样建立在前两篇的基础之上的! 属性组合实验 希望前面的部分能让您了解探索数据并获得洞察力的几种方法。您发现了一些数据怪癖,您可能希望在将数据提供给机器学习算法之前对其进行清理,并且发现了属性之间有趣的相关性&#xff0c…...

基于Python OpenCV的金铲铲自动进游戏、D牌...

基于Python OpenCV的金铲铲自动进游戏、D牌... 1. 自动点击进入游戏1.1 环境准备1.2 功能实现2. 自动D牌3. 游戏结束自动退1. 自动点击进入游戏 PS: 本测试只用于交流学习OpenCV的相关知识,不能用于商业用途,后果自负。 1.1 环境准备 需要金铲铲在win10的模拟器,我们这里选…...

c++中httplib使用

httplib文件链接:百度网盘 请输入提取码 提取码:kgnq json解析库:百度网盘 请输入提取码 提取码:oug0 一、获取token 打开postman, 在body这个参数中点击raw,输入用户名和密码 然后需要获取到域名和地址。 c++代码如下: #include "httplib.h" #in…...

Vite 的基本原理,和 webpack 在开发阶段的比较

目录 1,webpack 的流程2,Vite 的流程简单编译 3,总结 主要对比开发阶段。 1,webpack 的流程 开发阶段大致流程:指定一个入口文件,对相关的模块(js css img 等)先进行打包&#xff0…...

[开源]免费开源MES系统/可视化数字大屏/自动排班系统

开源系统概述: 万界星空科技免费MES、开源MES、商业开源MES、市面上最好的开源MES、MES源代码、免费MES、免费智能制造系统、免费排产系统、免费排班系统、免费质检系统、免费生产计划系统。 万界星空开源MES制造执行系统的Java开源版本。开源mes系统包括系统管理…...

网络编程(Modbus进阶)

思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…...

TDengine 快速体验(Docker 镜像方式)

简介 TDengine 可以通过安装包、Docker 镜像 及云服务快速体验 TDengine 的功能,本节首先介绍如何通过 Docker 快速体验 TDengine,然后介绍如何在 Docker 环境下体验 TDengine 的写入和查询功能。如果你不熟悉 Docker,请使用 安装包的方式快…...

从WWDC看苹果产品发展的规律

WWDC 是苹果公司一年一度面向全球开发者的盛会,其主题演讲展现了苹果在产品设计、技术路线、用户体验和生态系统构建上的核心理念与演进脉络。我们借助 ChatGPT Deep Research 工具,对过去十年 WWDC 主题演讲内容进行了系统化分析,形成了这份…...

MongoDB学习和应用(高效的非关系型数据库)

一丶 MongoDB简介 对于社交类软件的功能,我们需要对它的功能特点进行分析: 数据量会随着用户数增大而增大读多写少价值较低非好友看不到其动态信息地理位置的查询… 针对以上特点进行分析各大存储工具: mysql:关系型数据库&am…...

MFC内存泄露

1、泄露代码示例 void X::SetApplicationBtn() {CMFCRibbonApplicationButton* pBtn GetApplicationButton();// 获取 Ribbon Bar 指针// 创建自定义按钮CCustomRibbonAppButton* pCustomButton new CCustomRibbonAppButton();pCustomButton->SetImage(IDB_BITMAP_Jdp26)…...

今日科技热点速览

🔥 今日科技热点速览 🎮 任天堂Switch 2 正式发售 任天堂新一代游戏主机 Switch 2 今日正式上线发售,主打更强图形性能与沉浸式体验,支持多模态交互,受到全球玩家热捧 。 🤖 人工智能持续突破 DeepSeek-R1&…...

Web 架构之 CDN 加速原理与落地实践

文章目录 一、思维导图二、正文内容(一)CDN 基础概念1. 定义2. 组成部分 (二)CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 (三)CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 &#xf…...

中医有效性探讨

文章目录 西医是如何发展到以生物化学为药理基础的现代医学?传统医学奠基期(远古 - 17 世纪)近代医学转型期(17 世纪 - 19 世纪末)​现代医学成熟期(20世纪至今) 中医的源远流长和一脉相承远古至…...

Docker 本地安装 mysql 数据库

Docker: Accelerated Container Application Development 下载对应操作系统版本的 docker ;并安装。 基础操作不再赘述。 打开 macOS 终端,开始 docker 安装mysql之旅 第一步 docker search mysql 》〉docker search mysql NAME DE…...

IP如何挑?2025年海外专线IP如何购买?

你花了时间和预算买了IP,结果IP质量不佳,项目效率低下不说,还可能带来莫名的网络问题,是不是太闹心了?尤其是在面对海外专线IP时,到底怎么才能买到适合自己的呢?所以,挑IP绝对是个技…...