掌桥专利:专业的专利平台
掌桥专利
首页

一种VPN数据安全访问控制方法及系统

文献发布时间:2023-06-19 10:52:42


一种VPN数据安全访问控制方法及系统

技术领域

本申请属于虚拟专用网络(VPN)的访问控制技术领域,尤其涉及一种VPN数据安全访问控制方法及系统。

背景技术

随着信息技术的飞速发展,全球步入大数据时代,数据安全的传输和共享访问越来越受到重视。VPN(Virtual Private Network,虚拟专用网络)作为一种专用加密网络可以提供高安全级别的数据安全共享访问。现有基于VPN的数据访问控制系统,访问方(如用户终端)通过客户端与远程数据服务方建立VPN数据专用通道进行安全的数据共享。

然而,现有基于VPN的数据安全访问控制方案,存在VPN访问方式不灵活,访问性能、访问安全和系统可靠性无法得到保障等缺点,具体如下:

1)传统的VPN网络中,服务方在其本地网络的路由器上打开VPN服务,访问方通过路由器的IP地址与服务方建立VPN加密信道进行数据安全共享,但由于VPN会代理访问方本地主机全部流量,所以访问方一次只能访问一个VPN服务方,也即,一个访问方在一个时刻只能与一个服务方建立专用VPN连接进行数据共享,无法同时与多个服务方建立VPN连接,访问方与服务方的数据共享是多对一的模式,从而数据访问方式不灵活;

2)VPN的实现是在互联网之上建立专用网络,即,构建运行于公网网络架构之上的专用网络,从而VPN性能会受互联网等公网性能变化的影响,访问性能无法得到保障;

3)访问方通过连接位于服务方处的VPN服务器实现专用数据共享服务,如果VPN服务器出现未知原因而无法提供服务,那么整个数据共享将被破坏;

4)VPN网络缺乏网络访问控制机制,无法实现对网络流量的控制,容易受到网络攻击(如DDoS分布式拒绝服务攻击);

5)缺乏可靠的追溯机制,数据共享易失控。

发明内容

有鉴于此,本申请提供了一种基于VPN的数据安全访问控制方法及系统,以用于克服现有方案存在的上述问题中的至少部分问题,提供基于VPN的灵活、高效、安全和可靠的数据共享服务。

本申请公开的技术方案如下:

一种VPN数据安全访问控制方法,应用于VPN数据安全访问控制系统,所述系统包括:基于私有网络搭建的VPN数据安全访问控制平台,以及接入所述VPN数据安全访问控制平台的至少一个访问方和多个服务方;所述VPN数据安全访问控制平台包括VPN管理服务器及多个VPN接入服务器;其中,一个访问方能够通过所述VPN数据安全访问控制平台与多个服务方建立连接,以实现一个服务方能同时与多个服务方进行数据共享;

所述方法包括:

访问方向所接入的第一VPN接入服务器发送原始请求数据包;所述原始请求数据包包括访问方的服务需求信息及目标服务方信息;

所述第一VPN接入服务器接收所述原始请求数据包,并进行格式封装得到第一请求数据包;所述第一请求数据包在所述原始请求数据包基础上封装了原始请求数据包的源地址及根据原始请求数据包中的服务方信息确定的目标服务方的目的地址,以及还封装了根据路由表确定出的下一跳地址;

所述第一VPN接入服务器将所述第一请求数据包转发至所确定出的下一跳地址对应的第二VPN接入服务器;

所述第二VPN接入服务器接收所述第一请求数据包,根据所述第一请求数据包的目的地址及路由表确定下一跳,并将所述第一请求数据包中已有的下一条地址更新为确定出的下一跳地址,得到第二请求数据包;

所述第二VPN接入服务器将所述第二请求数据包转发至所确定出的下一跳地址对应的下一跳VPN接入服务器;

所述下一跳VPN接入服务器重复执行确定请求数据包的下一跳并转发的处理,直至将请求数据包转发至目标服务方所接入的接入服务器;

所述目标服务方所接入的接入服务器对接收的请求数据包进行解封装,并将解封装所得的目标请求数据包发送至目标服务方,以使得目标服务方通过至少一个VPN接入服务器向访问方反馈响应数据包;

其中,VPN数据安全访问控制平台中的多个VPN接入服务器基于VPN管理服务器下发的流表信息形成路由表;若一个访问方同时与多个不同的目标服务方进行数据共享,所述一个访问方与直连接入的VPN接入服务器之间建立有多个VPN连接,不同的VPN连接通过相应不同路由路径接通至相应不同的目标服务方。

可选地,所述私有网络上还搭建有用于运行于所述VPN数据安全访问控制平台上层的监管链;

所述方法还包括:基于所述监管链对所述VPN数据安全访问控制系统中的访问方与服务方之间的交易行为进行监管;

其中,所述基于所述监管链对所述VPN数据安全访问控制系统中的访问方与服务方之间的交易行为进行监管,至少包括:

根据预先定义的智能合约规则,由访问方直连接入的VPN接入服务器填写智能合约,并将填写后的智能合约发送至服务方直连接入的VPN接入服务器;

服务方直连接入的VPN接入服务器根据所述智能合约规则填写接收的智能合约,并将填写后的智能合约发送到监管链上;

监管链根据合约规则,对访问方与服务方之间的交易行为进行监管。

可选地,所述方法还包括:

各VPN接入服务器根据ACL规则使用包过滤技术,对数据包进行过滤,以实现对数据访问的流量控制;其中,所述VPN管理服务器预先将制定好的ACL规则发送到各VPN接入服务器;

和/或,所述方法还包括:

在访问方与服务方之间的数据访问出现超时的情况下,将用于指示超时的异常信息传送至VPN管理服务器;所述异常信息至少包括访问方在所述VPN数据安全访问控制平台中对应的VPN连接信息;

VPN管理服务器根据所述异常信息中的VPN连接信息,将访问方重定向到满足重定向条件的另一VPN接入服务器;

访问方与重定向的VPN接入服务器建立VPN连接,并重新发送之前响应失败的请求信息至重定向的VPN接入服务器。

可选地,所述方法还包括预先将访问方或服务方接入所述VPN数据安全访问控制平台;

所述预先将访问方或服务方接入所述VPN数据安全访问控制平台,包括:

访问方或服务方向所述VPN数据安全访问控制平台中满足接入条件的VPN接入服务器发送VPN接入请求,所述VPN接入请求包括访问方或服务方的接入验证信息;

满足接入条件的VPN接入服务器将访问方或服务方的VPN接入请求发送至VPN管理服务器;

VPN管理服务器基于VPN接入请求中访问方或服务方的接入验证信息,对访问方或服务方进行接入验证,并向所述满足接入条件的VPN接入服务器反馈验证确认信息;

在所述验证确认信息表示验证通过的情况下,服务方或访问方与所述满足接入条件的VPN接入服务器建立VPN信道。

可选地,访问方或服务方在访问VPN接入服务器时虚拟出专用虚拟网卡,并基于所述专用虚拟网卡提供与所接入的VPN接入服务器之间的VPN数据发送和接收功能;

且,若一个访问方同时访问多个目标服务方,所述一个访问方基于虚拟出的一个专用虚拟网卡实现与多个目标服务方之间的数据收发。

一种VPN数据安全访问控制系统,包括:

基于私有网络搭建的VPN数据安全访问控制平台;所述VPN数据安全访问控制平台包括VPN管理服务器及多个VPN接入服务器;

接入所述VPN数据安全访问控制平台的至少一个访问方及多个服务方;一个访问方能够通过所述VPN数据安全访问控制平台与多个服务方建立连接,以实现一个服务方能同时与多个服务方进行数据共享;

其中:

所述访问方,用于向所接入的第一VPN接入服务器发送原始请求数据包;所述原始请求数据包包括访问方的服务需求信息及目标服务方信息;

所述第一VPN接入服务器,用于:接收所述原始请求数据包,并进行格式封装得到第一请求数据包;将所述第一请求数据包转发至所确定出的下一跳地址对应的第二VPN接入服务器;所述第一请求数据包在所述原始请求数据包基础上封装了原始请求数据包的源地址及根据原始请求数据包中的服务方信息确定的目标服务方的目的地址,以及还封装了根据路由表确定出的下一跳地址;

所述第二VPN接入服务器,用于接收所述第一请求数据包,根据所述第一请求数据包的目的地址及路由表确定下一跳,将所述第一请求数据包中已有的下一条地址更新为确定出的下一跳地址,得到第二请求数据包;并将第二请求数据包转发至所确定出的下一跳地址对应的下一跳VPN接入服务器;

所述下一跳VPN接入服务器,用于重复执行确定请求数据包的下一跳并转发的处理,直至将请求数据包转发至目标服务方所接入的接入服务器;

所述目标服务方所接入的接入服务器,用于对接收的请求数据包进行解封装,并将解封装所得的目标请求数据包发送至目标服务方,以使得目标服务方通过至少一个VPN接入服务器向访问方反馈响应数据包,实现对接收的目标请求数据包进行响应;

其中,所述VPN数据安全访问控制平台中的多个VPN接入服务器基于VPN管理服务器下发的流表信息形成路由表;若一个访问方同时与多个不同的目标服务方进行数据共享,所述一个访问方与直连接入的VPN接入服务器之间建立有多个VPN连接,不同的VPN连接通过相应不同路由路径接通至相应不同的目标服务方。

可选地,所述系统还包括在所述私有网络上搭建的用于运行于所述VPN数据安全访问控制平台上层的监管链;

所述监管链,用于对所述VPN数据安全访问控制系统中的访问方与服务方之间的交易行为进行监管;

其中,所述监管链对所述VPN数据安全访问控制系统中的访问方与服务方之间的交易行为进行监管,至少包括:

根据预先定义的智能合约规则,由访问方直连接入的VPN接入服务器填写智能合约,并将填写后的智能合约发送至服务方直连接入的VPN接入服务器;

服务方直连接入的VPN接入服务器根据所述智能合约规则填写接收的智能合约,并将填写后的智能合约发送到监管链上;

所述监管链根据合约规则,对访问方与服务方之间的交易行为进行监管。

可选地:

所述VPN管理服务器,还用于预先将制定好的ACL规则发送到各VPN接入服务器;

所述VPN接入服务器,还用于:在转发数据包时,根据ACL规则使用包过滤技术,对数据包进行过滤,以实现对数据访问的流量控制;和/或,在访问方与服务方之间的数据访问出现超时的情况下,将用于指示超时的异常信息传送至VPN管理服务器;所述异常信息至少包括访问方在所述VPN数据安全访问控制平台中对应的VPN连接信息;

所述VPN管理服务器,还用于根据所述异常信息中的VPN连接信息,将访问方重定向到满足重定向条件的另一VPN接入服务器,以使访问方与重定向的VPN接入服务器建立VPN连接,并重新发送之前响应失败的请求信息至重定向的VPN接入服务器。

可选地,所述访问方或服务方还用于预先接入所述VPN数据安全访问控制平台;

其中,所述访问方或服务方预先接入所述VPN数据安全访问控制平台,具体包括:

访问方或服务方向所述VPN数据安全访问控制平台中满足接入条件的VPN接入服务器发送VPN接入请求,所述VPN接入请求包括访问方或服务方的接入验证信息;

满足接入条件的VPN接入服务器将访问方或服务方的VPN接入请求发送至VPN管理服务器;

VPN管理服务器基于VPN接入请求中访问方或服务方的接入验证信息,对访问方或服务方进行接入验证,并向所述满足接入条件的VPN接入服务器反馈验证确认信息;

在所述验证确认信息表示验证通过的情况下,服务方或访问方与所述满足接入条件的VPN接入服务器建立VPN信道。

可选地,访问方或服务方还用于在访问VPN接入服务器时虚拟出专用虚拟网卡,并基于所述专用虚拟网卡提供与所接入的VPN接入服务器之间的VPN数据发送和接收功能;

且,若一个访问方同时访问多个目标服务方,所述一个访问方基于虚拟出的一个专用虚拟网卡实现与多个目标服务方之间的数据收发。

经由上述技术方案,可知,本申请公开了一种VPN数据安全访问控制方法及系统,该方法及系统基于私有网络搭建了包括VPN管理服务器及多个VPN接入服务器的VPN数据安全访问控制平台,各访问方及各服务方能够接入该平台,且,一个访问方能够通过该平台与多个服务方建立连接,并具体可由一个访问方通过与直连接入的VPN接入服务器(即下文所述的边缘服务器)建立多个VPN连接实现向多个目标服务方的接通,从而,能够基于所建立的多个VPN连接实现一个服务方同时与多个服务方进行数据共享,由此,打破了现有技术中多对一的访问模式,访问方与服务方可实现多对多的数据共享,数据访问方式更灵活;另外,由于VPN数据安全访问控制系统基于私有网络搭建,从而,VPN性能不会受互联网等公网性能变化的影响,访问性能可得到有效保障。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1是本申请实施例提供的VPN数据安全访问控制系统的结构示意图;

图2是本申请实施例提供的VPN数据安全访问控制系统中各组成部分的一详细实现结构图;

图3是本申请实施例提供的访问方或服务方接入VPN数据安全访问控制平台的接入处理逻辑图;

图4是本申请实施例提供的访问方与服务方之间的数据共享通信图;

图5是本申请实施例提供的VPN数据安全访问控制系统中各组成部分的另一详细实现结构图;

图6是本申请实施例提供的基于监管链对VPN数据安全访问控制系统中访问方与服务方之间的交易行为进行监管的逻辑示意图;

图7是本申请实施例提供的VPN数据安全访问控制方法的流程示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

为了解决现有VPN网络的访问控制存在的至少部分问题,本申请实施例公开了一种VPN数据安全访问控制方法及系统,其中,区别于现有VPN网络基于公网构建的特点,本申请实施例基于私有网络构建了一VPN数据安全访问控制系统,所述的VPN数据安全访问控制方法的执行以所构建的系统为基础,具体可应用于所构建的VPN数据安全访问控制系统中。

以下首先对本申请实施例提供的VPN数据安全访问控制系统进行介绍。

参阅图1,示出了VPN数据安全访问控制系统的结构示意图,具体包括:

基于私有网络搭建的VPN数据安全访问控制平台11;所述VPN数据安全访问控制平台11包括VPN管理服务器111及多个VPN接入服务器112;

接入所述VPN数据安全访问控制平台11的至少一个访问方12及多个服务方13;一个访问方能够通过所述VPN数据安全访问控制平台11与多个服务方建立连接,以实现一个服务方能同时与多个服务方进行数据共享;

其中,所述VPN数据安全访问控制平台11中的多个VPN接入服务器112基于VPN管理服务器111下发的流表信息形成路由表;若一个访问方同时与多个不同的目标服务方进行数据共享,所述一个访问方与所接入的接入服务器之间建立有多个VPN连接,也即,允许一个访问方与其在VPN数据安全访问控制平台中直接接入的一个VPN接入服务器之间建立多个VPN连接,不同的VPN连接通过相应不同路由路径接通至相应不同的目标服务方。

VPN数据安全访问控制系统的各组成部分至少具备以下的基本功能:

所述访问方,用于向所接入的第一VPN接入服务器发送原始请求数据包;所述原始请求数据包包括访问方的服务需求信息及目标服务方信息;

所述第一VPN接入服务器,用于:接收所述原始请求数据包,并进行格式封装得到第一请求数据包;将所述第一请求数据包转发至所确定出的下一跳地址对应的第二VPN接入服务器;所述第一请求数据包在所述原始请求数据包基础上封装了原始请求数据包的源地址及根据原始请求数据包中的服务方信息确定的目标服务方的目的地址,以及还封装了根据路由表确定出的下一跳地址;

所述第二VPN接入服务器,用于接收所述第一请求数据包,根据所述第一请求数据包的目的地址及路由表确定下一跳,将所述第一请求数据包中已有的下一条地址更新为确定出的下一跳地址,得到第二请求数据包;并将第二请求数据包转发至所确定出的下一跳地址对应的下一跳VPN接入服务器;

所述下一跳VPN接入服务器,用于重复执行确定请求数据包的下一跳并转发的处理,直至将请求数据包转发至目标服务方所接入的接入服务器;

所述目标服务方所接入的接入服务器,用于对接收的请求数据包进行解封装,并将解封装所得的目标请求数据包发送至目标服务方,以使得目标服务方通过至少一个VPN接入服务器向访问方反馈响应数据包,实现对接收的目标请求数据包进行响应。

本实施例的VPN数据安全访问控制系统,基于私有网络搭建了包括VPN管理服务器及多个VPN接入服务器的VPN数据安全访问控制平台,各访问方及各服务方能够接入该平台,且,一个访问方能够通过该平台与多个服务方建立连接,并具体可由一个访问方通过与直连接入的VPN接入服务器(即下文所述的边缘服务器)建立多个VPN连接实现向多个目标服务方的接通,从而,能够基于所建立的连接实现一个服务方同时与多个服务方进行数据共享,由此,打破了现有技术中多对一的访问模式,访问方与服务方可实现多对多的数据共享,数据访问方式更灵活;另外,由于VPN数据安全访问控制系统基于私有网络搭建,从而,VPN性能不会受互联网等公网性能变化的影响,访问性能可得到有效保障。

以下进一步通过一可选实施例,提供本申请中VPN数据安全访问控制系统的各组成部分——VPN数据安全访问控制平台11(包括VPN管理服务器111及多个VPN接入服务器112)、访问方12及服务方13的更详细的结构组成及其功能。

如图2所示,提供了VPN数据安全访问控制系统中各组成部分的详细实现结构,其中:

VPN管理服务器111,至少包括账户管理模块和SDN(Defined Software Network,软件定义网络)控制器模块。账户管理模块保存当前已注册的访问方用户或者服务方的身份信息,所述的身份信息可以包括但不限于用户名、密码、用户组等信息;SDN控制器用来进行路径计算与预分配,其中,可选地,可根据安全因素、流量因素与路径上某一路由节点的实际情况(如只能在单向转发数据、不能双向转发数据等)等中的任一项或多项进行路由、转发规则的定制,以得到相应的路径映射表等流表信息,并下发路径映射表等流表信息至平台中的各个VPN接入服务器。

VPN接入服务器112,至少包括信息管理模块、ACL(Access Control Lists,访问控制列表)模块和FlowTable。信息管理模块用来记录访问方与对应的服务方的信息,比如双方IP地址、端口号和加密协议等信息,其中,加密协议可以是但不限于IPSec等加密协议;ACL模块执行VPN管理服务器的ACL规则,进行IP流量管理;FlowTable用来接收VPN管理服务器中的流表信息形成流表,用于网络流量转发等功能。

基于上述的VPN管理服务器111及VPN接入服务器112的各组成结构及其功能,VPN数据安全访问控制平台可以实现更加方便的应用层路由,极大提高了应用的服务性能。其中,VPN数据安全访问控制平台可以但不限于采用VPN服务器云的方式实现。

访问方12,至少包括第一账户管理模块、第一信息显示模块及第一虚拟网络管理模块。其中,第一账户管理模块用于账户业务逻辑管理,具体可以包括但不限于用于管理访问方自身的账号、密码、安全证书、加密方式等信息;第一信息显示模块用于用户(即访问方)数据的可视化,包括但不限于当前用户信息、当前建立的不同的VPN通道以及可供使用的VPN网络资源的可视化显示,具体地,比如用于访问方当前正访问内容的显示(如显示访问方正访问的内容简介等),或者,显示该访问方当前因同时访问多个不同的服务方而同时与VPN数据安全访问控制平台建立的多个不同的VPN通道等,更具体地,VPN数据安全访问控制平台允许访问方与其对应的直连VPN接入服务器建立多个VPN连接,以实现访问方与多个服务方同时进行数据共享,从而实现多对多的VPN数据共享模式,基于此,所述第一信息显示模块通过显示访问方当前因同时访问多个不同的服务方而同时与VPN数据安全访问控制平台建立的多个不同VPN通道的通道信息,可便于访问方用户对多个不同VPN通道进行查看及管理。第一虚拟网络管理模块用于访问方在访问VPN接入服务器时虚拟出专用虚拟网卡,以专门用来提供VPN数据发送和接收功能,其中,若一个访问方同时访问多个目标服务方,则该一个访问方基于虚拟出的一个专用虚拟网卡实现与多个目标服务方之间的数据收发。

服务方13,至少包括第二账户管理模块、第二信息显示模块、资源管理模块和第二虚拟网络管理。第二账户管理模块用于管理账户业务逻辑,可以包括但不限于用户身份登记注册、访问用户管理、用户权限、黑名单管理等功能,其中,访问用户管理比如可以包括但不限于:服务方ID、访问方所访问服务的安全等级、服务/内容类型、数据标准、数据格式、谁正在访问(如访问方ID)等等,用户权限则可以包括访问方的数据访问权限,服务方可以根据用户角色的不同从而自定义不同的访问权限以及黑名单等功能。第二信息显示模块用于数据可视化,具体可以包括但不限于当前正访问情况的动态显示,如,谁正在访问、访问的内容/服务是什么、是否越界、是否有权限、内容安全等级等;资源管理模块用于管理当前被访问的资源信息,包括添加资源,删除资源等,比如,若服务方不想某些角色的用户访问某些资源,则可调整资源权限,或删除某些资源,手段比如可通过用户/用户组与内容等级的对应关系配置实现;第二虚拟网络管理模块用于服务方在访问VPN接入服务器时虚拟出专用虚拟网卡,以专门用来提供VPN数据发送和接收功能。

其中,在上述的VPN数据安全访问控制系统中,服务方与访问方之间的数据共享需要以访问方和服务方之间预先建立了VPN链路为前提,由此,所述访问方或服务方还用于预先接入所述VPN数据安全访问控制平台。

具体地,如图3所示,所述访问方或服务方预先接入所述VPN数据安全访问控制平台,具体可以通过以下的接入处理流程实现:

1)访问方或服务方向所述VPN数据安全访问控制平台中满足接入条件的VPN接入服务器发送VPN接入请求,所述VPN接入请求包括访问方或服务方的接入验证信息;

其中,满足接入条件的VPN接入服务器,具体可以是指与访问方最邻近的VPN接入服务器,此种情形下,本质上是基于最近邻原则,选择VPN数据安全访问控制平台中与访问方物理距离最近的VPN接入服务器用来与访问方或服务方进行直连,访问方可通过接入确定出的该符合接入条件的VPN接入服务器实现向VPN数据安全访问控制平台的接入。

为便于描述,本申请实施例将访问方或服务方直连接入的符合接入条件的VPN接入服务器,称为访问方或服务方对应的边缘服务器。

可选地,所述满足接入条件的VPN接入服务器,还可以是综合VPN数据安全访问控制平台中的各VPN接入服务器与访问方之间的物理距离、VPN接入服务器的负载情况以及网络抖动等因素而确定出的最优VPN接入服务器。

所述VPN接入请求包括的访问方或服务方的接入验证信息,该接入验证信息具体可以是访问方或服务方的用户名/用户ID、密码等信息,以用于对访问方或服务方的登录验证。

2)满足接入条件的VPN接入服务器将访问方或服务方的VPN接入请求发送至VPN管理服务器;

满足接入条件的VPN接入服务器,也即访问方或服务器方所接入的边缘服务器在接收到访问方或服务方的接入请求后,将其发送至VPN管理服务器。

其中,需要说明的是,服务方与访问方访问到VPN接入服务器是随机的,可视实际的接入需求而定,没有先后次序区别。

3)VPN管理服务器基于VPN接入请求中访问方或服务方的接入验证信息,对访问方或服务方进行接入验证,并向所述满足接入条件的VPN接入服务器反馈验证确认信息;

VPN管理服务器接收到边缘服务器发送的接入请求,基于自身的账户管理模块对接入请求中包括的用户名/用户ID、密码等信息进行验证,并向边缘服务器反馈是否验证通过的验证确认信息。

4)在所述验证确认信息表示验证通过的情况下,服务方或访问方与所述满足接入条件的VPN接入服务器建立VPN信道。

也即,若验证通过,则将访问方或服务方接入其对应的边缘服务器,否则,若验证未通过,则不接入。

需要说明的是,在一个访问方需与多个目标服务方同时进行数据共享的情形下,本申请实施例的VPN数据安全访问控制系统允许该一个访问方与其对应的边缘服务器建立多个VPN连接,其中不同的VPN连接分别用于接通至不同的目标服务方,相应可实现在一个访问方和多个不同服务方之间同时建立VPN链路,以此可实现一个访问方能够同时与多个目标服务方进行数据共享,且本质上来说,本申请通过将不同服务方接入所提供的VPN数据安全访问控制平台,实现了逻辑意义上的一个VPN网络,这与现有技术中一个服务方对应建立一个VPN网络,且不同服务方的VPN网络各自孤立的特点是完全不同的。

在访问方和服务方之间预先建立有VPN链路的基础上,参阅图4示出的访问方与服务方的通信逻辑示意图,访问方与服务方可通过以下的工作流程进行数据共享:

1)访问方向所接入的VPN接入服务器V1(即边缘服务器)发送原始请求数据包;

所述原始请求数据包包括访问方C1的服务需求信息及目标服务方信息;其中,服务需求信息具体可以包括用于指示获取服务方目标内容的内容获取需求,或者还可以包括用于指示需将访问方已有的某目标内容上传至服务方的内容上传需求信息,目标服务方信息比如可以包括但不限于目标服务方的服务方名称(如“亚马逊”)等信息。

2)VPN接入服务器V1接收所述原始请求数据包,对其进行格式封装,如进行VxLAN封装等,并确定下一跳,将封装后的数据包发送至下一跳对应的VPN接入服务器VC1;

其中,与VPN接入服务器V1为边缘服务器相对应,对于访问方或服务方并未直连接入的VPN接入服务器,如图4中的VC1、VC2,可将其称为VPN核心服务器。

VPN接入服务器V1在所述原始请求数据包基础上封装了原始请求数据包的源地址及根据原始请求数据包中的服务方信息确定的目标服务方如图4中C2的目的地址,以及还封装了根据路由表确定出的下一跳地址;其中,封装的目标服务方的目的地址比如可以包括目标服务方如C2的目的IP及端口,VPN接入服务器V1具体可通过查询本地OpenFlow表,确定出下一跳。

3)VPN接入服务器VC1接收到封装数据包后,首先解封装,然后查询本地OpenFlow表确定好下一跳,将新的下一跳地址替换数据包中已有的下一跳地址重新封装,例如进行VxLAN封装等;并将封装数据包转发至新的下一跳,如图4中的VPN接入服务器VC2;

4)VPN接入服务器VC2所执行的转发处理过程与VPN接入服务器VC1类似,具体可参阅步骤3)中对VC1的转发处理过程的描述,基于相应的转发处理过程,VC2将数据包转发至目标服务方C2对应的边缘服务器,即图4中的VPN接入服务器V2;

5)VPN接入服务器V2对接收的数据包进行解封装,如进行VxLAN解封装等,并将其发送到服务方C2;

6)服务方C2向VPN接入服务器V2发送响应数据包;

7)-9)同上述的步骤2)-4)类似,具体可参阅步骤2)-4)描述,区别仅在于数据的发送方和接收方发生了互换;

10)VPN接入服务器V1进行数据解封装,如进行VxLAN解封装等,并将其发送到访问方C1,以此实现了服务方对访问方的请求响应。

其中,需要说明的是,若一个访问方同时与多个不同的目标服务方进行数据共享,所述一个访问方可以与直连接入的接入服务器(即访问方对应的边缘服务器)之间建立有多个VPN连接,不同的VPN连接通过相应不同路由路径接通至相应不同的目标服务方,以此实现一个访问方与不同目标服务方之间的数据共享。

仍以图4为例,若访问方C1除了需访问服务方C2,还需要访问服务方C3、C4,则访问方C1可以与VPN接入服务器V1同时建立3个VPN连接,每个VPN连接基于平台中不同的路由路径相应分别连通至不同的目标服务方,如服务方C2或C3或C4等。

还需要说明的是,图4中以访问方与服务方之间的VPN通道路径上包括4个VPN接入服务器为例对两者之间的数据共享流程进行了描述,实际使用中,访问方与服务方之间的VPN通道路径上包括的VPN接入服务器数量可以是不限定的,可视实际需求而定,本实施对此不加限制。

可选地,为了解决传统VPN网络的访问控制方案存在的缺乏可靠的追溯机制,数据共享易失控的问题,本申请实施例还在VPN数据安全访问控制平台上层进一步搭建了一监管链,相应地,所述VPN数据安全访问控制系统还可以包括在所述私有网络上搭建的用于运行于所述VPN数据安全访问控制平台上层的监管链;具体如图5所示。

所述监管链具体可以是基于区块链技术而搭建的监管链,传统的区块链通常运行于公网之上,也即基于公网进行搭建,而本申请实施例中,监管链是基于私有网络搭建的,并运行于VPN数据安全访问控制平台上层。

其中,所搭建的监管链,可用于对VPN数据安全访问控制系统中访问方与服务方之间的交易行为进行监管。

结合参阅图6,基于监管链对VPN数据安全访问控制系统中访问方与服务方之间的交易行为进行监管的流程可以包括:

1)根据预先定义的智能合约规则,由访问方接入的VPN接入服务器填写智能合约,并将填写后的智能合约发送至服务方所接入的VPN接入服务器;

比如,在图6中,则具体可以由访问方的VPN接入服务器V1根据定义好的智能合约规则填写智能合约,所填写的智能合约内容可以包括但不限于开放的数据端口、数据访问的连接时间等信息,并在填好后将智能合约发送至VPN接入服务器V2。

2)服务方所接入的VPN接入服务器根据所述智能合约规则填写接收的智能合约,并将填写后的智能合约发送到监管链上;

具体地,在图6中,则可以进一步由VPN接入服务器V2继续进行智能合约填写,所填写的智能合约内容可以包括但不限于开放的数据端口、数据访问的连接时间等信息,填写完毕后,由V2将智能合约发送到监管链上。

3)所述监管链根据合约规则,对访问方与服务方之间的交易行为进行监管。

在此基础上,当访问方与服务方进行数据共享时,监管链基于两者填写的智能合约,对访问方与服务方之间的交易行为进行信息记录,例如,记录访问方所接入服务方的接入端口,并对数据访问的连接时间进行记录等等,之后,可在有需求时,基于记录的交易行为信息进行访问方或服务方的行为追溯,通过区块链机制记录访问方与服务方的网络交易行为,实现了访问方与服务方的网络行为的全记录和不可抵赖。

可选地,为了解决传统VPN网络的访问控制方案存在的缺乏网络访问控制机制,无法实现对网络流量的控制,容易受到网络攻击(如DDoS分布式拒绝服务攻击)这一问题,本申请实施例中,VPN数据安全访问控制系统中的各VPN接入服务器还可以用于在数据包的接收、转发等处理过程中,根据ACL规则使用包过滤技术,对数据包进行过滤,以此实现对数据访问的流量控制,相应可避免受到网络攻击(如DDoS分布式拒绝服务攻击)。

其中,所述VPN接入服务器中的ACL规则为由管理服务器在预先制定好ACL规则时同步过来的相应ACL规则信息。

可选地,本申请实施例中,VPN接入服务器还可以用于在访问方与服务方之间的数据访问出现超时的情况下,将用于指示超时的异常信息传送至VPN管理服务器;

所述异常信息至少包括访问方在所述VPN数据安全访问控制平台中对应的VPN连接信息,该VPN连接信息具体可以包括但不限于访问方所接入的边缘服务器的IP及端口等信息。

VPN管理服务器在接收到VPN接入服务器发送的上述异常信息后,相应可根据所述异常信息中的VPN连接信息,将访问方重定向到满足重定向条件的另一VPN接入服务器。

所述满足重定向条件的另一VPN接入服务器可以是但不限于:与当前发生超时的VPN接入服务器物理距离最近的VPN接入服务器,或者,综合VPN数据安全访问控制平台中的各VPN接入服务器与访问方之间的物理距离、VPN接入服务器的负载情况以及网络抖动等因素而确定出的除所述当前发生超时的VPN接入服务器之外的最优VPN接入服务器。

实施中,具体可通过分布式VPN接入服务器为访问方和服务方提供VPN接入服务,如果当前接入服务器出现故障,那么服务自动被转移到附近的重定向边缘服务器上继续提供VPN服务,保证了服务的可靠性;

在此基础上,访问方可进一步与重定向的VPN接入服务器建立VPN连接,并重新发送之前响应失败的请求信息至新接入的服务器,由此则可以实现对访问方提供不中断的VPN服务,从而可以提升系统可靠性,相应可解决现有VPN网络存在的VPN服务器一旦出现未知原因而无法提供服务那么整个数据共享将被破坏相应导致向访问方提供的服务中断的问题。

对应于上述的VPN数据安全访问控制系统,本申请实施例还提供了一种VPN数据安全访问控制方法,该方法可应用于上文所述的VPN数据安全访问控制系统,参阅图7示出的VPN数据安全访问控制方法的流程示意图,该方法可以包括:

步骤101、访问方向所接入的第一VPN接入服务器发送原始请求数据包;所述原始请求数据包包括访问方的服务需求信息及目标服务方信息;

步骤102、所述第一VPN接入服务器接收所述原始请求数据包,并进行格式封装得到第一请求数据包;所述第一请求数据包在所述原始请求数据包基础上封装了原始请求数据包的源地址及根据原始请求数据包中的服务方信息确定的目标服务方的目的地址,以及还封装了根据路由表确定出的下一跳地址;

步骤103、所述第一VPN接入服务器将所述第一请求数据包转发至所确定出的下一跳地址对应的第二VPN接入服务器;

步骤104、所述第二VPN接入服务器接收所述第一请求数据包,根据所述第一请求数据包的目的地址及路由表确定下一跳,并将所述第一请求数据包中已有的下一条地址更新为确定出的下一跳地址,得到第二请求数据包;

步骤105、所述第二VPN接入服务器将所述第二请求数据包转发至所确定出的下一跳地址对应的下一跳VPN接入服务器;

步骤106、所述下一跳VPN接入服务器重复执行确定请求数据包的下一跳并转发的处理,直至将请求数据包转发至目标服务方所接入的接入服务器;

步骤107、所述目标服务方所接入的接入服务器对接收的请求数据包进行解封装,并将解封装所得的目标请求数据包发送至目标服务方,以使得目标服务方通过至少一个VPN接入服务器向访问方反馈响应数据包,实现对接收的目标请求数据包进行响应;

其中,VPN数据安全访问控制平台中的多个VPN接入服务器基于VPN管理服务器下发的流表信息形成路由表;若一个访问方同时与多个不同的目标服务方进行数据共享,所述一个访问方与直连接入的VPN接入服务器之间建立有多个VPN连接,不同的VPN连接通过相应不同路由路径接通至相应不同的目标服务方。

在本申请实施例的一可选实施例中,所述私有网络上还搭建有用于运行于所述VPN数据安全访问控制平台上层的监管链;

所述方法还可以包括:基于所述监管链对所述VPN数据安全访问控制系统中的访问方与服务方之间的交易行为进行监管;

其中,所述基于所述监管链对所述VPN数据安全访问控制系统中的访问方与服务方之间的交易行为进行监管,至少包括:

根据预先定义的智能合约规则,由访问方直连接入的VPN接入服务器填写智能合约,并将填写后的智能合约发送至服务方直连接入的VPN接入服务器;

服务方直连接入的VPN接入服务器根据所述智能合约规则填写接收的智能合约,并将填写后的智能合约发送到监管链上;

监管链根据合约规则,对访问方与服务方之间的交易行为进行监管。

在本申请实施例的一可选实施例中,所述方法还可以包括:

各VPN接入服务器根据ACL规则使用包过滤技术,对数据包进行过滤,以实现对数据访问的流量控制;其中,所述VPN管理服务器预先将制定好的ACL规则发送到各VPN接入服务器;

和/或,

在访问方与服务方之间的数据访问出现超时的情况下,将用于指示超时的异常信息传送至VPN管理服务器;所述异常信息至少包括访问方在所述VPN数据安全访问控制平台中对应的VPN连接信息;

VPN管理服务器根据所述异常信息中的VPN连接信息,将访问方重定向到满足重定向条件的另一VPN接入服务器,以使访问方与重定向的VPN接入服务器建立VPN连接,并重新发送之前响应失败的请求信息至重定向的VPN接入服务器。

在本申请实施例的一可选实施例中,所述方法还可以包括预先将访问方或服务方接入所述VPN数据安全访问控制平台;

所述预先将访问方或服务方接入所述VPN数据安全访问控制平台,包括:

访问方或服务方向所述VPN数据安全访问控制平台中满足接入条件的VPN接入服务器发送VPN接入请求,所述VPN接入请求包括访问方或服务方的接入验证信息;

满足接入条件的VPN接入服务器将访问方或服务方的VPN接入请求发送至VPN管理服务器;

VPN管理服务器基于VPN接入请求中访问方或服务方的接入验证信息,对访问方或服务方进行接入验证,并向所述满足接入条件的VPN接入服务器反馈验证确认信息;

在所述验证确认信息表示验证通过的情况下,服务方或访问方与所述满足接入条件的VPN接入服务器建立VPN信道。

在本申请实施例的一可选实施例中,访问方或服务方在访问VPN接入服务器时虚拟出专用虚拟网卡,并基于所述专用虚拟网卡提供与所接入的VPN接入服务器之间的VPN数据发送和接收功能;

且,若一个访问方同时访问多个目标服务方,所述一个访问方基于虚拟出的一个专用虚拟网卡实现与多个目标服务方之间的数据收发。

对于本申请实施例公开的VPN数据安全访问控制方法而言,由于其与上文相应实施例公开的VPN数据安全访问控制系统相对应,所以描述的比较简单,相关相似之处请参见上文相应实施例中VPN数据安全访问控制系统部分的说明即可,此处不再详述。

综上所述,本申请的方法及系统具有以下优势:

1)允许访问方与VPN数据安全访问控制平台中满足接入条件的边缘服务器建立多个VPN连接,实现访问方与多个服务方同时进行数据共享,从而实现多对多的VPN数据共享模式;

2)通过建立大规模的私有VPN服务器网络可以为访问方和服务方提供高效的数据传输服务,VPN网络性能不再受互联网等公网性能变化的影响,访问性能得以保障。

3)通过分布式VPN接入服务器为访问方和服务方提供VPN接入服务,如果当前接入服务器出现故障,那么服务自动被转移到附近的服务器上继续提供VPN服务,保证了服务的可靠性;

4)通过在VPN接入服务器中建立接入控制模块(ACL),实现了IP流量控制,可避免遭受网络攻击(如DDoS分布式拒绝服务攻击);

5)通过在私有网络上搭建用于运行于VPN数据安全访问控制平台上层的监管链,来记录访问方和服务方的网络行为,实现了访问方和服务方网络行为的全记录和不可抵赖性。

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。

为了描述的方便,描述以上系统或装置时以功能分为各种模块或单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。

通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。

最后,还需要说明的是,在本文中,诸如术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

相关技术
  • 一种VPN数据安全访问控制方法及系统
  • 一种基于VPN的安全访问数据的方法、设备和系统
技术分类

06120112718241