网络安全概论——防火墙原理与设计

一、防火墙概述

防火墙是一种装置,它是由软件/硬件设备组合而成,通常处于企业的内部局域网与 Internet 之间,限制 Internet 用户对内部网络的访问以及管理内部用户访问 Internet 的权限。换言之,一个防火墙在一个被认为是安全和可信的内部网络和一个被认为是不那么安全和可信的外部网络(通常是 Internet)之间提供 一个封锁工具。如果没有防火墙,则整个内部网络的安全性完全依赖于每个主机, 因此,所有的主机都必须达到一致的高度安全水平, 这在实际操作时非常困难。 而防火墙被设计为只运行专用的访问控制软件的设备,没有其他的服务,因此也 就意味着相对少一些缺陷和安全漏洞,这就使得安全管理变得更为方便,易于控 制,也会使内部网络更加安全。 防火墙所遵循的原则是在保证网络畅通的情况下,尽可能保证内部网络的安 全。它是种被动的技术,是一种静态安全部件。

1、防火墙设计的要求

(对防御内部的攻击无用):

  1. 所有进出网络的数据都要通过防火墙(但不一定要过滤)
  2. 只允许经过授权的数据流通过防火墙
  3. 防火墙自身对入侵是免疫的

2、防火墙提供的四种控制机制

  1. 服务控制
  2. 方向控制
  3. 用户控制
  4. 行为控制

3、防火墙的几个基本功能

  • (1)隔离不同的网络,限制安全问题的扩散,对安全集中管理,简化了安全管理的复杂程度。
  • (2) 防火墙可以方便地记录网络上的各种非法活动,监视网络的安全性,遇到紧急情况报警。
  • (3)防火墙可以作为部署 NAT 的地点,利用 NAT 技术,将有限的 IP 地址动态或静 态地与内部的 IP 地址对应起来,用来缓解地址空间短缺的问题或者隐藏内部网络的结构。
  • (4)防火墙是审计和记录 Internet 使用费用的一个最佳地点。
  • (5)防火墙也可以作为 IPSec 的平台。
  • (6)内容控制功能。根据数据内容进行控制,比如防火墙可以从电子邮件中过滤 掉垃圾邮件,可以过滤掉内部用户访问外部服务的图片信息。只有代理服务器和先进的过滤才能实现。

二、防火墙分类

一般来说,防火墙工作于OSI模型的层次越高,其检查数据包中的信息就越多,因此防火墙所消耗的处理器工作周期就越长;防火墙检查的数据包越靠近OSI模型的上层,该防火墙结构所提供的安全保护等级就越高,因为在高层上能够获得更多的信息用于安全决策。

OSI七层模型记忆口诀:物数网传会表应

0、包过滤防火墙

包过滤防火墙也称分组过滤路由器,又叫网络层防火墙,因为它是工作在网络层。 路由器便是一个网络层防火墙,因为包过滤是路由器的固有属性。它一般是通过 检查单个包的地址、协议、端口等信息来决定是否允许此数据包通过,有静态和 动态两种过滤方式。 这种防火墙可以提供内部信息以说明所通过的连接状态和一些数据流的内容,把判断的信息同规则表进行比较,在规则表中定义了各种规则来表明是否同意或拒绝包的通过。包过滤防火墙检查每一条规则直至发现包中的信息与某规则相符。 如果没有一条规则能符合,防火墙就会使用默认规则(丢弃该包)。在制定数据包过滤规则时,一定要注意数据包是双向的

1、静态包过滤防火墙

工作于网络层

对于静态包过滤防火墙来说,决定接收还是拒绝一个数据包,取决于对数据包中IP头和协议头等特定域的检查和判定。

对数据包的某些特定域进行检查,这些特定域包括:源地址、目的地址、应用或协议、源端口号、目的端口号

在每个包过滤器上,安全管理员要根据企业的安全策略定义一个表单,这个表单也被称为访问控制规则库。该规则库包含许多规则,用来指示防火墙应该拒绝还是接受该数据包。

优缺点:对网络性能有较小的影响,成本低;安全性较低,缺少状态感知能力,容易遭受IP欺骗攻击,创建访问控制规则比较困难。

静态包过滤防火墙主要实现如下三个功能:

  • 接受每个到达的数据包。
  • 对数据包采用过滤规则,对数据包的IP头和传输字段内容进行检查。如果数据包的头信息与一组规则匹配,则根据该规则确定是转发还是丢弃该数据包。
  • 如果没有规则与数据包头信息匹配,则对数据包施加默认规则。

2、动态包过滤防火墙

连接建立以后的数据包不需要检查

优缺点:对网络性能有较小的影响,具有状态感知能力,性能显著提升;安全性低,容易遭受IP欺骗攻击,难于创建规则(必须考虑规则的先后顺序)

对数据包的某些特定域进行检查,这些特定域包括:源地址、目的地址、应用或协议、源端口号、目的端口号

3、电路级网关

工作于会话层,在许多方面,电路级网关仅仅是包过滤防护墙的一种扩展,它除了进行基本的包过滤检查之外,还要增加对连接建立过程中的握手信息及序列号合法性的验证。

在打开一条通过防火墙的连接或电路之前,电路级网关要检查和确认TCP及UDP协议会话。因此,电路级网关所检查的数据比静态包过滤防火墙或动态包过滤防火墙所检查的数据更多,安全性也更高。

对数据包的某些特定域进行检查,这些特定域包括:源地址、目的地址、应用或协议、源端口号、目的端口号、握手信息及序列号

优点:

  1. 对网络性能有一定影响,比包过滤性能低,但优于应用代理防火墙。
  2. 切断了外部网络和防火墙后服务器的直接连接。
  3. 安全性高。

缺点:

  1. 无法抵御应用层入侵。
  2. 当程序和资源增加时,电路及网关的许多代码需要修改。

4、应用级网关

工作于应用层,只能对特定服务的数据流进行过滤,应用级网关必须为特定的应用服务编写特定的代理程序。

与电路级网关一样,应用级网关截获进出网络的数据包,运行代理程序来回复制华为传递通过网关的信息,起着代理服务器的作用。它可以避免内网中的可信服务器或客户机遇外网中某个不可信主机之间的直接连接。

主要工作在应用层,又称为应用层防火墙。它检查进出的数据包,通过自身复制 传递数据,防止在受信主机与非受信主机间直接建立联系。应用层网关能够理解 应用层上的协议,能够做复杂的访问控制,并做精细的注册和审核。 基本工作过程是:当客户机需要使用服务器上的数据时,首先将数据请求发给代 理服务器,代理服务器再根据这一请求向服务器索取数据,然后再由代理服务器 将数据传输给客户机。常用的应用层网关已有相应的代理服务软件,如 HTTP、 SMTP、 FTP、 Telnet 等,但是对于新开发的应用,尚没有相应的 代理服务,它们将通过网络层防火墙和一般的代理服务。 应用层网关有较好的访问控制能力,是目前最安全的防火墙技术。能够提供内容 过滤、用户认证、页面缓存和 NAT 等功能。但实现麻烦,有的应用层网关缺乏“透 明度”。应用层网关每一种协议需要相应的代理软件,使用时工作量大,效率明 显不如网络层防火墙。

优点:

  1. 在已知安全模型中安全性高
  2. 强大的认证功能
  3. 强大的日志功能
  4. 规则创建简单

缺点:

  1. 灵活性差
  2. 配置繁琐
  3. 性能低

应用级网关电路级网关切断了数据的端到端流动

5、状态检测防火墙

状态检测防火墙工作于OSI模型的所有7个层次上,所以在理论上具有很高的安全性,但是现有的大多数状态检测防火墙只工作于网络层上,因此其安全性与包过滤防火墙相当。

在所有7层上进行过滤

优点:

  1. 有更高的安全性,能够抵御协议细节攻击
  2. 没有打破客户/服务器模式
  3. 提供集成的动态包过滤功能

缺点:

  1. 单线程设计,性能不高,无法高并发
  2. 没有打破客户/服务器结构会产生不可接受的安全风险

6、切换代理

实际上是动态包过滤器和一个电路级代理的结合。

前三次握手时是电路级网关,然后再切换到动态包过滤的工作模式下。因此,切换代理首先工作于OSI的会话层,即第5层;当连接完成后,再切换到动态包过滤模式,即工作于OSI的第3层网络层

7、空气隙防火墙

也称做安全网闸,在内网和外网之间实现了真正的物理隔离

三、网络地址转换NAT

完成IP到端口映射

NAT按照实现方式分类:静态网络地址转换,动态网络地址转换,端口地址换换

按照数据流向分类:源地址转换,目的地址转换

所有输入数据包的目的地址=所有输出数据包的源地址=路由器的外部地址

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

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

相关文章

南城云趣:智能云平台,杜绝电动车充电安全隐患

电动自行车作为绿色低碳出行的主要方式之一,受到无数市民的推崇,而电动自行车数量的急剧上涨,也严重增加小区管理的负担。记者调查发现,目前电动自行车缺乏有效的管理,使得带车或电瓶上楼充电、乱停乱放、车辆容易被盗等安全问题日益突出,给社区消防安全和管理带来严峻的挑战。…

Linux 文件系统目录结构及其简要介绍

👋 欢迎来到“Linux学习:Linux 文件系统目录结构”篇! 接下来让我们一起来学习一下Linux 文件系统目录结构吧!祝你有所收获! 文章目录 总结表格Linux 文件系统目录结构及其简要介绍补充小资源 小伙伴们都知道&#xff…

【服务器】MyBatis是如何在java中使用并进行分页的?

MyBatis 是一个支持普通 SQL 查询、存储过程和高级映射的持久层框架。它消除了几乎所有的 JDBC 代码和参数的手动设置以及结果集的检索。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java 的 POJO(Plain Old Java Objects,普通老式 …

Elasticsearch-DSL高级查询操作

一、禁用元数据和过滤数据 1、禁用元数据_source GET product/_search {"_source": false, "query": {"match_all": {}} }查询结果不显示元数据 禁用之前: {"took" : 0,"timed_out" : false,"_shards" : {&quo…

使用 UniApp 在微信小程序中实现 SSE 流式响应

概述 服务端发送事件(Server-Sent Events, SSE)是一种允许服务器向客户端推送实时更新的技术。SSE 提供了一种单向的通信通道,服务器可以持续地向客户端发送数据,而不需要客户端频繁发起请求。这对于需要实时更新的应用场景非常有用。 流式传输的特点是将数据逐步传输给客…

【Tomcat】第六站(最后一站啦!):数据的返回

1. 引言 前端资源比如html页面,进行返回。截止到目前我们写的项目架构不支持前端页面(静态资源 )。 2. 数据的返回 2.1 准备 为了能够写前端页面,新建一个项目。选择Maven项目,下一步,下一步。 加载完…

electron-vite【实战系列教程】

创建项目 https://blog.csdn.net/weixin_41192489/article/details/144442262 安装必要的插件 UI 库 element-plus npm install element-plus --save安装 element-plus 图标 npm install element-plus/icons-vue安装插件 – 自动注册组件 vs 自动导入框架方法 npm install -…

信号处理相关的东东(学习解惑)

信号处理相关的东东(学习解惑) 所有内容学习自知乎专栏,https://www.zhihu.com/column/xinhao,写的很好,值得反复学习 时频域分析的一些常用概念 FROM:https://zhuanlan.zhihu.com/p/35742606 1、相加性…

[Python学习日记-73] 面向对象实战1——答题系统

[Python学习日记-73] 面向对象实战1——答题系统 简介 需求模型——5w1h8c 领域模型 设计模型 实现模型 案例:年会答题系统 简介 在学习完面向对象之后你会发现,你还是不会自己做软件做系统,这是非常正常的,这是因为计算机软…

简单工厂模式和策略模式的异同

文章目录 简单工厂模式和策略模式的异同相同点:不同点:目的:结构: C 代码示例简单工厂模式示例(以创建图形对象为例)策略模式示例(以计算价格折扣策略为例)UML区别 简单工厂模式和策…

SQL语句整理五-StarRocks

文章目录 查看版本号:SPLIT:insert 和 update 结合 select:报错:1064 - StarRocks planner use long time 3000 ms in memo phase:字段增删改: 查看版本号: select current_version(); current…

中化信息与枫清科技深化合作:共探“AI+”产业新生态

随着数字化转型的浪潮席卷全球,数据已成为推动创新和经济增长的关键力量。为持续深化数据要素价值挖掘与应用实践,推动打造行业交流平台,驱动产业创新共荣,2024 年 12 月 18 日 -19 日,由中国通信标准化协会主办的“20…

CH340系列芯片驱动电路·CH340系列芯片驱动!!!

目录 CH340基础知识 CH340常见类型 CH340引脚功能讲解 CH340驱动电路 CH340系列芯片数据手册 编写不易,仅供学习,请勿搬运,感谢理解 常见元器件驱动电路文章专栏连接 LM7805系列降压芯片驱动电路降压芯片驱动电路详解-CSDN博客 ME62…

进网许可认证、交换路由设备检测项目更新25年1月起

实施时间 2025年1月1日起实施 涉及设备范围 核心路由器、边缘路由器、以太网交换机、三层交换机、宽带网络接入服务器(BNAS) 新增检测依据 GBT41266-2022网络关键设备安全检测方法交换机设备 GBT41267-2022网络关键设备安全技术要求交换机设备 GB/…

【HarmonyOS NEXT】Web 组件的基础用法以及 H5 侧与原生侧的双向数据通讯

关键词:鸿蒙、ArkTs、Web组件、通讯、数据 官方文档Web组件用法介绍:文档中心 Web 组件加载沙箱中页面可参考我的另一篇文章:【HarmonyOS NEXT】 如何将rawfile中文件复制到沙箱中_鸿蒙rawfile 复制到沙箱-CSDN博客 目录 如何在鸿蒙应用中加…

使用k6进行MongoDB负载测试

1.安装环境 安装xk6-mongo扩展 ./xk6 build --with github.com/itsparser/xk6-mongo 2.安装MongoDB 参考Docker安装MongoDB服务-CSDN博客 连接成功后新建test数据库和sample集合 3.编写脚本 test_mongo.js import xk6_mongo from k6/x/mongo;const client xk6_mongo.new…

电子应用设计方案-63:智能升降茶几系统方案设计

智能升降茶几系统方案设计 一、引言 智能升降茶几作为一种创新的家具产品,结合了实用性和功能性,能够满足不同场景下的使用需求。本方案旨在设计一款安全可靠、操作便捷、功能丰富的智能升降茶几。 二、系统概述 1. 系统目标 - 实现茶几桌面的平稳升降&…

C语言进阶(2) ---- 指针的进阶

前言:指针的主题,我们在初阶的《指针》章节已经接触过了,我们知道了指针的概念: 1.指针就是个变量,用来存放地址,地址唯一标识一块内存空间。 2.指针的大小是固定的4/8个字节(32位平台/64位平台)。 3.指针是…

OpenHarmony-4.HDI 框架

HDI 框架 1.HDI介绍 HDI(Hardware Device Interface,硬件设备接口)是HDF驱动框架为开发者提供的硬件规范化描述性接口,位于基础系统服务层和设备驱动层之间,是连通驱动程序和系统服务进行数据流通的桥梁,是…

[网络安全]XSS之Cookie外带攻击姿势详析

概念 XSS 的 Cookie 外带攻击就是一种针对 Web 应用程序中的 XSS(跨站脚本攻击)漏洞进行的攻击,攻击者通过在 XSS 攻击中注入恶意脚本,从而窃取用户的 Cookie 信息。 攻击者通常会利用已经存在的 XSS 漏洞,在受害者的…