CN113162973B - 一种ssl vpn的ip接入方法及装置 - Google Patents
一种ssl vpn的ip接入方法及装置 Download PDFInfo
- Publication number
- CN113162973B CN113162973B CN202110236235.0A CN202110236235A CN113162973B CN 113162973 B CN113162973 B CN 113162973B CN 202110236235 A CN202110236235 A CN 202110236235A CN 113162973 B CN113162973 B CN 113162973B
- Authority
- CN
- China
- Prior art keywords
- ssl vpn
- websocket connection
- browser
- authentication success
- websocket
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例公开了一种SSL VPN的IP接入方法及装置。在本申请中通过在浏览器和SSL VPN客户端之间建立WebSocket连接,使浏览器可以通过建立的WebSocket连接和SSL VPN客户端进行通信,以实现以IP接入方式访问SSL VPN服务端资源。并且由于目前流行的浏览器都支持WebSocket协议,不同浏览器都可以通过和SSL VPN客户端之间建立WebSocket连接,来控制SSL VPN客户端实现SSL VPN的IP接入。所以本申请实际上提供了一种可以在不同浏览器间通用的SSL VPN的IP接入方法,以降低研发工作量。
Description
技术领域
本申请涉及通信领域,特别涉及一种SSL VPN的IP接入方法及装置。
背景技术
为了给用户远程访问内部网络提供安全保证,可以采用以HTTPS(Hyper TextTransfer Protocol over SecureSocket Layer,超文本传输安全协议)为基础的SSL VPN技术进行远程访问。SSL VPN是利用SSL(Secure Sockets Layer安全套接字)协议提供的基于证书的身份认证、数据加密和消息完整性验证机制等的VPN(Virtual Private Network,虚拟专用网络)技术。在通过SSL VPN远程访问内部网络资源时,有三种常用的接入方式,分别为Web接入方式,TCP接入方式以及IP接入方式。
在使用SSL VPN的IP接入方式访问内部网络资源的过程中,当用户启动浏览器登录时,需要在浏览器上安装插件,以控制SSL VPN客户端软件的启动、关闭以及浏览器中的SSL VPN页面与客户端的消息通讯。
但是不同的浏览器与插件之间存在兼容性问题,需要针对各个浏览器定制浏览器插件,工作量较大。因此,实现一种可以在不同浏览器间通用的SSL VPN的IP接入方法,以降低研发工作量是有必要的。
发明内容
本申请公开了一种SSL VPN的IP接入方法及装置,以实现在不同浏览器间通用,以降低研发工作量。
根据本申请实施例的第一方面,提供一种SSL VPN的IP接入方法,该方法应用于终端设备上的浏览器,包括:
在以IP接入方式访问SSL VPN服务端资源的过程中,当接收到SSL VPN网关返回的认证成功信息时,所述认证成功信息至少包括SSL VPN网关IP地址和SSL VPN认证成功标识,则向终端设备上的指定端口发送WebSocket连接建立请求消息,所述指定端口为SSLVPN客户端在本设备上运行WebSocket服务的端口,所述WebSocket连接用于和SSL VPN客户端进行通信;
若在指定时间内接收到SSL VPN客户端通过所述指定端口返回的WebSocket连接建立响应消息,则确定所述WebSocket连接建立成功,通过该WebSocket连接将所述认证成功信息发送给SSL VPN客户端;
当检测到外部输入的启动SSL VPN的指令时,通过所述WebSocket连接向SSL VPN客户端发送启动命令消息,以控制SSL VPN客户端依据所述认证成功信息与SSL VPN网关建立连接并访问SSL VPN服务端资源。
根据本申请实施例的第二方面,提供一种SSL VPN的IP接入方法,该方法应用于终端设备上的SSL VPN客户端,包括:
在接收到本设备上浏览器向指定端口发送的WebSocket连接建立请求消息时,所述指定端口为SSL VPN客户端在本设备上运行WebSocket服务的端口,通过所述指定端口向所述浏览器返回WebSocket连接建立响应消息,以建立WebSocket连接,所述WebSocket连接用于和浏览器进行通信;
接收并保存所述浏览器通过WebSocket连接发送的认证成功信息,所述认证成功信息至少包括SSL VPN网关IP地址和SSL VPN认证成功标识;
当接收到所述浏览器通过WebSocket连接发送的启动命令消息时,依据所述认证成功信息与SSL VPN网关建立连接,以访问SSL VPN服务端资源。
根据本申请实施例的第三方面,提供一种SSL VPN的IP接入装置,该装置应用于终端设备上的浏览器,包括:
WebSocket连接建立单元,用于在以IP接入方式访问SSL VPN服务端资源的过程中,当接收到SSL VPN网关返回的认证成功信息时,所述认证成功信息至少包括SSL VPN网关IP地址和SSL VPN认证成功标识,则向终端设备上的指定端口发送WebSocket连接建立请求消息,所述指定端口为SSL VPN客户端在本设备上运行WebSocket服务的端口,所述WebSocket连接用于和SSL VPN客户端进行通信;
认证成功信息发送单元,用于若在指定时间内接收到SSL VPN客户端通过所述指定端口返回的WebSocket连接建立响应消息,则确定所述WebSocket连接建立成功,通过该WebSocket连接将所述认证成功信息发送给SSL VPN客户端;
SSL VPN客户端控制单元,用于当检测到外部输入的启动SSL VPN的指令时,通过所述WebSocket连接向SSL VPN客户端发送启动命令消息,以控制SSL VPN客户端依据所述认证成功信息与SSL VPN网关建立连接并访问SSL VPN服务端资源。
根据本申请实施例的第四方面,提供一种SSL VPN的IP接入装置,该装置应用于终端设备上的SSL VPN客户端,包括:
WebSocket连接建立单元,用于在接收到本设备上浏览器向指定端口发送的WebSocket连接建立请求消息时,所述指定端口为SSL VPN客户端在本设备上运行WebSocket服务的端口,通过所述指定端口向所述浏览器返回WebSocket连接建立响应消息,以建立WebSocket连接,所述WebSocket连接用于和浏览器进行通信;
认证成功信息保存单元,用于接收并保存所述浏览器通过WebSocket连接发送的认证成功信息,所述认证成功信息至少包括SSL VPN网关IP地址和SSL VPN认证成功标识;
命令消息接收单元,用于当接收到所述浏览器通过WebSocket连接发送的启动命令消息时,依据所述认证成功信息与SSL VPN网关建立连接,以访问SSL VPN服务端资源。
本申请的实施例提供的技术方案可以包括以下有益效果:
由以上技术方案可知,本申请提供的方案将浏览器作为WebSocket客户端,SSLVPN客户端作为WebSocket服务端,通过在浏览器和SSL VPN客户端之间建立WebSocket连接,使浏览器可以通过建立的WebSocket连接和SSL VPN客户端进行通信,以实现以IP接入方式访问SSL VPN服务端资源。并且由于目前流行的浏览器都支持WebSocket协议,不同浏览器都可以通过和SSL VPN客户端之间建立WebSocket连接,来控制SSL VPN客户端实现SSLVPN的IP接入。所以本申请实际上提供了一种可以在不同浏览器间通用的SSL VPN的IP接入方法,以降低研发工作量。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本说明书的实施例,并与说明书一起用于解释本说明书的原理。
图1是本申请实施例提供的应用于浏览器的实现SSL VPN的IP接入的方法流程图;
图2是本申请实施例提供的建立WebSocket连接的方法流程图;
图3是本申请实施例提供的应用于SSL VPN客户端的实现SSL VPN的IP接入的方法流程图;
图4是本申请实施例提供的应用于浏览器的实现SSL VPN的IP接入的装置示意图;
图5是本申请实施例提供的应用于SSL VPN客户端的实现SSL VPN的IP接入的装置示意图;
图6是本申请实施例提供的一种电子设备的硬件结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
首先,在相关技术中,使用SSL VPN的IP接入方式访问内部网络资源的过程中,用户首先需要启动终端设备上的浏览器以进入SSL VPN的登陆页面。在登陆成功时,将触发终端设备从SSL VPN网关处下载并安装使用IP接入方式所需要的浏览器插件,并且该浏览器插件必须与上述的浏览器匹配。该插件会下载和安装SSL VPN客户端并负责SSL VPN客户端的启动、关闭以及浏览器中的SSL VPN页面与SSL VPN客户端的消息通讯。
需要说明的是,以上方案中,针对各类型浏览器,需要定制开发与各类浏览器匹配的浏览器插件,以防止出现浏览器与浏览器插件不兼容导致SSL VPN的IP接入方式在实现时出现异常。但是定制开发与各类浏览器匹配的浏览器插件,所需要的软件复杂度高,工作量较大,很难进行维护,而且也不适用于所有终端设备如智能手机。
另外,还存在不支持浏览器插件的浏览器,这类浏览器无法使用SSL VPN的IP接入方式。因此本申请实施例提供了一种可以在不同浏览器间通用的SSL VPN的IP接入方法,以降低研发工作量,并适用于不支持浏览器插件的浏览器。
为了使本申请实施例的上述目的、特征和优点能够更加明显易懂,在介绍本申请的SSL VPN的IP接入方法和装置前,先对以下3个专业术语进行简述:
SSL VPN:基于SSL(Secure Sockets Layer安全套接字协议)协议建立远程安全访问通道的VPN技术,其中SSL协议是在传输通信协议(TCP/IP)上实现的一种安全协议。
IP接入:使用安装在用户终端设备上的SSL VPN客户端软件来建立终端设备与SSLVPN服务器在网络层之间的安全通道,进而实现终端设备远程访问SSL VPN服务器。
WebSocket(简称WS):其是一种网络传输协议,可在单个TCP连接上进行全双工通信,位于OSI模型的应用层。WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebSocket的API中,浏览器和服务器只需要完成一次握手,两者之间就可以建立持久性的连接,并进行双向数据传输。WSS(Web SocketSecure)是WebSocket的加密版本。在WebSocket API是纯事件驱动的,应用程序代码需要监听WebSocket对象上的事件,以便处理输入数据和连接状态的改变。其包含以下4个不同的事件:
open事件:一旦服务器响应了WebSocket连接请求,open事件触发并建立一个连接。open事件对应的回调函数称作onopen
message事件:message事件在接收到消息时触发,对应于该事件的回调函数是onmessage。
error事件:error事件在响应意外故障的时候触发。与该事件对应的回调函数为onerror。
close事件:close事件在WebSocket连接关闭时触发。对应于close事件的回调函数是onclose。
另外WebSocket对象有两个方法:send方法和close方法。send方法可以从客户端向服务器发送消息。在发送一条或者多条消息之后,可以保持连接打开,或者调用close方法终止连接。调用close方法,可以关闭连接或者终止建立连接的尝试,如果连接已经关闭,该方法就什么都不做。并且在调用close方法之后,不能在已经关闭的WebSocket连接上发送任何数据。
下面结合附图对本申请实施例中技术方案作进一步详细的说明。
参见图1,图1为本申请实施例提供的实现SSL VPN的IP接入的方法流程图。作为一个实施例,图1所示的流程可以应用于终端设备上的浏览器。
如图1所示,该流程可以包括以下步骤:
步骤101,在以IP接入方式访问SSL VPN服务端资源的过程中,当接收到SSL VPN网关返回的认证成功信息时,则向终端设备上的指定端口发送WebSocket连接建立请求消息。
具体实现时,在以IP接入方式访问SSL VPN服务端资源的过程中,用户首先会通过浏览器打开SSL VPN登录页面,根据SSL VPN登录页面上的提示信息输入并提交用于账户认证的认证信息。在用户提交认证信息之后,将触发浏览器将该认证信息发送给SSL VPN网关,以使SSL VPN网关可以将认证信息发送给SSL VPN认证服务器,使SSL VPN认证服务器对接收到的认证信息进行认证。这里SSL VPN网关和SSL VPN认证服务器可以是一台设备,也可以是两台不同的设备,具体认证过程可参考相关技术,本申请在此不做详述。
在本申请实施例中,若上述账户认证成功,SSL VPN认证服务器将生成认证成功信息,并通过SSL VPN网关向浏览器返回认证成功信息,该认证成功信息至少包括SSL VPN网关IP地址和SSL VPN认证成功标识。其中SSL VPN认证成功标识用于指示当前需要以IP接入方式访问SSL VPN服务端资源的用户为有资格访问SSL VPN服务端资源的用户。
如本步骤101所示,本设备上的浏览器在接收到SSL VPN网关返回的认证成功信息时,将向终端设备上的指定端口发送WebSocket连接建立请求消息。其中指定端口为SSLVPN客户端在本设备上运行WebSocket服务的端口。这里之所以发送WebSocket连接建立请求消息,是为了建立用于和SSL VPN客户端进行通信的WebSocket连接。
作为一个实施例,浏览器在接收到认证成功信息之后,需要初始化WebSocket的四个事件,即上述介绍的open事件、message事件、error事件和close事件,这四个事件用于和SSL VPN客户端通信,以处理不同事件。
步骤102,若在指定时间内接收到SSL VPN客户端通过所述指定端口返回的WebSocket连接建立响应消息,则确定所述WebSocket连接建立成功,通过该WebSocket连接将所述认证成功信息发送给SSL VPN客户端。
在一些实施例中,将认证成功信息发送给SSL VPN客户端后,SSL VPN客户端将会对接收到认证成功信息进行记录,并回复一个接收成功响应。
可选的,本申请实施例可以将通过如图2所示的方法建立WebSocket连接,具体实现过程将在下文描述图2所示方法时详述,这里暂不赘述。
步骤103,当检测到外部输入的启动SSL VPN的指令时,通过所述WebSocket连接向SSL VPN客户端发送启动命令消息,以控制SSL VPN客户端依据所述认证成功信息与SSLVPN网关建立连接并访问SSL VPN服务端资源。
作为一个实施例,当用户在SSL VPN登录页面成功登录,即浏览器接收到SSL VPN网关返回的认证成功信息时,浏览器所显示的SSL VPN登录页面将跳转到用于控制VPN和显示VPN信息的SSL VPN控制页面。当用户需要访问SSL VPN服务端资源时,可以根据SSL VPN控制页面上的提示信息触发启动SSL VPN的指令,比如点击指示启动SSL VPN的按钮触发启动SSL VPN的指令。该指令用于指示浏览器通过所述WebSocket连接向SSL VPN客户端发送启动命令消息。
进一步的,浏览器可以通过调用WebSocket send方法向SSL VPN客户端发送启动命令消息,以控制SSL VPN客户端依据所述认证成功信息与SSL VPN网关建立SSL连接并访问SSL VPN服务端资源。而SSL VPN客户端接收到启动命令消息后,则会返回携带启动结果的消息,浏览器可以通过message事件,对收到的返回的消息进行解析,并将返回内容显示到前端的SSL VPN控制页面上。
同时,为了使用户可以更好的了解VPN的状态,可以通过WebSocket连接向SSL VPN客户端定时发送VPN状态获取请求消息,以获取并显示所述VPN状态。VPN状态用于指示所述SSL VPN客户端与SSL VPN网关之间的连接的状态,可以通过获取SSL VPN客户端与SSL VPN网关之间的连接上的数据包统计信息、流量信息等反应VPN状态。
在一些实施例中,浏览器所获取的VPN状态可以显示在SSL VPN控制页面上,以便用户根据VPN状态控制VPN。比如当用户需要访问SSL VPN服务端资源,而页面上显示的VPN状态为“VPN当前已关闭”时,用户可以根据VPN状态得知当前无法访问SSL VPN服务端资源,需要启动SSL VPN。
作为另一个实施例,当用户不再需要访问SSL VPN服务端资源时,可以根据SSLVPN控制页面上的提示信息触发关闭SSL VPN的指令,比如点击指示关闭SSL VPN的按钮以触发关闭SSL VPN的指令。
当浏览器检测到外部输入的关闭SSL VPN的指令时,将通过WebSocket连接向SSLVPN客户端发送关闭命令消息,以控制所述SSL VPN客户端与所述SSL VPN网关断开连接。而SSL VPN客户端接收到关闭命令消息后,会断开与SSL VPN网关的连接,并销毁建立连接时所占用的CPU、内存等资源,并返回携带关闭结果的消息。浏览器依然可以通过message事件,对收到的返回的消息进行解析,并将返回内容显示到前端的SSL VPN控制页面上。
至此,完成图1所示流程。
通过图1所示的流程可以看出,本实施例中通过将浏览器作为WebSocket客户端,SSL VPN客户端作为WebSocket服务端,在浏览器和SSL VPN客户端之间建立WebSocket连接,使浏览器可以通过建立的WebSocket连接和SSL VPN客户端进行通信,以控制SSL VPN客户端与SSL VPN网关建立连接,即实现SSL VPN的IP接入。并且由于目前流行的浏览器都支持WebSocket协议,不同浏览器都可以通过和SSL VPN客户端之间建立WebSocket连接,来控制SSL VPN客户端实现SSL VPN的IP接入。所以本申请实际上提供了一种可以在不同浏览器间通用的SSL VPN的IP接入方法,以降低研发工作量。
需要说明的是上述所提到的WebSocket连接可以是未加密的WebSocket(简述为WS)连接,也可以是加密版本的WebSocket连接(即WSS,Web Socket Secure)。
以上举例只是为了便于理解,本申请实施例并不具体限定。
下面将对如何建立WebSocket连接的一个实施例进行描述。
请参见图2,为本申请实施例提供的一种建立WebSocket连接的流程示意图。
步骤201,向终端设备上的指定端口发送WebSocket连接建立请求消息。
步骤202,确定是否在指定时间内接收到SSL VPN客户端通过所述指定端口返回的WebSocket连接建立响应消息,如果是,则确定WebSocket连接建立成功,结束流程,如果否,则继续执行步骤203。
步骤203,检测已记录的向所述指定端口发送WebSocket连接建立请求消息的次数是否小于指定值,若小于指定值,则返回执行步骤201,否则,确定WebSocket连接建立失败,进一步执行步骤204。
步骤204,触发SSL VPN客户端安装事件,所述SSL VPN客户端安装事件用于在终端设备上安装并启动运行SSL VPN客户端。
需要说明的是,步骤203中WebSocket连接建立失败的原因可能是终端设备上没有安装SSL VPN客户端或者SSL VPN客户端进程没有启动,因此可以触发SSL VPN客户端安装事件以建立WebSocket连接。
示例性的,上述指定值可以由用户根据需求预先设置,也可以在实现本申请实施例的代码中预先设置,比如可以设置指定值为3。
示例性的,触发SSL VPN客户端安装事件是指跳转到SSL VPN客户端下载页面,该页面可以引导用户根据页面提示信息下载和安装SSL VPN客户端。并且在SSL VPN客户端安装完成后,将以服务的形式自动启动并运行SSL VPN客户端,即启动SSL VPN客户端进程。
至此,完成图2所示的建立WebSocket连接的方法流程。该方法只是实现WebSocket连接的其中一个实施例,在具体实现时,还可以通过多种方法建立WebSocket连接,本申请不做限定。
由于本申请实施例需要在浏览器和SSL VPN客户端之间建立WebSocket连接,因此,本申请实施例还提供了一种应用于SSL VPN客户端的SSL VPN的IP接入方法。
参见图3,图3为本申请实施例提供的另一种实现SSL VPN的IP接入的方法流程图。作为一个实施例,图3所示的流程可以应用于终端设备上的SSL VPN客户端。
如图3所示,该流程可以包括以下步骤:
步骤301,在接收到本设备上浏览器向指定端口发送的WebSocket连接建立请求消息时,通过所述指定端口向所述浏览器返回WebSocket连接建立响应消息,以建立WebSocket连接。
本步骤301中指定端口为SSL VPN客户端在本设备上运行WebSocket服务的端口。比如,该指定端口可以为默认情况下,WebSocket协议所使用的80端口。
在建立WebSocket连接之后,SSL VPN客户端将使用该WebSocket连接与浏览器进行通信,比如接收浏览器发送的控制指令、向浏览器定时反馈VPN状态等。
步骤302,接收并保存所述浏览器通过WebSocket连接发送的认证成功信息,所述认证成功信息至少包括SSL VPN网关IP地址和SSL VPN认证成功标识。
作为一个实施例,在接收到浏览器发送的认证成功信息后,将进一步记录该认证成功信息以便后续连接SSL VPN网关,并向浏览器返回接收成功响应,以告知浏览器该认证成功信息已成功接收。
步骤303,当接收到所述浏览器通过WebSocket连接发送的启动命令消息时,依据所述认证成功信息与SSL VPN网关建立连接,以访问SSL VPN服务端资源。
在本申请实施例中,当接收到浏览器通过WebSocket连接发送的关闭命令消息时,则断开与所述SSL VPN网关之间的连接。
在一些实施例中,浏览器还会通过WebSocket连接向本SSL VPN客户端定时发送的VPN状态获取请求消息。当接收到该VPN状态获取请求消息时,SSL VPN客户端将按照指定格式将读取到的VPN状态信息(比如:数据包统计信息、流量信息)返回给浏览器,以使所述浏览器获取并显示所述VPN状态。
可选的,本SSL VPN客户端也可以设置在与浏览器建立WebSocket连接之后,定时向浏览器反馈VPN状态信息。
至此,完成图3所示流程。
通过图3所示的流程可以看出,本实施例中通过将SSL VPN客户端作为WebSocket服务端,以在浏览器和SSL VPN客户端之间建立WebSocket连接。SSL VPN客户端可以接收浏览器通过WebSocket连接发送的各种指令,以满足用户的各种需求如以IP接入的方式启动VPN访问SSL VPN服务端资源等。并且该SSL VPN客户端和支持WebSocket协议的不同类型浏览器都可以建立WebSocket连接,进而本实施例可以在不同浏览器间通用。
以上对本申请实施例提供的方法进行了描述。下面对本申请实施例提供的装置进行描述:
参见图4,图4为本申请实施例提供的一种用于实现SSL VPN的IP接入的装置示意图,该装置实施例应用于终端设备上的浏览器。该装置包括:
WebSocket连接建立单元401,用于在以IP接入方式访问SSL VPN服务端资源的过程中,当接收到SSL VPN网关返回的认证成功信息时,所述认证成功信息至少包括SSL VPN网关IP地址和SSL VPN认证成功标识,则向终端设备上的指定端口发送WebSocket连接建立请求消息,所述指定端口为SSL VPN客户端在本设备上运行WebSocket服务的端口,所述WebSocket连接用于和SSL VPN客户端进行通信。
认证成功信息发送单元402,用于若在指定时间内接收到SSL VPN客户端通过所述指定端口返回的WebSocket连接建立响应消息,则确定所述WebSocket连接建立成功,通过该WebSocket连接将所述认证成功信息发送给SSL VPN客户端。
SSL VPN客户端控制单元403,用于当检测到外部输入的启动SSL VPN的指令时,通过所述WebSocket连接向SSL VPN客户端发送启动命令消息,以控制SSL VPN客户端依据所述认证成功信息与SSL VPN网关建立连接并访问SSL VPN服务端资源。
至此,完成图4所示装置实施例的结构图。
参见图5,图5为本申请实施例提供的另一种用于实现SSL VPN的IP接入的装置示意图,该装置实施例应用于终端设备上的SSL VPN客户端。该装置包括:
WebSocket连接建立单元501,用于在接收到本设备上浏览器向指定端口发送的WebSocket连接建立请求消息时,所述指定端口为SSL VPN客户端在本设备上运行WebSocket服务的端口,通过所述指定端口向所述浏览器返回WebSocket连接建立响应消息,以建立WebSocket连接,所述WebSocket连接用于和浏览器进行通信。
认证成功信息保存单元502,用于接收并保存所述浏览器通过WebSocket连接发送的认证成功信息,所述认证成功信息至少包括SSL VPN网关IP地址和SSL VPN认证成功标识。
命令消息接收单元503,用于当接收到所述浏览器通过WebSocket连接发送的启动命令消息时,依据所述认证成功信息与SSL VPN网关建立连接,以访问SSL VPN服务端资源。
至此,完成图5所示装置实施例的结构图。
以上是对本申请实施例提供的实现SSL VPN的IP接入的装置实施例的描述,
对应地,本申请实施例还提供了一种电子设备的硬件结构图,具体如图6所示,该电子设备可以为上述实施SSL VPN的IP接入的设备。如图6所示,该硬件结构包括:处理器和存储器。
其中,所述存储器,用于存储机器可执行指令;
所述处理器,用于读取并执行所述存储器存储的机器可执行指令,以实现如上所示的SSL VPN的IP接入方法实施例。
作为一个实施例,存储器可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,存储器可以是:易失存储器、非易失性存储器或者类似的存储介质。具体地,存储器可以是RAM(Radom Access Memory,随机存取存储器)、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、DVD等),或者类似的存储介质,或者它们的组合。
至此,完成图6所示电子设备的描述。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (10)
1.一种SSL VPN的IP接入方法,其特征在于,该方法应用于终端设备上的浏览器,包括:
在以IP接入方式访问SSL VPN服务端资源的过程中,当接收到SSL VPN网关返回的认证成功信息时,所述认证成功信息至少包括SSL VPN网关IP地址和SSL VPN认证成功标识,则向终端设备上的指定端口发送WebSocket连接建立请求消息,所述指定端口为SSL VPN客户端在本设备上运行WebSocket服务的端口,所述WebSocket连接用于和SSL VPN客户端进行通信;
若在指定时间内接收到SSL VPN客户端通过所述指定端口返回的WebSocket连接建立响应消息,则确定所述WebSocket连接建立成功,通过该WebSocket连接将所述认证成功信息发送给SSL VPN客户端;
当检测到外部输入的启动SSL VPN的指令时,通过所述WebSocket连接向SSL VPN客户端发送启动命令消息,以控制SSL VPN客户端依据所述认证成功信息与SSL VPN网关建立连接并访问SSL VPN服务端资源。
2.根据权利要求1所述的方法,其特征在于,若在指定时间内未接收到SSL VPN客户端通过所述指定端口返回的WebSocket连接建立响应消息,该方法进一步包括:
若已记录的向所述指定端口发送WebSocket连接建立请求消息的次数小于指定值,则返回向终端设备上的指定端口发送WebSocket连接建立请求消息的步骤;
否则,则触发SSL VPN客户端安装事件,所述SSL VPN客户端安装事件用于在终端设备上安装并启动运行SSL VPN客户端。
3.根据权利要求1所述的方法,其特征在于,所述向SSL VPN客户端发送启动命令消息,以控制SSL VPN客户端依据所述认证成功信息与SSL VPN网关建立连接,包括:
调用WebSocket send方法向SSL VPN客户端发送启动命令消息,以控制SSL VPN客户端依据所述认证成功信息与SSL VPN网关建立SSL连接并访问SSL VPN服务端资源。
4.根据权利要求1所述的方法,其特征在于,该方法进一步包括:
通过所述WebSocket连接向SSL VPN客户端定时发送VPN状态获取请求消息,以获取并显示所述VPN状态,所述VPN状态用于指示所述SSL VPN客户端与SSL VPN网关之间的连接的状态。
5.根据权利要求1所述的方法,其特征在于,该方法进一步包括:
当检测到外部输入的关闭SSL VPN的指令时,通过所述WebSocket连接向SSL VPN客户端发送关闭命令消息,以控制所述SSL VPN客户端与所述SSL VPN网关断开连接。
6.一种SSL VPN的IP接入方法,其特征在于,该方法应用于终端设备上的SSL VPN客户端,包括:
在接收到本设备上浏览器向指定端口发送的WebSocket连接建立请求消息时,所述指定端口为SSL VPN客户端在本设备上运行WebSocket服务的端口,通过所述指定端口向所述浏览器返回WebSocket连接建立响应消息,以建立WebSocket连接,所述WebSocket连接用于和浏览器进行通信;
接收并保存所述浏览器通过WebSocket连接发送的认证成功信息,所述认证成功信息至少包括SSL VPN网关IP地址和SSL VPN认证成功标识;
当接收到所述浏览器通过WebSocket连接发送的启动命令消息时,依据所述认证成功信息与SSL VPN网关建立连接,以访问SSL VPN服务端资源。
7.根据权利要求6所述的方法,其特征在于,该方法进一步包括:
通过所述WebSocket连接接收浏览器发送的VPN状态获取请求消息,按照指定格式将读取到的VPN状态信息返回给浏览器,以使所述浏览器获取并显示所述VPN状态。
8.根据权利要求6所述的方法,其特征在于,该方法进一步包括:
当接收到所述浏览器通过WebSocket连接发送的关闭命令消息时,断开与所述SSL VPN网关之间的连接。
9.一种SSL VPN的IP接入装置,其特征在于,该装置应用于终端设备上的浏览器,包括:
WebSocket连接建立单元,用于在以IP接入方式访问SSL VPN服务端资源的过程中,当接收到SSL VPN网关返回的认证成功信息时,所述认证成功信息至少包括SSL VPN网关IP地址和SSL VPN认证成功标识,则向终端设备上的指定端口发送WebSocket连接建立请求消息,所述指定端口为SSL VPN客户端在本设备上运行WebSocket服务的端口,所述WebSocket连接用于和SSL VPN客户端进行通信;
认证成功信息发送单元,用于若在指定时间内接收到SSL VPN客户端通过所述指定端口返回的WebSocket连接建立响应消息,则确定所述WebSocket连接建立成功,通过该WebSocket连接将所述认证成功信息发送给SSL VPN客户端;
SSL VPN客户端控制单元,用于当检测到外部输入的启动SSL VPN的指令时,通过所述WebSocket连接向SSL VPN客户端发送启动命令消息,以控制SSL VPN客户端依据所述认证成功信息与SSL VPN网关建立连接并访问SSL VPN服务端资源。
10.一种SSL VPN的IP接入装置,其特征在于,该装置应用于终端设备上的SSL VPN客户端,包括:
WebSocket连接建立单元,用于在接收到本设备上浏览器向指定端口发送的WebSocket连接建立请求消息时,所述指定端口为SSL VPN客户端在本设备上运行WebSocket服务的端口,通过所述指定端口向所述浏览器返回WebSocket连接建立响应消息,以建立WebSocket连接,所述WebSocket连接用于和浏览器进行通信;
认证成功信息保存单元,用于接收并保存所述浏览器通过WebSocket连接发送的认证成功信息,所述认证成功信息至少包括SSL VPN网关IP地址和SSL VPN认证成功标识;
命令消息接收单元,用于当接收到所述浏览器通过WebSocket连接发送的启动命令消息时,依据所述认证成功信息与SSL VPN网关建立连接,以访问SSL VPN服务端资源。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110236235.0A CN113162973B (zh) | 2021-03-03 | 2021-03-03 | 一种ssl vpn的ip接入方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110236235.0A CN113162973B (zh) | 2021-03-03 | 2021-03-03 | 一种ssl vpn的ip接入方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113162973A CN113162973A (zh) | 2021-07-23 |
CN113162973B true CN113162973B (zh) | 2022-07-01 |
Family
ID=76884122
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110236235.0A Active CN113162973B (zh) | 2021-03-03 | 2021-03-03 | 一种ssl vpn的ip接入方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113162973B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114157485A (zh) * | 2021-12-03 | 2022-03-08 | 北京天融信网络安全技术有限公司 | 一种资源访问方法、装置和电子设备 |
CN114268657B (zh) * | 2021-12-24 | 2024-05-24 | 北京天威诚信电子商务服务有限公司 | 一种浏览器应用和本地应用间建立ssl_tls通信的方法及系统 |
CN114844878B (zh) * | 2022-03-29 | 2023-04-11 | 宁德星云检测技术有限公司 | 一种基于WebSocket的锂电池测试系统通讯方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106789535A (zh) * | 2016-12-29 | 2017-05-31 | 杭州迪普科技股份有限公司 | Ssl vpn的ip接入方法及装置 |
CN107294935A (zh) * | 2016-04-11 | 2017-10-24 | 深圳市深信服电子科技有限公司 | 虚拟专用网络访问方法、装置和系统 |
CN110058912A (zh) * | 2019-03-22 | 2019-07-26 | 山东超越数控电子股份有限公司 | 一种通过网页浏览器访问Spice远程桌面的方法 |
CN110401641A (zh) * | 2019-07-09 | 2019-11-01 | 杭州迪普科技股份有限公司 | 用户认证方法、装置、电子设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9231918B2 (en) * | 2013-02-19 | 2016-01-05 | Cisco Technology, Inc. | Use of virtual network interfaces and a websocket based transport mechanism to realize secure node-to-site and site-to-site virtual private network solutions |
-
2021
- 2021-03-03 CN CN202110236235.0A patent/CN113162973B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107294935A (zh) * | 2016-04-11 | 2017-10-24 | 深圳市深信服电子科技有限公司 | 虚拟专用网络访问方法、装置和系统 |
CN106789535A (zh) * | 2016-12-29 | 2017-05-31 | 杭州迪普科技股份有限公司 | Ssl vpn的ip接入方法及装置 |
CN110058912A (zh) * | 2019-03-22 | 2019-07-26 | 山东超越数控电子股份有限公司 | 一种通过网页浏览器访问Spice远程桌面的方法 |
CN110401641A (zh) * | 2019-07-09 | 2019-11-01 | 杭州迪普科技股份有限公司 | 用户认证方法、装置、电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113162973A (zh) | 2021-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113162973B (zh) | 一种ssl vpn的ip接入方法及装置 | |
EP3471375B1 (en) | Method and apparatus for managing field device based on cloud server | |
CN104137511B (zh) | 用于安全协议的动态选择的方法、设备和客户端设备 | |
EP1676418B1 (en) | Methods and devices for sharing content on a network | |
JP4575980B2 (ja) | コンピュータシステムにおける通信のための方法、システム、及びコンピュータプログラム | |
EP4161012A1 (en) | Authentication method and apparatus, electronic device, server, program, and storage medium | |
CN111428225A (zh) | 数据交互方法、装置、计算机设备及存储介质 | |
CN106789535B (zh) | Ssl vpn的ip接入方法及装置 | |
WO2012129468A1 (en) | System and method for sharing data from a local network to a remote device | |
CN111628976A (zh) | 一种报文处理方法、装置、设备及介质 | |
CN113438081B (zh) | 一种认证方法、装置及设备 | |
CN117858035B (zh) | 用于远程协助的数据处理方法、装置、计算机设备及介质 | |
CN111726328B (zh) | 用于对第一设备进行远程访问的方法、系统以及相关设备 | |
CN113114643B (zh) | 一种运维审计系统的运维接入方法及系统 | |
CN112969046A (zh) | 一种基于内网代理的视频面签系统和方法 | |
CN112511892A (zh) | 屏幕共享方法、装置、服务器及存储介质 | |
CN111953742B (zh) | 一种页面重定向方法、终端设备、中间设备及服务器 | |
WO2018211180A1 (fr) | Procede pour connecter des equipements au reseau internet | |
EP2595420A1 (en) | Method of sending a message to a secure element | |
CN113691510A (zh) | 一种跨域访问控制方法、系统、存储介质及设备 | |
US9473498B2 (en) | Method for using java servlets as a stack based state machine | |
EP4109828B1 (en) | Method for communicating with a remote dns server | |
CN101867485B (zh) | 一种usb接口验证及安全控制方法 | |
CN117714519A (zh) | 一种远程协助方法、装置、设备及存储介质 | |
CN118843165A (zh) | 通信方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |