两种Https正向代理的实现原理

正向代理 HTTPS 主要有两种方案,分别是基于证书的解密与再加密方案基于 HTTP CONNECT 隧道的方案,以下是这两种方案的具体信息:

一、基于证书的解密与再加密方案

原理

  • 工作原理:代理服务器拥有自己的证书,客户端需要信任该证书。当客户端通过代理服务器访问目标网站时,代理服务器会使用自己的证书与客户端建立加密连接,同时与目标服务器建立另一个加密连接,然后对客户端和目标服务器之间的数据进行解密和再加密,从而实现对 HTTPS 流量的代理。
  • 优缺点:
    • 优点:代理服务器可以解析出请求和响应内容,便于进行内容过滤、监控和缓存等功能。
    • 缺点:需要客户端信任代理服务器的证书,配置相对复杂,且存在一定的安全风险,因为代理服务器可以查看和修改加密数据。
  • 适用场景:适用于需要对 HTTPS 流量进行深度解析和控制的场景,如企业内部的网络安全管理、内容过滤等。

常见应用与场景举例

  1. 企业安全网关 / 防火墙:
    • 场景: 大型企业内网出口。
    • 用途:
      • 深度检测恶意软件、勒索软件(检查文件下载内容)。
      • 防止数据泄露(DLP - 监控信用卡号、机密文件上传)。
      • 过滤非法/违规内容(如色情、赌博网站)。
      • 实施精细化上网策略(基于内容类别而非仅域名)。
    • 举例: 员工访问 https://drive.google.com 时,代理解密并扫描上传的文件是否含公司机密。
  2. 合规性审计:
    • 场景: 金融、医疗等强监管行业。
    • 用途:
      • 记录所有进出流量以满足法规要求(如 GDPR、HIPAA 日志审计)。
      • 监控员工行为是否符合公司政策。
    • 举例: 银行记录员工通过企业微信发送的所有文件,确保无客户数据违规外泄。
  3. 内容优化与加速:
    • 场景: 学校、大型机构网络。
    • 用途:
      • 缓存 HTTPS 内容(如软件更新、视频资源)。
      • 压缩传输数据节省带宽。
      • 屏蔽广告或恶意脚本。
    • 举例: 校园网代理缓存 https://windowsupdate.com 的更新文件,减少外网带宽消耗

二、基于 HTTP CONNECT 隧道的方案

原理

  • 工作原理:代理服务器不涉及对加密数据的解密和再加密,而是通过 HTTP CONNECT 方法为客户端和目标服务器建立一个 TCP 隧道。客户端通过代理服务器与目标服务器建立连接后,数据直接在客户端和目标服务器之间传输,代理服务器只起到转发的作用。
  • 优缺点:
    • 优点:不需要客户端信任代理服务器的证书,配置相对简单,安全性较高,因为代理服务器无法查看和修改加密数据。
    • 缺点:代理服务器无法解析 HTTPS 流量的内容,无法实现内容过滤和监控等功能。
  • 适用场景:适用于只需要代理服务器帮忙建立连接,而不对 HTTPS 流量进行深度解析的场景,如简单的网络访问代理等。

常见应用与场景举例

  1. 企业安全出站控制(基础层):
    • 场景: 公司或学校网络。
    • 用途:
      • 基于域名/IP 实施访问控制(如禁止访问 facebook.com)。
      • 仅记录访问的域名(不记录具体内容)。
      • 防止内部主机直接暴露公网 IP。
    • 举例: 员工通过代理访问 https://online.visa.com 支付账单,代理仅知道访问了 online.visa.com,无法看到卡号。
  2. 绕过网络限制:
    • 场景: 受防火墙限制的环境(如办公室、学校)。
    • 用途:
      • 通过外部代理访问被封锁的服务(如 GitHub、Google)。
      • 不触发深度检测(因内容未解密)。
    • 举例: 开发者在企业网内配置 VS Code 使用 CONNECT 代理连接 https://api.github.com,绕过企业防火墙对代码仓库的封锁。
  3. 移动设备安全接入:
    • 场景: 企业 BYOD(自带设备)或 MDM(移动设备管理)。
    • 用途:
      • 在不安装企业根证书的前提下,强制流量经过企业代理。
      • 保护企业数据(隔离内网与外网流量)。
    • 举例: 员工的个人手机通过企业 Wi-Fi 上网时,所有 CONNECT 流量经代理过滤,阻止访问恶意域名。
  4. 开发者调试工具:
    • 场景: 本地开发环境(如 Charles Proxy、Fiddler)。
    • 用途:
      • 默认以 CONNECT 模式工作,除非用户显式启用 HTTPS 解密。
      • 查看加密流量的元数据(域名、IP、连接时间)。
    • 举例: 开发者使用 Charles Proxy 调试 App,仅监控 API 请求的域名和响应大小,无需导入证书解密内容。

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

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

相关文章

服务器健康摩尔斯电码:深度解读S0-S5状态指示灯

当服务器机柜中闪烁起神秘的琥珀色灯光,运维人员的神经瞬间绷紧——这些看似简单的Sx指示灯,实则是服务器用硬件语言发出的求救信号。掌握这套"摩尔斯电码",等于拥有了预判故障的透视眼。 一、状态指示灯:服务器的生命体…

Java高级 | 【实验七】Springboot 过滤器和拦截器

隶属文章:Java高级 | (二十二)Java常用类库-CSDN博客 系列文章:Java高级 | 【实验一】Springboot安装及测试 |最新-CSDN博客 Java高级 | 【实验二】Springboot 控制器类相关注解知识-CSDN博客 Java高级 | 【实验三】Springboot 静…

【图片识别改名】如何批量将图片按图片上文字重命名?自动批量识别图片文字并命名,基于图片文字内容改名,WPF和京东ocr识别的解决方案

应用场景 在日常工作和生活中,我们经常会遇到需要对大量图片进行重命名的情况。例如,设计师可能需要根据图片内容为设计素材命名,文档管理人员可能需要根据扫描文档中的文字对图片进行分类命名。传统的手动重命名方式效率低下且容易出错&…

防火墙iptables项目实战

目录 一、网络规划 三、环境准备与检测 1、firewall (1)配置防火墙各大网卡ip并禁用firewalld和selinux (2)打开firewall路由转发 2、PC1(内网) (1)配置ip并禁用firewalld和s…

阿里云域名怎么绑定

阿里云服务器绑定域名全攻略:一步步轻松实现网站“零”障碍上线! 域名,您网站在云端的“身份证”! 在数字化浪潮中,拥有一个属于自己的网站或应用,是个人展示、企业运营不可或缺的一环。而云服务器&#x…

从仿射矩阵得到旋转量平移量缩放量

仿射变换原理 仿射变换是一种线性变换,可以包括平移、旋转、缩放和剪切等操作。其一般公式可以表示为: $$\mathbf{x’} = A \mathbf{x} + \mathbf{b} ] 其中: (\mathbf{x}) 是输入向量,通常表示一个点在二维或三维空间中的坐标。(\mathbf{x’}) 是输出向量,表示经过仿射变…

C++课设:通讯录管理系统(vector、map协作实现)

名人说:路漫漫其修远兮,吾将上下而求索。—— 屈原《离骚》 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 专栏介绍:《编程项目实战》 目录 一、为什么选择C++开发通讯录系统?1. C++的现状2. STL标准模板库的威力二、系统架构设计与STL容器选型1. 三层架构…

Spring Boot 常用注解面试题深度解析

🤟致敬读者 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉 📘博主相关 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息 文章目录 Spring Boot 常用注解面试题深度解析一、核心…

黄晓明新剧《潜渊》定档 失忆三面间谍开启谍战新维度

据悉,黄晓明领衔主演的谍战剧《潜渊》已于近日正式定档6月9日,该剧以“失忆三面间谍”梁朔为核心,打破传统谍战剧的框架和固有角度,以一种特别的视角将悬疑感推向极致。剧中,梁朔因头部受伤失去记忆,陷入身…

【自动驾驶避障开发】如何让障碍物在 RViz 中‘显形’?呈现感知数据转 Polygon 全流程

【自动驾驶避障开发】如何让障碍物在 RViz 中"显形"?呈现感知数据转 Polygon 全流程 自动驾驶系统中的障碍物可视化是开发调试过程中至关重要的一环。本文将详细介绍如何将自动驾驶感知模块检测到的障碍物数据转换为RViz可显示的Polygon(多边形)形式,实现障碍物…

#16 学习日志软件测试

#16 #13布置的任务都没有wanc 反思一下 一个是贪玩 一个是懒 还有一个原因是学习方式 单看视频容易困 然后是一个进度宝贝 java ai 编程 完 挑着看的 廖雪峰教程 完 速看 很多过时 javaweb ai笔记 见到13.aop 小林coding 看到4.并发 java guide 还没开始 若依框架 笔…

在Linux查看电脑的GPU型号

VGA 是指 Video Graphics Array,这是 IBM 于 1987 年推出的一种视频显示标准。 lspci | grep vga 📌 lspci | grep -i vga 的含义 lspci:列出所有连接到 PCI 总线的设备。 grep -i vga:过滤输出,仅显示包含“VGA”字…

daz3d + PBRSkin (MDL)+ SSS

好的,我们来解释一下 Daz3D 中的 PBRSkin (MDL) Shader。 简单来说,PBRSkin (MDL) 是 Daz Studio 中一种基于物理渲染(PBR)技术、专门用于创建高度逼真人物皮肤效果的着色器(Shader)。 它利用 NVIDIA 的材…

会计 - 合并1- 业务、控制、合并日

一、业务 1.1 业务的定义以及构成要素 业务,是指企业内部某些生产经营活动或资产的组合,该组合一般具有投入、加工处理过程和产出能力,能够独立计算其成本费用或所产生的收入。 (1)投入,指原材料、人工、必要的生产技术等无形资产以及构成产出能力的机器设备等其他长期资…

uni-app 项目支持 vue 3.0 详解及版本升级方案?

uni-app 支持 Vue 3.0 详解及升级方案 一、uni-app 对 Vue 3.0 的支持现状 uni-app 从 3.0 版本 开始支持 Vue 3.0,主要变化包括: 核心框架升级: 基于 Vue 3.0 的 Composition API 和 Options API 双模式支持提供 vueuse/core 等组合式 API…

Java高级 | 【实验三】Springboot 静态资源访问

隶属文章: Java高级 | (二十二)Java常用类库-CSDN博客 系列文章: Java高级 | 【实验一】Spring Boot安装及测试 最新-CSDN博客 Java高级 | 【实验二】Springboot 控制器类相关注解知识-CSDN博客 目录 一、Thymeleaf 1.1 是什么&…

12、企业应收账款(AR)全流程解析:从发票开具到回款完成

在商业活动中,现金流如同企业的命脉,而应收管理则是维系这条命脉正常运转的重要保障。许多企业由于对应收账款缺乏有效管理,常常面临资金周转困难的问题。实践证明,建立科学的应收管理体系能够显著提升资金回笼效率,为…

Python训练营打卡Day46(2025.6.6)

知识点回顾: 不同CNN层的特征图:不同通道的特征图什么是注意力:注意力家族,类似于动物园,都是不同的模块,好不好试了才知道。通道注意力:模型的定义和插入的位置通道注意力后的特征图和热力图 i…

ASP.NET MVC添加视图示例

ASP.NET MVC高效构建Web应用- 商品搜索 - 京东 视图(V)是一个动态生成HTML页面的模板,它负责通过用户界面展示内容。本节将修改HelloWorldController类,并使用视图模板文件,以干净地封装生成对客户端的HTML响应的过程…

12.6Swing控件4 JSplitPane JTabbedPane

JSplitPane JSplitPane 是 Java Swing 中用于创建分隔面板的组件,支持两个可调整大小组件的容器。它允许用户通过拖动分隔条来调整两个组件的相对大小,适合用于需要动态调整视图比例的场景。 常用方法: setLeftComponent(Component comp)&a…