防火墙笔记
- 什么是防火墙
在计算机网络中是指设置在可信任的内部网络和不可信任的外部网络之间的屏障,通过强化边界控制保障内容安全,同时不妨碍内部对外部的访问。
20世纪80年代,最早的防火墙几乎与路由器同时出现,第一代防火墙主要基于包过滤(Packet filter)技术,是依附于路由器的包过滤功能实现的防火墙;随着网络安全重要性和性能要求的提高,防火墙渐渐发展为一个独立结构的、有专门功能的设备。
1989年,贝尔实验室最早推出了第二代防火墙,即电路层防火墙。
20世纪90年代初,开始推出第三代防火墙,即应用层防火墙(或者叫做代理防火墙)。
1992年,USC信息科学院开发出了基于动态包过滤(Dynamic packet filter)技术的,后来演变为目前所说的状态监视(Stateful inspection)技术。基于此技术,1994年,市面上出现了第四代防火墙,
1998年,NAI公司推出了一种自适应代理(Adaptive proxy)技术,并在其产品Gauntlet Firewall for NT中得以实现,给代理类型的防火墙赋予了全新的意义,可以称之为第五代防火墙。
- 防火墙的作用
强化网络安全策略:具有不同信任的互连网络
防止网络故障蔓延
对网络访问进行监控审核和报警
提供流量控制(带宽管理)和计费
利用IPSec实现VPN
实现MAC与IP地址的绑定 - 防火墙的局限性
防火墙存在被绕过的可能
无法抵御内部威胁
不能防止对开放端口(服务)的攻击
防火墙可以阻断攻击,但无法消除攻击源
防火墙自身也可能会受到攻击 - 防火墙的种类
4.1 技术原理区分
4.1.1 包过滤型防火墙
最简单最快的防火墙,也是任何防火墙系统的基础。它可以检查的每个IP数据包,按过滤规则 允许或拒绝。
能够查看的信息包括:
源IP,目的IP
TCP/UDP 端口号
承载协议
即网络层和传输层的数据报文。
可能受到的攻击:
IP地址欺骗:信任一个假地址
4.1.2 代理防火墙
整个网络环境中,充当一个代理的角色。
工作过程:
用户的请求发送给代理防火墙。
代理防火墙验证请求为合法后,向网络应用服务器发送请求。
网络应用服务器处理后,将响应信息返回给代理防火墙,再发送给用户。
4.1.3 状态检测防火墙
状态检测型防火墙扩展了包过滤防火墙,跟踪每个TCP连接的状态,将属于同一个连接的所有包作为一个整体的数据流看待。
即 隶属于同一个会话的数据包,会更快流过设备,而不是每次都匹配过滤规则。
相比较包过滤防火墙,降低传输时间,提高处理效率。
4.1.4 地址转换防火墙
附有网络地址转换(NAT)功能的防火墙,或网络地址端口转换(NAPT)。
4.2 实现形态区分
4.2.1 软件防火墙
4.2.2 硬件防火墙
4.3 部署位置区分
4.3.1 边界防火墙
4.3.2 个人防火墙
4.3.3 混合防火墙
5. 防火墙的工作模式
三种工作模式:
5.1 路由模式
防火墙以第三层对外连接(接口具有IP地址)
5.2 透明模式
防火墙以第二层对外连接(接口无IP地址)
5.3 混合模式
防火墙既有 工作在路由模式的接口,也有工作在透明模式的接口。
- 防火墙的部署
根据使用场景,选择部署防火墙系统。例如,小型网络环境的路由设备或其他主机中,加入防火墙的功能,从而节省成本;大型网络系统中,有分布式防火墙和防火墙集群。
6.1 屏蔽路由器和屏蔽主机
屏蔽路由器:具有数据包过滤功能的路由器
屏蔽主机:具有数据包过滤功能的主机
二者都可以部署为简单的防火墙,通过配置完成防火墙的功能。
6.2 双穴主机或双宿主机
双穴主机:有两个网络接口的计算机系统,一个连接内网,一个连接外网。
6.3 堡垒主机
堡垒主机(Bastion Host):网络上一种配置了安全防范措施的计算机。
6.4 屏蔽子网防火墙
屏蔽子网防火墙:在被保护网络和Internet之间设置了独立的子网作为防火墙。典型例DMZ。
DMZ一般是两台防火墙之间的区域,
- 防火墙的性能指标
7.1 指标量
吞吐量:不丢包的情况下能够达到的最大速率。影响网络性能的重要指标之一。
延时:防火墙设备处理数据包的速度,从接受bit流到输出bit流的时间段。影响网络性能的重要指标之一。
丢包率:在连续负载的情况下,由于防火墙设备资源不足导致数据包丢失的百分比。影响稳定性可靠性。
背靠背:体现防火墙对突发数据的处理能力。
最大并发连接数
最大并发连接建立速率
最大策略数
平均无故障间隔时间
支持的最大用户数
相关文章:
防火墙笔记
什么是防火墙 在计算机网络中是指设置在可信任的内部网络和不可信任的外部网络之间的屏障,通过强化边界控制保障内容安全,同时不妨碍内部对外部的访问。 20世纪80年代,最早的防火墙几乎与路由器同时出现,第一代防火墙主要基于包过…...
使用代码下载开源的大模型文件示例以及中文微调llama资源汇总:
一、下载示例 from huggingface_hub import snapshot_downloadrepo_id "THUDM/chatglm2-6b" local_dir ./chatglm2-6b/ cache_dir local_dir "/cache" while True:try:snapshot_download(cache_dircache_dir,local_dirlocal_dir,repo_idrepo_id,loca…...
Wav2vec2 论文阅读看到的一些问题
Wav2vec2 论文阅读看到的一些问题 这里只是简单的思考一下论文的一些问题,不是论文解读。 Q1. 为什么wav2vec依旧需要Transformer来做推理,而不直接使用VQ生成的内容? A1. Transformer在更长的序列上有更好的编码效果,例如论文也写…...
爬虫学习记录(持续更新)
一、问题记录 1.使用webdriver报错AttributeError: str object has no attribute capabilities 解决:目前使用的selenium版本是4.11.2,可以不必设置driver.exe的路径,selenium可以自己处理浏览器和驱动程序,因此,使用…...
libevent源码学习1---创建event
libevent源码学习1—创建event Libevent是一个用于开发可扩展性网络服务器的基于事件驱动(event-driven)模型的非阻塞网络库。安装请参考ubuntu下载安装libevent event_base 使用 libevent 函数之前需要分配一个或者多个 event_base 结构体。每个 event_base 结构体持有一个…...
Python类的设计
Python类的设计 # 定义一个闹钟类 class Clock:__cureen_keyNone # 私有成员不能改变和使用def __init__(self, id, price): # 类对象是立即自动执行self.id idself.price pricedef ring(self):import winsound # 内置声音方法winsound.Beep(2000,3000)clock1 Clock(…...
微信小程序的项目解构
视频链接 黑马程序员前端微信小程序开发教程,微信小程序从基础到发布全流程_企业级商城实战(含uni-app项目多端部署)_哔哩哔哩_bilibili 接口文档 https://www.escook.cn/docs-uni-shop/mds/1.start.html 1:微信小程序宿主环境 1:常见的宿…...
【Archaius技术专题】「Netflix原生态」动态化配置服务之微服务配置组件变色龙
前提介绍 如果要设计开发一套微服务基础架构,参数化配置是一个非常重要的点,而Netflix也开源了一个叫变色龙Archaius的配置中心客户端,而且Archaius可以说是比其他客户端具备更多生产级特性,也更灵活。*在NetflixOSS微服务技术栈…...
python条件分支和循环语句
python中没有{}的写法,一般时通过缩进的方式来确定分支和循环需要执行的代码块。 if 需要判断的条件表达式:条件成立时的动作 elif 需要判断的条件表达式:条件成立时的动作 else:动作for 变量 in 迭代对象:动作 示例: while 退出条件:动作...
工具推荐:Wireshark网络协议分析工具(对比tcpdump)
文章首发地址 Wireshark是一款开源的网络协议分析工具,可以捕获网络数据包并对其进行详细的分析和解释。下面是Wireshark的详细介绍: Wireshark 工作原理 Wireshark通过捕获网络接口上的数据包,将其转换为可读的格式,并在界面…...
[OnWork.Tools]系列 04-快捷启动
简介 主要功能是将常用的软件拖动到软件中,实现快速点击启动,结合软件设置中的设置的快捷键,可以快速呼出对应的面板,使用快捷键快速启动应用 拖拽内容 拖拽快捷方式到面板,双击快速打开 拖拽文件方式到面板,双击快速打开 拖拽文件夹到面板双击快速打开 拖拽项目调整顺序 右…...
如何将项目挂后台运行?【nohup和tmux】
挂后台运行,防止霸屏。 线上的程序不会将日志输出到控制台,而是输出到日志文件,方便运维查阅信息。 一.nohup--挂后台运行的命令 //nohup--英文全称no hang up,可以后台运行指定命令 //hello.log是指将日志输出到hello.log文件 …...
什么是进程、线程、协程
什么是进程? 我们都知道计算机的核心是CPU,它承担了所有的计算任务;而操作系统是计算机的管理者,它负责任务的调度、资源的分配和管理,统领整个计算机硬件;应用程序则是具有某种功能的程序,程序…...
Python爬虫——selenium_访问元素信息
from selenium import webdriver# 创建浏览器对象 path files/chromedriver.exe browser webdriver.Chrome(path)# 访问地址 url https://www.baidu.com browser.get(url)input browser.find_element_by_id(su)获取元素属性 .get_attribute(class)print(input.get_attribu…...
Linux 文件基本属性
Linux 文件基本属性 Linux 系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。 为了保护系统的安全性,Linux 系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规定。 在 Linux 中我…...
CSS 盒模型是什么?它包含哪些属性?标准盒模型/怪异盒模型
聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 盒模型⭐ 标准盒模型⭐ 怪异盒模型⭐ 写在最后 ⭐ 专栏简介 前端入门之旅:探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入门之旅!这个专栏是为那些对Web开发感…...
VB+SQL光盘信息管理系统设计与实现
摘 要 我的毕业设计课题为“光盘管理系统”,该系统完成光盘相关信息的输入、保存和维护、是按照方便用户、容易操作、确保数据一致完整的原则进行设计。这次毕业设计的开发工具是Visual Basic 6.0,操作平台是Windows2000 Professional中文版,选用的数据库后台是SQL server2…...
MySQL5.7数据库、Navicat Premium1.6可视化工具安装教程【详细教程】
文章目录 一、MySQL、Navicat、注册机地址二、安装(一)、MySQL安装(二)、Navicat Premium安装(三)、集活Navicat Premium 三、遇到的问题1、Are you sure your navicat has not beenpatched/modified befor…...
JVM 调优实例
点击下方关注我,然后右上角点击...“设为星标”,就能第一时间收到更新推送啦~~~ JVM提供了多种垃圾回收器,可以根据应用程序的需求选择最适合的垃圾回收器。例如,如果应用程序需要更快的响应时间,可以选择并行垃圾回收…...
Python numpy中的correlate相关性详解
看代码看见这个方法,记录一下,这个是人家官网的链接np.correlate 云里雾里的,其实就是两个数组点乘,不同模式就是错位点乘,直接看代码 a是原本的数组,v就是滤波器,对应相乘 import numpy as …...
CefFlashBrowser:告别Flash退役困扰的终极轻量级解决方案
CefFlashBrowser:告别Flash退役困扰的终极轻量级解决方案 【免费下载链接】CefFlashBrowser Flash浏览器 / Flash Browser 项目地址: https://gitcode.com/gh_mirrors/ce/CefFlashBrowser 还记得那些经典Flash游戏和教学课件吗?当Adobe宣布停止支…...
NaViL-9B开源大模型落地:金融票据识别+风险点标注自动化案例
NaViL-9B开源大模型落地:金融票据识别风险点标注自动化案例 1. 项目背景与挑战 在金融行业,每天需要处理海量的票据和合同文件。传统的人工审核方式面临三大痛点: 效率瓶颈:一个熟练的审核员每天最多处理200-300份票据成本压力…...
强化学习(7)--时序差分方法
说明:本系列文章是我在学习了西湖大学赵世钰老师的《Mathematical Foundations of Reinforcement Learning》一书后的学习笔记,在B站上有赵老师的完整课程视频。 课程视频链接 PDF教材链接 本文代码链接 一、TD算法的基本形式(TD0…...
如何在Windows 11上运行Android应用:Windows Subsystem for Android完整指南
如何在Windows 11上运行Android应用:Windows Subsystem for Android完整指南 【免费下载链接】WSA Developer-related issues and feature requests for Windows Subsystem for Android 项目地址: https://gitcode.com/gh_mirrors/ws/WSA Windows Subsystem …...
智能Agent核心组件:基于BERT文本分割的任务指令分解模块
智能Agent核心组件:基于BERT文本分割的任务指令分解模块 你有没有遇到过这种情况?对着一个智能助手说:“帮我查一下明天北京的天气,然后告诉我穿什么衣服合适,再推荐几个室内的活动。” 然后,它要么只回答…...
GBase 8c数据库全链路精准降本详解(上)
内存涨价、硬盘涨价、CPU也不便宜,硬件成本一路飙升,企业的IT预算越来越紧。南大通用GBase 8c数据库(gbase database)作为一款高性能分布式HTAP数据库,从列存储压缩、冷热数据分层、内存精准管控、国产CPU适配到磁盘I/O调优&#…...
从零到爬取:在Linux服务器(CentOS 7)上用Anaconda部署你的第一个Scrapy爬虫
从零到爬取:在Linux服务器(CentOS 7)上用Anaconda部署你的第一个Scrapy爬虫 当你第一次通过SSH连接到一台全新的CentOS 7服务器时,面对那个闪烁的光标,可能会感到一丝茫然。不同于Windows的图形界面,Linux服…...
RTX 4090用户必看:Anything to RealCharacters 2.5D转真人引擎环境部署与性能调优
RTX 4090用户必看:Anything to RealCharacters 2.5D转真人引擎环境部署与性能调优 获取更多AI镜像 想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领…...
Gitea Actions 实战:5分钟搞定私有化CI/CD流水线(含Docker配置避坑指南)
Gitea Actions 私有化CI/CD实战:从零构建到高效避坑 在当今快速迭代的软件开发环境中,中小团队和个人开发者常常面临一个两难选择:既需要GitHub Actions那样便捷的CI/CD工具,又希望保持代码的私有性和控制权。Gitea Actions正是为…...
从零开始:手把手教你用Python脚本创建第一个USD场景(附完整代码)
从零构建USD场景:Python实战指南与核心技巧解析 1. USD技术体系与开发环境搭建 Universal Scene Description(USD)作为Pixar推出的开源3D场景描述框架,正在重塑数字内容创作流程。这套技术最初为应对《勇敢传说》中复杂的场景管理…...
