SSL VPN

news2025/1/19 17:23:20

SSL工作过程

SSL(Secure Sockets Layer,安全套接层)是一种常用的加密协议

  1. 客户端发起连接请求:客户端向服务器发送连接请求,请求建立一个安全的SSL连接。

  2. 服务器响应:服务器接收到客户端的连接请求后,如果支持SSL协议,就会返回一个数字证书。数字证书包含了服务器的公钥以及其他相关信息,用于证明服务器的身份。

  3. 客户端验证服务器的证书:客户端会验证服务器返回的证书的有效性和合法性。验证过程包括检查证书的签名是否可信、证书是否过期、域名是否匹配等。如果验证失败,客户端会中止连接,或者提示用户关于证书不受信任的信息。

  4. 客户端生成随机数和密钥:客户端会生成一个随机数作为对称加密算法的密钥,并使用服务器的公钥对该密钥进行加密。

  5. 服务器解密密钥:服务器使用自己的私钥来解密客户端发来的密钥。

  6. 确立加密算法和参数:客户端和服务器根据各自支持的加密算法列表,选择一个适用的对称加密算法和参数,用于之后的数据加密。之后,客户端和服务器都知道使用同一个对称密钥进行通信。

  7. 建立SSL连接:客户端通过对称密钥加密算法加密一条消息,并发送给服务器。服务器收到消息后,使用对称密钥解密,确认连接建立成功。此后,客户端和服务器之间的通信将使用对称密钥进行加密和解密。

  8. 安全通信:客户端和服务器使用对称密钥进行加密和解密,保证通信的机密性和完整性。加密数据在传输过程中,即使被截获,也无法理解其中的内容。

SSL中的预主密钥

SSL协商过程中生成的一个随机数,它在SSL连接建立过程中起着重要的作用。下面是预主密钥的几个作用:

  1. 密钥交换:预主密钥用于安全地交换会话密钥(session key)。在SSL握手阶段,客户端和服务器会使用各自的长期私钥和对方的公钥来生成预主密钥,并通过安全通道进行传输。预主密钥能够保证在无安全通道的情况下,仍能安全地交换会话密钥,从而保证后续通信的机密性。

  2. 密钥派生:预主密钥是派生生成会话密钥的基础。在握手阶段,客户端和服务器都使用预主密钥作为输入,通过复杂的密钥派生函数(key derivation function)生成会话密钥。会话密钥是对称密钥,用于加密和解密实际的通信数据。

  3. 完美前向保密性(Perfect Forward Secrecy,PFS):预主密钥的使用还能够实现完美前向保密性。如果攻击者获取了之前的会话数据或长期私钥,他们也无法还原预主密钥。这是因为预主密钥是每个会话都通过随机数生成的,不会长期存储。即使之前的会话密钥被破解,后续会话的安全仍然得到保护。

SSL实现 虚拟网关

 SSL实现 web代理

 

 SSL实现文件共享

 

实现原理

协议转换技术:无需客户端,直接通过浏览器安全访问转换为内网文件共享的相应协议格式。使用
activeX控件。


支持协议

  • ·SMB (windows)
  • ·NFS (linux)

 

SSL实现端口转发

 

 实现原理: 安装activeX控件,本质是NAT过程

 

 

 提供内网TCP资源的访问,C/S资源

提供丰富的静态端口的TCP应用

单端口单服务:telent、SSH、MS RDP VNC

单端口多服务:notes

多端口多服务:outlook

动态端口TCP应用   动态端口:FTP

提供端口级访问控制

自动安装运行一个 ActiveX控件,获取到管理端配置的端口转发资源列表(目的服务器IP、端口)。控件 将客户端发起的TCP报文与资源列表进行比对,当发现报文的目的IP/Port与资源列表中的表项匹配,则 截获报文,开启侦听端口(目的端口经过特定算法得出),并将目的地址改写为回环地址,转发到侦听 端口。对该报文加密封装,添加私有报文头,将目的地址设为USG的IP地址,经由侦听端口发往USG。 USG收到报文进行解密,发往真实的目的服务器端口。USG收到服务器的响应后,再加密封装回传给用 户终端的侦听端口。

 

 网络扩展

 

 SSL VPN要求的终端安全

终端安全是在请求内网主机上部署一个软件,通过该软件检查终端的安全性包括:主机检查,缓存清 除。

主机检查:

  • 杀毒软件检查
  • 防火墙设置检查
  • 注册表检查
  • 端口检查
  • 进程检查
  • 操作系统检查

缓存清除:

  • internet临时文件
  • 浏览器自动保存密码
  • cookie记录
  • 浏览器访问历史记录
  • 回收站和最近打开的文件
  • 指定文件或者文件夹

认证授权

  • vpndb认证授权
  • 第三方服务认证授权
  • 数字证书的认证
  • 短信辅助认证

 

 

在实现SSL VPN时,防火墙需要放行以下几类流量:

  1. SSL/TLS流量:防火墙需要允许SSL/TLS协议的流量通过,以确保SSL VPN连接能够建立和正常运行。这包括标准的SSL端口(例如443端口)和其他配置的SSL VPN使用的端口。

  2. VPN协议流量:根据所选择的SSL VPN解决方案,防火墙需要放行相应的VPN协议流量。常见的SSL VPN协议有OpenVPN、IPsec、L2TP等。

  3. 认证流量:SSL VPN通常涉及用户身份验证,防火墙需要放行与认证相关的流量。这可能包括基于用户名和密码的身份验证流量或其他类型的身份验证流量(如证书、令牌等)。

  4. 内部资源访问流量:一旦SSL VPN连接建立成功,防火墙需要允许SSL VPN客户端通过SSL VPN隧道访问内部受限资源的流量。这可能涉及到内部服务器、数据库、文件共享等的流量。

  5. DNS流量:SSL VPN通常需要进行域名解析,以便将主机名转换为IP地址。防火墙需要允许出站的DNS流量,以确保SSL VPN客户端能够正确解析域名。

注意:具体需要放行哪些流量取决于使用的SSL VPN解决方案和网络架构。此外,在配置防火墙规则时,也要确保仅放行必要的流量以减少潜在的安全风险。

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

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

相关文章

科技云报道:财税数字化时代,财务人实现RPA自由了吗?

企业数字化转型,财务是一个重要的切入点。随着数字化业务不断展开,新的系统、流程和数据源被不断引入,财务部门面临的是不断暴增的对账、处理报表、审计等日常工作。 如此大的工作量,即使是经验丰富的资深财务,也难免…

彩色CAD怎么转为黑白PDF?这些转换技巧了解一下

怎么将彩色CAD转换成黑白PDF格式呢?CAD文件方便编辑,但是不方便阅读和查看,将其转换成黑白色的PDF文件格式,浏览起来会更加方便,此外,黑白对比度高,使得其他人在查看或分享图纸时更容易阅读&…

【暑期每日一练】 Epilogue

目录 选择题(1)解析: (2)解析: (3)解析: (4)解析: (5)解析: 编程题题一描述输入描述:输…

科幻高大上的人脸识别接口

一、人脸登录系统特征识别🍉 采用人脸识别进行登陆验证,之后可选择步态识别数据录入或者在已经录入步态数据的情况下进行步态特征识别。这样的双重验证使得门禁系统更安全。 用户进入人脸识别区域后,系统将进行目标人物的人脸特征数据识别。…

前端js--剪刀石头布

效果图 代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" /><linkrel"stylesheet"href"ht…

智橙全力打造智慧云端,云PDM和BOM系统强强结合

领略现代制造业的无限魅力&#xff0c;云PDM&#xff08;产品数据管理&#xff09;与BOM系统&#xff08;物料清单&#xff09;于智慧云端融汇贯通&#xff0c;一路飞跃&#xff0c;将信息快速传递达至极致。智橙带您深入了解平台功能&#xff0c;以及智橙是如何如何运用云PDM与…

扒一扒smardaten那些让人欲罢不能的服务~

最近常有新粉问睿睿&#xff0c;除了产品&#xff0c;还提供哪些服务呀&#xff1f; 官网上社区版、专业版、企业版、专有版的服务支持到底区别在哪&#xff1f; 别急&#xff0c;睿睿这就给你一一道来&#xff01; smardaten不同版本的服务内容 上上周&#xff0c;睿睿在给新…

在钡铼技术ARM嵌入式控制器上安装Node-RED的详细步骤

嵌入式ARM控制器BL301/BL302系列是工业级坚固型工业控制器&#xff0c;采用NXP的高性能处理器I.MX6ULL&#xff0c;搭配先进的ARM Cortex-A7构架&#xff0c;运行速度高达800MHz&#xff0c;具有高度的稳定性。本产品最高可提供4路RS485/RS232&#xff0c;1路CAN口&#xff0c;…

SpringBoot+Vue实现物流物流中心信息化管理系统

博主主页&#xff1a;一季春秋博主简介&#xff1a;专注Java技术领域和毕业设计项目实战、Java、微信小程序、安卓等技术开发&#xff0c;远程调试部署、代码讲解、文档指导、ppt制作等技术指导。主要内容&#xff1a;毕业设计(Java项目、小程序等)、简历模板、学习资料、面试题…

Linux系统编程(线程同步 互斥锁)

文章目录 前言一、什么是线程同步二、不使用线程同步访问共享资源可能出现的问题三、互斥锁概念四、互斥锁使用1.初始化线程锁的方式2.使用代码 五、死锁的产生和解决方法1.什么是死锁2.为什么会产生死锁3.怎么解决死锁问题 总结 前言 本篇文章带大家学习线程的同步。 一、什…

【JavaSE】String类中常用的字符串方法(超全)

目录 1.求字符串的长度 2.判断字符串是否为空 3.String对象的比较 3.1 判断字符串是否相同 3.2 比较字符串大小 3.3 忽略大小写比较 4.字符串查找 5.转化 5.1 数值和字符串转化 5.1.1 数字转字符串 valueof 5.1.2 valueOf的其他用法 5.1.3 字符串转数字 5.2 大小写转…

innodb存储引擎探究(一)

mysql 体系结构和存储引擎 数据库&#xff1a;物理操作系统文件或者其他形式的文件 实例&#xff1a;mysql数据库由一个共享内存区和后台进程组成 启动mysql实例时&#xff0c;会读取配置文件&#xff0c;安装以下顺序 mysql体系结构 mysql插件式的一个存储引擎可以根据业务…

如何设置 Eclipse Git 插件中的默认作者和提交者

1、git提交代码时默认带出Windows的系统用户 2、Window->Preferences->Team->Configuration->Add Entry 3、输入键值对&#xff08;user.name要设置的值&#xff09;&#xff08;user.email要设置的值&#xff09;->应用保存 4、应用后&#xff0c;再次提交代码…

【AI赋能】人工智能在自动驾驶时代的应用

自我介绍 我是秋说&#xff0c;研究 人工智能、大数据 等前沿技术&#xff0c;传递 Java、Python 等语言知识。 &#x1f4ac;主页链接&#xff1a;秋说的博客 &#x1f4c6; 学习专栏推荐&#xff1a; 人工智能&#xff1a;创新无限&#x1f4ab; MySQL进阶之路&#x1f3c6…

大数据Flink(五十八):Flink on Yarn的三种部署方式介绍

文章目录 Flink on Yarn的三种部署方式介绍 一、​​​​​​​Session模式

Elasticsearch 摄取管道 — 检测到管道的死循环

在数据处理和摄取领域&#xff0c;管道在组织和自动化数据从源到目的地的流动方面发挥着至关重要的作用。 管道是数据按顺序通过的一系列处理阶段&#xff0c;每个阶段负责特定任务。 然而&#xff0c;有时&#xff0c;管道可能会遇到一个重大挑战&#xff0c;称为 “Cycle det…

年薪54840美元|中医学应届博士受聘美国宾大博士后职位

E博士的个人规划是博士毕业即出国做博后工作&#xff0c;当其明确毕业时间后&#xff0c;我们就依照计划提前9个月开始了申请操作。最终落实了宾夕法尼亚大学医学院的博后职位&#xff0c;年薪为54840美元&#xff0c;我们为其实现了毕业即出国的愿望。 E博士背景&#xff1a; …

状态模式(C++)

定义 允许一个对象在其内部状态改变时改变它的行为。从而使对象看起来似乎修改了其行为。 应用场景 在软件构建过程中&#xff0c;某些对象的状态如果改变&#xff0c;其行为也会随之&#xff0c;而发生变化&#xff0c;比如文档处于只读状态&#xff0c;其支持的行为和读写…

【Spring】Bean的作用域和生命周期

目录 一、引入案例来探讨Bean的作用域 二、Bean的作用域 2.1、Bean的6种作用域 2.2、设置Bean的作用域 三、Spring的执行流程 四、Bean的声明周期 1、生命周期演示 一、引入案例来探讨Bean的作用域 首先我们创建一个User类&#xff0c;定义一个用户信息&#xff0c;在定义…

线程池监控

如何监控线程池 文章目录 如何监控线程池线程池两个点需要监控第一点:线程的变化情况第二点:任务的变化 用来监控线程变化的方法自定义一个带监控的线程池,然后继承ThreadPoolExecutor,重载构造方法 自定义线程池中线程的名称的4种方式Spring 框架提供的 CustomizableThreadFac…