虚拟专用网络访问方法、装置和系统与流程

文档序号:12037824阅读:195来源:国知局
虚拟专用网络访问方法、装置和系统与流程

本发明涉及网络技术领域,尤其涉及一种虚拟专用网络访问方法、装置和系统。



背景技术:

虚拟专用网络(virtualprivatenetwork,简称vpn)用于在公用网络上建立专用网络,通过vpn隧道进行加密通讯。虚拟专用网络在企业网络中有广泛应用,例如,当员工出差到外地时可以通过虚拟专用网络访问公司的内网。

当前pc(personalcomputer,个人计算机)使用虚拟专用网络的方式主要有三种,包括:使用pc上安装的客户端登录vpn服务器,与vpn服务器建立vpn隧道,进行通讯;使用pc操作系统自带的客户端登录vpn服务器,与vpn服务器建立vpn隧道,进行通讯;使用pc上安装的浏览器登录vpn服务器,与vpn服务器建立vpn隧道,进行通讯。

由于在保障安全性的条件下,使用浏览器登录vpn服务器操作更加简便,大部分用户已经习惯使用浏览器登录vpn服务器。使用浏览器登录vpn服务器主要是通过浏览器中安装的插件,拉起vpn客户端与vpn服务器建立vpn隧道,从而进行数据传输。目前常见的插件有ie浏览器的activex插件,firefox和chrome浏览器的npapi(netscapepluginapplicationprogramminginterface,网景插件应用程序编程接口)插件。

其中,activex插件又称activex控件,在浏览器上运行,可以下载并装入网页。随着操作系统和浏览器的发展,win10发布后,微软使用edge浏览器取代了ie浏览器,而edge浏览器不支持浏览器插件,用户无法使用edge浏览器登录vpn服务器,无法与vpn服务器建立vpn隧道,也就无法使用vpn服务。

npapi插件类似activex插件,主要用于netscapenavigator、mozillasuite、mozillaseamonkey和mozillafirefox等gecko(引擎)浏览器与applesafari和googlechrome等webkit(开源)引擎浏览器。npapi权限较高,容易产 生漏洞,因此,googlecrome不再支持npapi插件,使用ppapi(pepperpluginapplicationprogramminginterface,pepper插件应用程序编程接口)插件取代了npapi插件。但是,目前ppapi插件必须从crome应用商店下载,而国内的用户无法访问crome应用商店,无法下载使用。因此,用户使用googlecrome浏览器登录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服务器与所述本地服务器使用超文本传输安全协议https协议,所述脚本标签指向预先配置的受信域名,所述受信域名的解析地址指向所述本地服务器。

在一个实施例中,所述vpn服务器与所述本地服务器使用https协议,所述浏览器根据所述脚本标签,向所述本地服务器发送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服务器与所述本地服务器使用超文本传输安全协议https协议,所述脚本标签指向预先配置的受信域名,所述受信域名的解析地址指向所述本地服务器。

在一个实施例中,所述vpn服务器与所述本地服务器使用https协议,所述隧道建立模块还包括:

导入单元,用于导入所述本地服务器预先配置的服务器证书。

此外,为实现上述目的,本发明还提供一种虚拟专用网络访问系统,所述虚拟专用网络访问系统包括浏览器、本地服务器、虚拟专用网络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服务器获取服务,提升了用户体验。

附图说明

图1为本发明虚拟专用网络访问方法第一实施例的流程示意图;

图2为本发明虚拟专用网络访问方法第二实施例、第四实施例的流程示意图;

图3为本发明虚拟专用网络访问方法第三实施例的流程示意图;

图4为本发明虚拟专用网络访问方法第五实施例的流程示意图;

图5为本发明虚拟专用网络访问装置第一实施例的功能模块示意图;

图6为本发明虚拟专用网络访问装置第二实施例、第四实施例的功能模块示意图;

图7为本发明虚拟专用网络访问装置第三实施例的功能模块示意图;

图8为本发明虚拟专用网络访问装置第五实施例的功能模块示意图;

图9为本发明虚拟专用网络访问系统第一实施例的模块示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明实施例的主要解决方案是:浏览器向虚拟专用网络vpn服务器发送访问请求,获取所述vpn服务器根据所述访问请求返回的vpn页面内容;所述浏览器根据所述vpn页面内容,控制本地服务器调用vpn客户端,以 使所述vpn客户端与所述vpn服务器建立vpn隧道;所述浏览器基于所述vpn隧道与所述vpn服务器进行通讯。

由于现有技术中,edge浏览器不支持浏览器插件,用户无法使用edge浏览器登录vpn服务器,无法与vpn服务器建立vpn隧道,也就无法使用vpn服务。ppapi插件无法下载使用,导致用户使用googlecrome浏览器登录vpn服务器受到了严重影响,无法与vpn服务器建立vpn隧道进行通讯,获取vpn服务。

本发明提供一种解决方案,通过浏览器与本地服务器进行交互,解决了当前浏览器不能与vpn服务器建立vpn隧道,获取vpn服务的技术问题,用户可以直接通过浏览器登录vpn服务器获取服务,提升了用户体验。

参照图1,本发明虚拟专用网络访问方法第一实施例提供一种虚拟专用网络访问方法,所述虚拟专用网络访问方法包括:

步骤s10、浏览器向虚拟专用网络vpn服务器发送访问请求,获取所述vpn服务器根据所述访问请求返回的vpn页面内容。

本发明实施例通过浏览器与本地服务器通讯,控制本地服务器调用vpn(virtualprivatenetwork,虚拟专用网络)客户端与vpn服务器建立vpn隧道,从而实现了浏览器与vpn服务器建立vpn隧道,获取vpn服务。

本实施例中所指浏览器可以是ie、edge、chrome、firefox、safari、opera等主流浏览器;本地服务器是指本地电脑上安装的服务器软件,有调用本地客户端的权限;vpn客户端为本地客户端,用于与vpn服务器协商、建立vpn隧道,进行通讯;vpn服务器用于验证本地登录账户的合法性,与vpn客户端建立vpn隧道,为浏览器提供vpn服务。

具体的,用户打开浏览器或由其他软件调用浏览器,输入vpn服务器的地址等信息,确认访问vpn服务器。

浏览器根据vpn服务器地址和用户输入的信息发送访问请求,访问请求携带有当前用户的用户名和密码。用户名和密码可以是用户当前输入浏览器的信息,也可以是浏览器预先保存的信息,可根据实际需要灵活设置。

vpn服务器接收到浏览器发送的访问请求后,验证访问请求携带的用户名和密码,判断当前用户是否为合法用户。若当前用户为合法用户,则vpn 服务器根据访问请求返回vpn页面内容,vpn页面内容携带有建立vpn隧道的请求。

浏览器接收vpn服务器返回的vpn页面内容,得到建立vpn隧道的请求。

步骤s20、所述浏览器根据所述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隧道的建立等,可根据实际需要灵活设置。

步骤s30、所述浏览器基于所述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数据,得到解密后的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服务器获取服务,提升了用户体验。

进一步的,参照图2,本发明虚拟专用网络访问方法第二实施例提供一种虚拟专用网络访问方法,基于上述图1所示的实施例,所述vpn页面内容携带有脚本标签,所述步骤s20包括:

步骤s21、所述浏览器根据所述脚本标签,向所述本地服务器发送vpn请求。

在本实施例中,vpn服务器根据浏览器发送的访问请求,所返回的vpn页面内容携带有脚本标签,用于使浏览器基于此脚本标签,向本地服务器发送建立vpn隧道的请求。

vpn页面携带的脚本标签中,携带有本地服务器的地址或域名,用于指向本地服务器,vpn服务器可以使用https(hypertexttransferprotocolsecure,超文本传输安全协议)协议与本地服务器进行通信,也可以使用http(hypertexttransferprotocol,超文本传输协议)协议与本地服务器进行通信,可根据实际需要灵活设置。

浏览器获取vpn服务器返回的vpn页面内容后,获取vpn页面携带的脚本标签,得到指向本地服务器的回复请求指令,也即vpn请求,控制本地服务器回复vpn服务器,也即控制本地服务器与vpn服务器建立vpn隧道。

然后,浏览器根据脚本标签携带的域名或地址,向对应的端口发送vpn请求。浏览器向本地服务器发送的vpn请求中携带有vpn服务器的地址。

步骤s22、所述浏览器控制所述本地服务器根据所述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服务器获取服务,提升了用户体验。

进一步的,参照图3,本发明虚拟专用网络访问方法第三实施例提供一种虚拟专用网络访问方法,基于上述图1所示的实施例,所述vpn页面内容携带有建链指令,所述步骤s20包括:

步骤s23、所述浏览器根据所述建链指令,与所述本地服务器建立链接。

在本实施例中,vpn服务器根据浏览器发送的访问请求,所返回的vpn页面内容携带有建链指令,用于使浏览器基于此建链指令,向本地服务器发送建链请求。

具体的,作为一种实施方式,vpn页面携带的建链指令为:命令浏览器与本地服务器建立websocket链接。

浏览器在收到vpn服务器返回的vpn页面时,获取vpn页面携带的建链指令。然后,浏览器根据建链指令与本地服务器建立链路。浏览器向本地服务器发送http请求,http请求中包含了附加头信息,表明此http请求为申请协议升级的http请求。本地服务器收到浏览器发送的http请求后,解析http请求中的附加头信息,根据附加头信息产生应答信息,并将应答信息返回给浏览器。

由此,浏览器和本地服务器建立websocket链接,浏览器和本地服务器可以通过此链接通道自由传递信息,并且此链接会持续存在,直至浏览器或者本地服务器中的一方主动的关闭链接。

步骤s24、所述浏览器通过所述链接向所述本地服务器发送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客户端与vpn服务器建立vpn隧道,后续,浏览器可使用此vpn隧道与vpn服务器进行加密通讯。本实施例通过浏览器与本地服务器交互,创建vpn隧道进行通讯,实现了用户可以直接通过浏览器登录vpn服务器获取服务,提升了用户体验。

进一步的,参照图2,本发明虚拟专用网络访问方法第四实施例提供一种 虚拟专用网络访问方法,基于上述图2所示的本发明虚拟专用网络访问方法第二实施例,所述vpn服务器与所述本地服务器使用https协议,所述脚本标签指向预先配置的受信域名,所述受信域名的解析地址指向所述本地服务器。

在本实施例中,vpn服务器与所述本地服务器使用https协议进行通讯。其中,https是以安全为目标的http通道,进行加密通讯,安全性更好。

vpn服务器根据浏览器发送的访问请求,所返回的vpn页面内容携带有脚本标签,用于使浏览器基于此脚本标签,向本地服务器发送建立vpn隧道的请求。

vpn页面携带的脚本标签中,携带预先配置的受信域名,该受信域名的dns解析地址指向本地服务器的地址。作为一种实施方式,vpn页面携带的脚本标签可以是包含:<scriptsrc="https://受信域名/command/callback"></script>的html(hypertextmarkuplanguage,超文本标记语言)标签。

具体的,作为一种实施方式,浏览器获取vpn服务器返回的vpn页面内容后,获取vpn页面携带的脚本标签,得到指向本地服务器的回复请求指令,也即vpn请求,控制本地服务器回复vpn服务器,也即控制本地服务器与vpn服务器建立vpn隧道。

然后,浏览器根据脚本标签携带的受信域名,向对应的端口发送vpn请求。由于该受信域名的dns(domainnamesystem,域名系统)解析地址指向本地服务器,因此,本地服务器收到浏览器发送的vpn请求。

在本实施例中,vpn服务器与本地服务器使用https协议,vpn服务器发送的页面内容中携带的脚本标签指向预先配置的受信域名,该受信域名的解析地址指向本地服务器。本实施例通过预先配置受信域名,使该受信域名的解析地址指向本地服务器,解决了本地服务器的受信问题,实现了本地服务器与vpn服务器基于https协议进行通讯,本实施例通过使用https协议进行通信,增强了数据传输的安全性。

进一步的,参照图4,本发明虚拟专用网络访问方法第五实施例提供一种虚拟专用网络访问方法,基于上述图2所示的本发明虚拟专用网络访问方法 第二实施例,所述vpn服务器与所述本地服务器使用https协议,所述步骤s25包括:

步骤s25、将所述本地服务器预先配置的服务器证书导入所述浏览器。

在本实施例中,vpn服务器与所述本地服务器使用https协议进行通讯。

本地服务器预先生成服务器证书,也即本地服务器的受信证书,颁发给本地服务器的地址。本实施例中,以本地服务器的地址为127.0.0.1进行举例说明。

然后,将得到的服务器证书导入到浏览器中,实现浏览器对该本地服务器证书的信任。

由此,vpn服务器返回的vpn页面携带的脚本标签内容可以是<scriptsrc="https://127.0.0.1/">。

浏览器收到vpn服务器返回的页面内容后,根据脚本标签,向受信任的本地服务器地址发送vpn请求。

在本实施例中,vpn服务器与本地服务器使用https协议,将本地服务器预先配置的服务器证书导入浏览器后,浏览器根据脚本标签,向本地服务器发送vpn请求。本实施例中,预先配置本地服务器的服务器证书并导入浏览器,解决了本地服务器的受信问题,实现了本地服务器与vpn服务器基于https协议进行通讯,本实施例通过使用https协议进行通信,增强了数据传输的安全性。

参照图5,本发明虚拟专用网络访问装置第一实施例提供一种虚拟专用网络访问装置,所述虚拟专用网络访问装置包括:

请求模块10,用于向虚拟专用网络vpn服务器发送访问请求,获取所述vpn服务器根据所述访问请求返回的vpn页面内容。

本发明实施例通过虚拟专用网络访问装置与本地服务器通讯,控制本地服务器调用vpn(virtualprivatenetwork,虚拟专用网络)客户端与vpn服务器建立vpn隧道,从而实现了浏览器与vpn服务器建立vpn隧道,获取vpn服务。

本实施例中所指虚拟专用网络访问装置可以部署于ie、edge、chrome、firefox、safari、opera等主流浏览器中;本地服务器是指本地电脑上安装的 服务器软件,有调用本地客户端的权限;vpn客户端为本地客户端,用于与vpn服务器协商、建立vpn隧道,进行通讯;vpn服务器用于验证本地登录账户的合法性,与vpn客户端建立vpn隧道,为浏览器提供vpn服务。

具体的,用户打开浏览器或由其他软件调用浏览器,输入vpn服务器的地址等信息,确认访问vpn服务器。

请求模块10根据vpn服务器地址和用户输入的信息发送访问请求,访问请求携带有当前用户的用户名和密码。用户名和密码可以是用户当前输入浏览器的信息,也可以是浏览器预先保存的信息,可根据实际需要灵活设置。

vpn服务器接收到浏览器发送的访问请求后,验证访问请求携带的用户名和密码,判断当前用户是否为合法用户。若当前用户为合法用户,则vpn服务器根据访问请求返回vpn页面内容,vpn页面内容携带有建立vpn隧道的请求。

请求模块10接收vpn服务器返回的vpn页面内容,得到建立vpn隧道的请求。

隧道建立模块20,用于根据所述vpn页面内容,控制本地服务器调用vpn客户端,以使所述vpn客户端与所述vpn服务器建立vpn隧道。

请求模块10获取vpn服务器返回的vpn页面内容后,隧道建立模块20控制本地服务器调用vpn客户端与vpn服务器建立vpn隧道。

具体的,作为一种实施方式,隧道建立模块20获取vpn页面携带的建立vpn隧道的请求,将建立vpn隧道的请求发送给本地服务器。

本地服务器在接收到建立vpn隧道的请求后,调用vpn客户端,由vpn客户端向vpn服务器发送链接请求,进行验证和对称秘钥协商,完成vpn隧道的建立,生成vpn隧道进行通讯时所使用的对称秘钥。

然后,vpn客户端将生成的对称秘钥返回给浏览器,或者,vpn客户端将生成的对称秘钥返回给本地服务器,由本地服务器将对称秘钥返回给隧道建立模块20。

若vpn隧道建立失败,则隧道建立模块20再次向本地服务器发出vpn指令,控制本地服务器调用vpn客户端与vpn服务器建立vpn隧道,或终止当前vpn隧道的建立等,可根据实际需要灵活设置。

通讯模块30,用于基于所述vpn隧道与所述vpn服务器进行通讯。

若当前vpn客户端与vpn服务器成功建立vpn隧道,则通讯模块30基于得到的vpn隧道,与vpn服务器通讯,获取vpn服务器提供的vpn服务。在通讯过程中,通讯模块30与vpn服务器使用生成的对称秘钥进行数据的加密与解密,保证数据传输的安全性。

通讯模块30可以直接通过vpn隧道向vpn服务器发送访问请求,获取vpn服务器返回的网站网页内容;通讯模块30也可以控制本地服务器调用本地客户端,例如邮件客户端等,通过vpn隧道获取vpn服务器返回的资源数据,获取vpn服务。

具体的,用户根据实际需要发出指令,例如,网页内容的请求指令、邮件资源的请求指令等。

通讯模块30根据用户的指令建立服务请求,并使用本地服务器或vpn客户端返回的对称秘钥对服务请求进行加密。

然后,通讯模块30将加密后的服务请求通过vpn隧道发送给vpn服务器。

在vpn服务器收到浏览器发送的加密服务请求后,作为一种实施方式,使用建立vpn隧道时与vpn客户端协商得到的对称秘钥,对加密服务请求进行解密,得到服务请求。

然后,vpn服务器根据服务请求获取相应的vpn数据,例如网页内容等。vpn服务器使用对称秘钥对vpn数据进行加密,然后将加密后得到的vpn数据通过vpn隧道返回给通讯模块30。

通讯模块30获取vpn服务器通过vpn隧道返回的加密vpn数据,然后使用对称秘钥解密当前的加密vpn数据,得到解密后的vpn数据。

由此,通讯模块30得到vpn服务器返回的vpn数据,实现了与vpn服务的通讯,获取了vpn服务。

在vpn服务器收到浏览器发送的加密服务请求后,作为另一种实施方式,使用建立vpn隧道时与vpn客户端协商得到的对称秘钥,对加密服务请求进行解密,得到服务请求。

然后,vpn服务器根据服务请求获取相应的vpn数据,例如网页内容等。vpn服务器使用对称秘钥对vpn数据进行加密,然后将加密后得到的vpn数据通过vpn隧道发送至vpn客户端。

vpn客户端接收到vpn服务器返回的加密vpn数据后,将得到的vpn数据返回给通讯模块30。

通讯模块30获取vpn客户端返回的加密vpn数据,然后使用对称秘钥解密当前的加密vpn数据,得到解密后的vpn数据,实现了与vpn服务器的通讯,获取了vpn服务。

由此,实现了虚拟专用网络访问装置与vpn服务器建立vpn隧道进行通讯,获取vpn服务。

在本实施例中,请求模块10向虚拟专用网络vpn服务器发送访问请求,获取vpn服务器根据访问请求返回的vpn页面内容;隧道建立模块20根据vpn页面内容,控制本地服务器调用vpn客户端,以使vpn客户端与vpn服务器建立vpn隧道;通讯模块30基于vpn隧道与vpn服务器进行通讯。本实施例通过请求模块10发送访问请求,获取vpn服务器返回的vpn页面,然后隧道建立模块20根据vpn页面内容,向本地服务器发起请求,控制本地服务器拉起vpn客户端,使vpn客户端与vpn服务器协商建立vpn隧道,由此实现虚拟专用网络访问装置与vpn服务器之间vpn隧道的建立,使得通讯模块30和vpn服务器可以基于得到的vpn隧道进行数据的加密传输,实现了vpn服务的获取。本实施例通过虚拟专用网络访问装置与本地服务器进行交互,解决了当前浏览器不能与vpn服务器建立vpn隧道,获取vpn服务的技术问题,用户可以直接通过浏览器登录vpn服务器获取服务,提升了用户体验。

进一步的,参照图6,本发明虚拟专用网络访问装置第二实施例提供一种虚拟专用网络访问装置,基于上述图5所示的实施例,所述vpn页面内容携带有脚本标签,所述隧道建立模块20包括:

vpn请求单元21,用于根据所述脚本标签,向所述本地服务器发送vpn请求。

在本实施例中,vpn服务器根据请求模块10发送的访问请求,所返回的vpn页面内容携带有脚本标签,用于使vpn请求单元21基于此脚本标签,向本地服务器发送建立vpn隧道的请求。

vpn页面携带的脚本标签中,携带有本地服务器的地址或域名,用于指 向本地服务器,vpn服务器可以使用https(hypertexttransferprotocolsecure,超文本传输安全协议)协议与本地服务器进行通信,也可以使用http(hypertexttransferprotocol,超文本传输协议)协议与本地服务器进行通信,可根据实际需要灵活设置。

请求模块10获取vpn服务器返回的vpn页面内容后,vpn请求单元21获取vpn页面携带的脚本标签,得到指向本地服务器的回复请求指令,也即vpn请求,控制本地服务器回复vpn服务器,也即控制本地服务器与vpn服务器建立vpn隧道。

然后,vpn请求单元21根据脚本标签携带的域名或地址,向对应的端口发送vpn请求。vpn请求单元21向本地服务器发送的vpn请求中携带有vpn服务器的地址。

第一建立单元22,用于控制所述本地服务器根据所述vpn请求调用所述vpn客户端,以使所述vpn客户端与所述vpn服务器建立vpn隧道。

本地服务器监听其端口收到的数据信息,在收到vpn请求单元21发送的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客户端将生成的对称秘钥返回给第一建立单元22,或者,vpn客户端将生成的对称秘钥返回给本地服务器,由本地服务器将对称秘钥返回给第一建立单元22。

由此,第一建立单元22得到了与vpn服务器通讯的对称秘钥,完成了vpn隧道的建立。

在本实施例中,vpn页面内容携带有脚本标签,vpn请求单元21根据脚本标签,向本地服务器发送vpn请求;第一建立单元22控制本地服务器根据vpn请求调用vpn客户端,以使vpn客户端与vpn服务器建立vpn隧道。本实施例中服务器返回的vpn页面携带有指向本地服务器的脚本标签,vpn请求单元21根据脚本标签,向本地服务发送vpn请求,从而第一建立单元22控制本地服务器调用vpn客户端与vpn服务器建立vpn隧道,后续,通讯模块30可使用此vpn隧道与vpn服务器进行加密通讯。本实施例实现了通过虚拟专用网络访问装置与本地服务器交互,创建vpn隧道进行通讯,使得用户可以直接通过浏览器登录vpn服务器获取服务,提升了用户体验。

进一步的,参照图7,本发明虚拟专用网络访问装置第三实施例提供一种虚拟专用网络访问装置,基于上述图5所示的实施例,所述vpn页面内容携带有建链指令,所述隧道建立模块20包括:

建链单元23,用于根据所述建链指令,与所述本地服务器建立链接。

在本实施例中,vpn服务器根据请求模块10发送的访问请求,所返回的vpn页面内容携带有建链指令,用于使建链单元23基于此建链指令,向本地服务器发送建链请求。

具体的,作为一种实施方式,vpn页面携带的建链指令为:命令建链单元23与本地服务器建立websocket链接。

请求模块10在收到vpn服务器返回的vpn页面时,建链单元23获取vpn页面携带的建链指令。然后,建链单元23根据建链指令与本地服务器建立链路。建链单元23向本地服务器发送http请求,http请求中包含了附加头信息,表明此http请求为申请协议升级的http请求。本地服务器收到浏览器发送的http请求后,解析http请求中的附加头信息,根据附加 头信息产生应答信息,并将应答信息返回给建链单元23。

由此,建链单元23和本地服务器建立websocket链接,虚拟专用网络访问装置和本地服务器可以通过此链接通道自由传递信息,并且此链接会持续存在,直至虚拟专用网络访问装置或者本地服务器中的一方主动的关闭链接。

第二建立单元24,用于通过所述链接向所述本地服务器发送vpn请求,控制所述本地服务器根据所述vpn请求调用所述vpn客户端,以使所述vpn客户端与所述vpn服务器建立vpn隧道。

在建链单元23与本地服务器建立链接后,第二建立单元24向本地服务器发送vpn请求,控制本地服务器根据vpn请求调用vpn客户端与vpn服务器建立vpn隧道。

具体的,第二建立单元24基于已经与本地服务器建立好的链路向本地服务器发送vpn请求,vpn请求携带有vpn服务器的地址。

本地服务器收到第二建立单元24发送的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客户端将生成的对称秘钥返回给第二建立单元24,或者,vpn 客户端将生成的对称秘钥返回给本地服务器,由本地服务器将对称秘钥返回给第二建立单元24。

由此,第二建立单元24得到了与vpn服务器通讯的对称秘钥,完成了vpn隧道的建立。

在本实施例中,vpn页面携带有建链指令,建链单元23根据建链指令与本地服务器建立链接;第二建立单元24通过该链接向本地服务器发送vpn请求,控制本地服务器根据vpn请求调用vpn客户端,以使vpn客户端与vpn服务器建立vpn隧道。本实施例中服务器返回的vpn页面携带有建链指令,建链单元23根据建链指令与本地服务建链,然后第二建立单元24基于已建立的链路向本地服务器发送vpn请求,从而控制本地服务器调用vpn客户端与vpn服务器建立vpn隧道,后续,通讯模块30可使用此vpn隧道与vpn服务器进行加密通讯。本实施例通过虚拟专用网络访问装置与本地服务器交互,创建vpn隧道进行通讯,实现了用户可以直接通过浏览器登录vpn服务器获取服务,提升了用户体验。

进一步的,参照图6,本发明虚拟专用网络访问装置第四实施例提供一种虚拟专用网络访问装置,基于上述图6所示的本发明虚拟专用网络访问装置第二实施例,所述vpn服务器与所述本地服务器使用超文本传输安全协议https协议,所述脚本标签指向预先配置的受信域名,所述受信域名的解析地址指向所述本地服务器。

在本实施例中,vpn服务器与所述本地服务器使用https协议进行通讯。其中,https是以安全为目标的http通道,进行加密通讯,安全性更好。

vpn服务器根据请求模块10发送的访问请求,所返回的vpn页面内容携带有脚本标签,用于使隧道建立模块20基于此脚本标签,向本地服务器发送建立vpn隧道的请求。

vpn页面携带的脚本标签中,携带预先配置的受信域名,该受信域名的dns解析地址指向本地服务器的地址。作为一种实施方式,vpn页面携带的脚本标签可以是包含:<scriptsrc="https://受信域名/command/callback"></script>的html(hypertextmarkuplanguage,超文本标记语言)标签。

具体的,作为一种实施方式,请求模块10获取vpn服务器返回的vpn页面内容后,获取vpn页面携带的脚本标签,隧道建立模块20得到指向本地服务器的回复请求指令,也即vpn请求,控制本地服务器回复vpn服务器,也即控制本地服务器与vpn服务器建立vpn隧道。

然后,隧道建立模块20根据脚本标签携带的受信域名,向对应的端口发送vpn请求。由于该受信域名的dns(domainnamesystem,域名系统)解析地址指向本地服务器,因此,本地服务器收到隧道建立模块20发送的vpn请求。

在本实施例中,vpn服务器与本地服务器使用https协议,vpn服务器发送的页面内容中携带的脚本标签指向预先配置的受信域名,该受信域名的解析地址指向本地服务器。本实施例通过预先配置受信域名,使该受信域名的解析地址指向本地服务器,解决了本地服务器的受信问题,实现了本地服务器与vpn服务器基于https协议进行通讯,本实施例通过使用https协议进行通信,增强了数据传输的安全性。

进一步的,参照图8,本发明虚拟专用网络访问装置第五实施例提供一种虚拟专用网络访问装置,基于上述图6所示的本发明虚拟专用网络访问装置第二实施例,所述vpn服务器与所述本地服务器使用https协议,所述隧道建立模块20还包括:

导入单元25,用于导入所述本地服务器预先配置的服务器证书。

在本实施例中,vpn服务器与所述本地服务器使用https协议进行通讯。

本地服务器预先生成服务器证书,也即本地服务器的受信证书,颁发给本地服务器的地址。本实施例中,以本地服务器的地址为127.0.0.1进行举例说明。

然后,导入单元25将得到的服务器证书导入到浏览器中,实现隧道建立模块20对该本地服务器证书的信任。

由此,vpn服务器返回的vpn页面携带的脚本标签内容可以是<scriptsrc="https://127.0.0.1/">。

隧道建立模块20收到vpn服务器返回的页面内容后,根据脚本标签,向受信任的本地服务器地址发送vpn请求。

在本实施例中,vpn服务器与本地服务器使用https协议,导入单元25将本地服务器预先配置的服务器证书导入浏览器后,浏览器根据脚本标签,向本地服务器发送vpn请求。本实施例中,预先配置本地服务器的服务器证书并导入浏览器,解决了本地服务器的受信问题,实现了本地服务器与vpn服务器基于https协议进行通讯,本实施例通过使用https协议进行通信,增强了数据传输的安全性。

参照图9,本发明虚拟专用网络访问系统第一实施例提供一种虚拟专用网络访问系统,所述虚拟专用网络访问系统包括浏览器a、本地服务器b、虚拟专用网络vpn客户端c和vpn服务器d,其中:

所述浏览器a,包括请求模块10、隧道建立模块20和通讯模块30;

所述本地服务器b,用于获取所述浏览器a发送的vpn请求,根据所述vpn请求调用所述vpn客户端c,以使所述vpn客户端c与所述vpn服务器d建立vpn隧道;

所述vpn客户端c,用于根据所述本地服务器b的调用与所述vpn服务器d建立vpn隧道;

所述vpn服务器d,用于向所述浏览器返回vpn页面内容,与所述vpn客户端c建立vpn隧道,与所述浏览器a通讯。

本实施例中,虚拟专用网络系统包括浏览器a、本地服务器b、vpn(virtualprivatenetwork,虚拟专用网络)客户端c和vpn服务器d。

其中,浏览器a、本地服务器b和vpn客户端c位于用户pc,vpn服务器d作为远程服务器提供vpn服务。

具体的,用户打开浏览器a或其他应用软件调用浏览器a,输入vpn服务器d的地址等信息,访问vpn服务器d。浏览器a根据输入的信息,得到访问请求,并将访问请求发送给vpn服务器d。

vpn服务器d收到访问请求后,根据访问请求返回vpn页面内容,vpn页面内容携带有建立vpn隧道的请求。

浏览器a收到vpn服务器d返回的vpn页面内容,向本地服务器b发送vpn请求。

本地服务器b收到vpn请求后,根据vpn请求调用vpn客户端c。

vpn客户端c被本地服务器b调用,与vpn服务器d协商、建立vpn隧道,生成vpn隧道传输数据的对称秘钥。本地服务器b向浏览器a返回vpn隧道的建立结果。

然后,vpn客户端c将生成的对称秘钥直接返回给浏览器a,或者通过本地服务器b返回给浏览器a。

浏览器a收到返回的对称秘钥,若当前vpn隧道建立成功,则浏览器a使用对称秘钥将服务请求加密,通过vpn隧道向vpn服务器d发送加密后的服务请求。

vpn服务器d收到浏览器a的加密服务请求后,使用对称秘钥进行解密,得到服务请求。然后,vpn服务器d获取对应的vpn数据,使用对称秘钥将vpn数据进行加密,通过vpn隧道向浏览器a发送加密后的vpn数据。

浏览器a获取vpn服务器d返回的加密后的vpn数据,使用对称秘钥进行解密,得到vpn数据,实现vpn服务的获取。

在本实施例中,虚拟专用网络访问系统包括浏览器a、本地服务器b、vpn客户端c和vpn服务器d。通过浏览器a控制本地服务器b调用vpn客户端c,以使vpn客户端c与vpn服务器d建立vpn隧道,实现了vpn隧道的建立,浏览器a可基于已建立的vpn隧道与本地服务器d进行数据的加密传输,获取vpn服务。本实施使用户可以直接通过浏览器登陆vpn服务器,建立vpn隧道,获取vpn服务,提升了用户体验。

以上仅为本发明的可选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1