CN105376216A - 一种远程访问方法、代理服务器及客户端 - Google Patents

一种远程访问方法、代理服务器及客户端 Download PDF

Info

Publication number
CN105376216A
CN105376216A CN201510657500.7A CN201510657500A CN105376216A CN 105376216 A CN105376216 A CN 105376216A CN 201510657500 A CN201510657500 A CN 201510657500A CN 105376216 A CN105376216 A CN 105376216A
Authority
CN
China
Prior art keywords
proxy server
client
vnc
data
destination client
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.)
Granted
Application number
CN201510657500.7A
Other languages
English (en)
Other versions
CN105376216B (zh
Inventor
陈嵘
张亚军
胡堃
彭永红
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201510657500.7A priority Critical patent/CN105376216B/zh
Publication of CN105376216A publication Critical patent/CN105376216A/zh
Application granted granted Critical
Publication of CN105376216B publication Critical patent/CN105376216B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Information Transfer Between Computers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例公开了一种远程访问方法、代理服务器及客户端,其中的方法包括:当代理服务器接收到目标客户端发送的携带目标用户标识的虚拟网络计算机VNC访问请求时,所述代理服务器获取与所述目标用户标识相匹配的密钥;采用所述密钥对随机数据进行加密处理,生成加密数据并输出至所述目标客户端,以使所述目标客户端对所述加密数据进行解密处理获得解密数据;接收所述目标客户端发送的解密数据;将所述解密数据与所述随机数据进行比对;如比对一致,允许目标客户端与虚拟机建立VNC访问连接。本发明实施例可以避免因信息泄露而造成的非法VNC访问,有利于减小信息泄露风险,加强VNC访问的安全性。

Description

一种远程访问方法、代理服务器及客户端
技术领域
本发明涉及计算机技术领域,具体涉及了一种远程访问方法、代理服务器及客户端。
背景技术
OpenStack是一个开源的云计算管理平台项目,可提供实施简单、大规模扩展、丰富、标准统一的云计算管理平台,其在Nova组件中集成了虚拟网络计算机远程控制(VirtualNetworkComputer,VNC)功能。用户在OpenStack环境下,可以通过Nova组件获得统一资源定位器(UniformResoureLocator,URL)地址,并根据所述URL地址发起VNC访问请求,代理服务器接收所述VNC访问请求并对所述请求中的校验数据token进行验证,如验证通过,则代理服务器可允许VNC客户端进行VNC访问连接,但在此过程中,由于token信息为明文,而Nova会将token信息存储于开放的缓存中,因此其很容易被其它非法用户所获得,而任意一个非法用户获取到token信息就可以通过VNC功能对用户的虚拟机进行操作,不仅会造成虚拟机的信息泄露,同时多用户同时进行VNC连接和访问,也会影响VNC访问的安全性。
发明内容
本发明实施例提供一种远程访问方法、代理服务器及客户端,以期减小信息泄露风险,加强VNC访问的安全性。
本发明实施例第一方面公开了一种远程访问方法,包括:
当代理服务器接收到目标客户端发送的携带目标用户标识的虚拟网络计算机VNC访问请求时,所述代理服务器获取与所述目标用户标识相匹配的密钥;
所述代理服务器采用所述密钥对随机数据进行加密处理,生成加密数据并输出至所述目标客户端,以使所述目标客户端对所述加密数据进行解密处理获得解密数据;
所述代理服务器接收所述目标客户端发送的解密数据;
所述代理服务器将所述解密数据与所述随机数据进行比对;
如比对一致,所述代理服务器允许所述目标客户端与虚拟机建立VNC访问连接。
在本发明实施例第一方面的第一种可能的实现方式中,所述当代理服务器接收到目标客户端发送的携带目标用户标识的VNC访问请求时,所述代理服务器获取与所述目标用户标识相匹配的密钥之前,还包括:
当代理服务器接收到目标客户端发送的携带目标用户标识的用户注册信息时,所述代理服务器生成与所述目标用户标识相匹配的密钥,所述密钥包括公钥和私钥。
结合本发明实施例第一方面的第一种可能的实现方式,在本发明实施例第一方面的第二种可能的实现方式中,所述代理服务器采用所述密钥对随机数据进行加密处理,生成加密数据并输出至所述目标客户端,以使所述目标客户端对所述加密数据进行解密处理获得解密数据,包括:
所述代理服务器采用所述公钥对随机数据进行加密,生成加密数据;
所述代理服务器采用图形码规则对所述加密数据进行编码处理,获得图形码信息并输出,以使所述目标客户端扫描并解析所述图形码信息获得所述加密数据,并从所述代理服务器获取所述私钥后,采用所述私钥对所述加密数据进行解密处理获得解密数据。
结合本发明实施例第一方面或第一方面的第一、二种可能的实现方式,在本发明实施例第一方面的第三种可能的实现方式中,所述代理服务器接收所述目标客户端发送的解密数据之后,还包括:
如所述解密数据与任意一个历史解密数据相同,所述代理服务器禁止所述目标客户端与虚拟机建立VNC访问连接,所述历史解密数据由当前处于VNC访问连接状态的至少一个客户端所发送。
结合本发明实施例第一方面的第三种可能的实现方式,在本发明实施例第一方面的第四种可能的实现方式中,所述代理服务器将所述解密数据与所述随机数据进行比对之后,还包括:
如比对不一致,所述代理服务器禁止所述目标客户端与虚拟机建立VNC访问连接。
结合本发明实施例第一方面或第一方面的第一、二种可能的实现方式,在本发明实施例第一方面的第五种可能的实现方式中,所述方法还包括:
所述代理服务器查询处于VNC访问连接状态的至少一个客户端的连接记录,所述连接记录包括:所关联的用户标识及连接建立时间;
所述代理服务器根据所述至少一个客户端的连接记录执行安全策略。
结合本发明实施例第一方面的第五种可能的实现方式,在本发明实施例第一方面的第六种可能的实现方式中,所述代理服务器根据所述至少一个客户端的连接记录执行安全策略,包括:
所述代理服务器按照所关联的用户标识对所述至少一个客户端进行归类,获得至少一个群组,每一个群组中包含至少一个成员客户端,同一群组中所有成员客户端所关联的用户标识相同;
所述代理服务器判断所述至少一个群组中每一个群组包含的成员客户端数量是否大于第一阈值;
若是,所述代理服务器保持所述虚拟机与大于第一阈值的目标群组中连接建立时间最晚的成员客户端之间的VNC访问连接,断开所述虚拟机与所述大于第一阈值的目标群组中其他成员客户端之间的VNC访问连接。
结合本发明实施例第一方面的第六种可能的实现方式,在本发明实施例第一方面的第七种可能的实现方式中,所述代理服务器根据所述至少一个客户端的连接记录执行安全策略之后,还包括:
所述代理服务器判断执行所述安全策略之后处于VNC访问连接状态的所有群组包含的成员客户端数量是否大于第二阈值;
若是,所述代理服务器向执行安全策略之后处于VNC访问连接状态的所有群组包含的成员客户端发送多用户连接提示信息。
本发明实施例第二方面公开了一种远程访问方法,包括:
目标客户端向代理服务器发送携带目标用户标识的虚拟网络计算机VNC访问请求,以使所述代理服务器获取与所述目标用户标识相匹配的密钥,并采用所述密钥对随机数据进行加密处理,生成和输出加密数据;
所述目标客户端对所述代理服务器输出的加密数据进行解密处理获得解密数据;
所述目标客户端向所述代理服务器发送所述解密数据,以使所述代理服务器将所述解密数据与所述随机数据进行比对;
如比对一致,所述目标客户端与虚拟机建立VNC访问连接以对所述虚拟机进行VNC访问。
在本发明实施例第二方面的第一种可能的实现方式中,所述目标客户端向代理服务器发送携带目标用户标识的VNC访问请求之前,还包括:
目标客户端向代理服务器发送携带有目标用户标识的用户注册信息,以使所述代理服务器根据所述用户注册信息生成与所述目标用户标识相匹配的密钥,所述密钥包括公钥和私钥。
结合本发明实施例第二方面的第一种可能的实现方式,在本发明实施例第二方面的第二种可能的实现方式中,所述加密数据为所述代理服务器采用所述公钥对随机数据进行加密获得,且所述代理服务器采用图形码规则对所述加密数据进行编码处理,获得图形码信息并输出;
所述目标客户端对所述代理服务器输出的加密数据进行解密处理获得解密数据,包括:
所述目标客户端扫描并解析所述图形码信息,获得所述加密数据;
所述目标客户端从所述代理服务器获取所述私钥,并采用所述私钥对所述加密数据进行解密处理获得解密数据。
结合本发明实施例第二方面或第二方面的第一、二种可能的实现方式,在本发明实施例第二方面的第三种可能的实现方式中,所述如比对一致,所述目标客户端与虚拟机建立VNC访问连接以对所述虚拟机进行VNC访问之后,还包括:
当所述目标客户端接收到所述代理服务器发送的多用户连接提示信息,输出所述多用户连接提示信息。
本发明实施例第三方面公开了一种代理服务器,包括:
获取单元,用于当接收到目标客户端发送的携带目标用户标识的虚拟网络计算机VNC访问请求时,获取与所述目标用户标识相匹配的密钥;
加密处理单元,用于采用所述密钥对随机数据进行加密处理,生成加密数据并输出至所述目标客户端,以使所述目标客户端对所述加密数据进行解密处理获得解密数据;
接收单元,用于接收所述目标客户端发送的解密数据;
比对单元,用于将所述解密数据与所述随机数据进行比对;
连接建立单元,用于如比对一致,允许所述目标客户端与虚拟机建立VNC访问连接。
在本发明实施例第三方面第一种可能的实现方式中,所述代理服务器还包括:
密钥生成单元,用于当接收到目标客户端发送的携带目标用户标识的用户注册信息时,生成与所述目标用户标识相匹配的密钥,所述密钥包括公钥和私钥。
结合本发明实施例第三方面的第一种可能的实现方式,在本发明实施例第三方面的第二种可能的实现方式中,加密处理单元包括:
加密子单元,用于采用所述公钥对随机数据进行加密,生成加密数据;
编码子单元,用于采用图形码规则对所述加密数据进行编码处理,获得图形码信息并输出,以使所述目标客户端扫描并解析所述图形码信息获得所述加密数据,并从所述代理服务器获取所述私钥后,采用所述私钥对所述加密数据进行解密处理获得解密数据。
结合本发明实施例第三方面或第三方面的第一、二种可能的实现方式,在本发明实施例第三方面的第三种可能的实现方式中,所述代理服务器还包括:
第一禁止单元,用于如所述解密数据与任意一个历史解密数据相同,禁止所述目标客户端与虚拟机建立VNC访问连接,所述历史解密数据由当前处于VNC访问连接状态的至少一个客户端所发送。
结合本发明实施例第三方面的第三种可能的实现方式,在本发明实施例第三方面的第四种可能的实现方式中,所述代理服务器还包括:
第二禁止单元,用于如比对不一致,禁止所述目标客户端与虚拟机建立VNC访问连接。
结合本发明实施例第三方面或第三方面的第一、二种可能的实现方式,在本发明实施例第三方面的第五种可能的实现方式中,所述代理服务器还包括:
查询单元,用于查询处于VNC访问连接状态的至少一个客户端的连接记录,所述连接记录包括:所关联的用户标识及连接建立时间;
执行单元,用于根据所述至少一个客户端的连接记录执行安全策略。
结合本发明实施例第三方面的第五种可能的实现方式,在本发明实施例第三方面的第六种可能的实现方式中,所述执行单元包括:
归类子单元,用于按照所关联的用户标识对所述至少一个客户端进行归类,获得至少一个群组,每一个群组中包含至少一个成员客户端,同一群组中所有成员客户端所关联的用户标识相同;
判断子单元,用于判断所述至少一个群组中每一个群组包含的成员客户端数量是否大于第一阈值;
执行子单元,用于当所述至少一个群组中每一个群组包含的成员客户端数量大于第一阈值时,保持与大于第一阈值的目标群组中连接建立时间最晚的成员客户端之间的VNC访问连接,断开虚拟机与所述大于第一阈值的目标群组中其他成员客户端之间的VNC访问连接。
结合本发明实施例第三方面的第六种可能的实现方式,在本发明实施例第三方面的第七种可能的实现方式中,所述代理服务器包括:
数量判断单元,用于判断执行所述安全策略之后处于VNC访问连接状态的所有群组包含的成员客户端数量是否大于第二阈值;
发送单元,用于当执行所述安全策略之后处于VNC访问连接状态的所有群组包含的成员客户端数量大于第二阈值时,向执行安全策略之后处于VNC访问连接状态的所有群组包含的成员客户端发送多用户连接提示信息。
本发明实施例第四方面公开了一种客户端,包括:
发送单元,用于向代理服务器发送携带目标用户标识的虚拟网络计算机VNC访问请求,以使所述代理服务器获取与所述目标用户标识相匹配的密钥,并采用所述密钥对随机数据进行加密处理,生成和输出加密数据;
解密处理单元,用于对所述代理服务器输出的加密数据进行解密处理获得解密数据;
比对单元,用于向所述代理服务器发送所述解密数据,以使所述代理服务器将所述解密数据与所述随机数据进行比对;
连接建立单元,用于如比对一致,与虚拟机建立VNC访问连接以对所述虚拟机进行VNC访问。
在本发明实施例第四方面的第一种可能的实现方式中,所述客户端还包括:
所述发送单元,还用于向代理服务器发送携带有目标用户标识的用户注册信息,以使所述代理服务器根据所述用户注册信息生成与所述目标用户标识相匹配的密钥,所述密钥包括公钥和私钥。
结合本发明实施例第四方面的第一种可能的实现方式,在本发明实施例第四方面的第二种可能的实现方式中,所述加密数据为所述代理服务器采用所述公钥对随机数据进行加密获得,且所述代理服务器采用图形码规则对所述加密数据进行编码处理,获得图形码信息并输出;
所述解密处理单元包括:
扫描子单元,用于扫描并解析所述图形码信息,获得所述加密数据;
解密处理子单元,用于从所述代理服务器获取所述私钥,并采用所述私钥对所述加密数据进行解密处理获得解密数据。
结合本发明实施例第四方面或第四方面的第一、二种可能的实现方式,在本发明实施例第四方面的第三种可能的实现方式中,所述客户端还包括:
输出单元,用于当接收到所述代理服务器发送的多用户连接提示信息,输出所述多用户连接提示信息。
本发明实施例中,当代理服务器接收到目标客户端发送的携带目标用户标识的虚拟网络计算机VNC访问请求时,所述代理服务器获取与所述目标用户标识相匹配的密钥,并采用所述密钥对随机数据进行加密处理,生成加密数据并输出至所述目标客户端,以使所述目标客户端对所述加密数据进行解密处理获得解密数据,接收所述解密数据并与所述随机数据进行比对,如比对一致,所述代理服务器允许所述目标客户端与虚拟机建立VNC访问连接,通过代理服务器根据目标用户标识获取密钥并对随机数据进行加解密处理,从而对目标客户端进行身份验证,避免了非法客户端与虚拟机建立VNC访问连接,从而减小信息泄露风险,加强VNC访问的安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例公开的一种网络构架示意图;
图2是本发明实施例公开的一种远程访问方法的流程示意图。
图3是本发明实施例公开的另一种远程访问方法的流程示意图;
图4是本发明实施例公开的又一种远程访问方法的流程示意图;
图5是本发明实施例公开的又一种远程访问方法的流程示意图;
图6是本发明实施例公开的又一种远程访问方法的流程示意图;
图7是本发明实施例公开的一种代理服务器的模块化示意图;
图8是本发明实施例公开的另一种代理服务器的模块化示意图;
图9是本发明实施例公开的一种代理服务器的结构示意图;
图10是本发明实施例公开的一种客户端的模块化示意图;
图11是本发明实施例公开的一种客户端的结构示意图;
图12是本发明实施例公开的一种VNC远程访问系统的架构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
本发明实施例提供一种远程访问方法、服务器及客户端,以期减小信息泄露风险,加强VNC访问的安全性。
为了便于理解本发明实施例,下面先对本发明实施例中所涉及的OpenStack的核心组件Nova和VNC访问连接的现有技术实现过程进行说明。OpenStack是一个开源的云计算管理平台项目,可提供实施简单、大规模扩展、丰富、标准统一的云计算管理平台,其中,计算Nova是OpenStack的核心,可以根据需要提供虚拟机的服务器,负责处理工作负载的流程,VNC是Nova提供的用来访问虚拟机的一项重要功能,用户可以通过浏览器来进行VNC访问。VNC访问连接的现有技术实现过程为:客户端通过Nova-api可以获取到URL地址,其中,URL地址包括IP、端口号和token;客户端通过浏览器连接到代理服务器;代理服务器通过Nova验证访问URL地址token,并将token映射到虚拟机所在的宿主机的IP地址和虚拟机启动时所监听的端口;token验证成功后,代理服务器允许客户端与虚拟机建立连接。
本发明实施例在上述VNC访问连接的实现过程基础上,通过将客户端和代理服务器进行改进,增加了访问校验机制以及针对同时多个VNC连接情况下的处理,以减小信息泄露风险,加强VNC访问的安全性,本发明实施例后续将详细介绍上述过程,此处先不做介绍。
下面对本发明实施例的网络架构进行描述。请参阅图1,图1是本发明实施例公开的一种网络构架示意图。如图1所示,本发明实施例的网络构架可以包括客户端、代理服务器和虚拟机。
客户端用于实现VNC访问请求的发送、数据解密和与虚拟机进行VNC访问连接,所述功能实体可以位于智能手机、笔记本电脑、台式电脑或平板电脑等智能终端中,本发明实施例不作限定,且多个客户端可同时与同一个虚拟机进行VNC访问连接,例如客户端1、2、3……可通过与代理服务器进行连接和验证后,可实现与同一个虚拟机进行VNC访问连接,并对虚拟机桌面内容进行访问。客户端可以通过将获取的URL地址输入至浏览器,以发起访问请求,连接上代理服务器后,通过代理服务器对预设信息进行解密,如token和解密信息通过代理服务器验证,则可以实现与虚拟机建立VNC访问连接。
代理服务器(vncproxy)用于实现对接收到的客户端访问请求进行拦截、数据加密以及管理客户端对虚拟机的VNC访问连接权限,并将虚拟机桌面的内容镜像到远程客户端中,所述功能实体可以位于虚拟机所在的宿主机如智能手机、笔记本电脑、台式电脑或平板电脑等非客户端所在的智能终端,本发明实施例不作限定。代理服务器可以通过token对客户端进行验证,在本发明实施例中,代理服务器还用于对预设信息通过密钥的方式进行加密,以进一步对客户端进行鉴权,减小信息泄露风险。虚拟机用于与客户端进行VNC访问连接后,将其信息进行共享,且用户可通过客户端实现对虚拟机的远程控制操作。
以上对本发明实施例的网络架构进行了描述,下面进一步描述本发明实施例公开的方法。请参阅图2,图2是本发明实施例公开的一种远程访问方法的流程示意图。其中,图2所描述的方法是从代理服务器一侧来进行描述的。如图2所示,所述方法可以包括以下步骤:
S201,当代理服务器接收到目标客户端发送的携带目标用户标识的虚拟网络计算机VNC访问请求时,所述代理服务器获取与所述目标用户标识相匹配的密钥。
具体实施例中,在目标客户端进行VNC访问请求前,可以通过Nova命令行或者图形界面发起API请求,要求返回虚拟计算机VNC的URL地址,所述URL地址包括IP地址、端口、token等相关用户信息(例如格式为:http://IP:PORT/vnc_auto.html?token=token_id),当目标客户端接收到所述URL地址时,由目标客户端通过所述URL地址发起VNC访问请求。其中,代理服务器的访问地与虚拟机的地址相同,当所述目标客户端发送携带目标用户标识的VNC访问请求给虚拟机时,代理服务器可以拦截所述VNC请求,并接收目标客户端发送的携带目标用户标识的VNC访问请求。
当代理服务器接收到目标客户端发送的携带目标用户标识的VNC访问请求时,所述代理服务器获取与所述目标用户标识相匹配的密钥,其中,所述目标用户标识是指在注册时由客户端根据用户名、密码信息等注册信息生成的可识别该用户的唯一识别码ID作为用户标识,每一个用户对应一个用户标识,所述密钥是指在用户注册过程中,由客户端将相关注册信息和用户标识发送给所述代理服务器,由代理服务器为每一个用户所生成的,可选的,所述密钥可以是对称密钥,也可以是非对称密钥如公私钥。代理服务器可根据目标用户标识查询与所述目标用户标识相匹配的密钥,并将所述密钥作为后续加解密的工具。
S202,所述代理服务器采用所述密钥对随机数据进行加密处理,生成加密数据并输出至所述目标客户端,以使所述目标客户端对所述加密数据进行解密处理获得解密数据。
具体实施例中,由于token信息为明文且被存储于开放的缓存中,因此其很容易被其它非法用户所获得。为了防止URL地址被非法用户所使用,代理服务器在接收到所述URL地址后,需要对发送URL地址的目标客户端进行鉴权。在本发明实施例中,可以通过代理服务器和目标客户端之间增加加密方式以对目标客户端进行鉴权。加密方式中所采用的密钥可以为对称密钥,也可以为非对称密钥。当密钥为对称密钥时,即目标客户端的解密密钥和代理服务器的加密密钥为相同的密钥,采用对称加密可以快速对数据进行加解密,实现过程较为简单,但安全性较低。优选的,本发明实施例采用非对称加密的方式进行加解密,即所述目标客户端的密钥和代理服务器的密钥为一对密钥,其中,客户端获取私钥,代理服务器获取公钥。
为了进一步加强鉴权的可靠性,所述代理服务器可以随机获取数据作为预设进行加解密的数据。所述代理服务器可以采用所述密钥如公钥对随机数据进行加密处理,生成加密数据并输出至所述目标客户端。所述目标客户端接收到所述加密数据后,可以通过密钥如私钥对所述加密数据进行解密处理,获得解密数据。所述目标客户端和代理服务器的密钥可以通过身份标识来获取,不同的身份标识对应不同的密钥,如果通过代理服务器进行加密后,目标客户端能够成功进行解密,则说明所述目标客户端鉴权成功。例如:当代理服务器自动生成的随机数据为343434,通过密钥进行加密后,生成的密码串为aabbcc,所述目标客户端获取所述代理服务器的密码串并通过自身的密钥进行解密后,如获得的解密数据为343434,则说明所述目标客户端鉴权成功。
S203,所述代理服务器接收所述目标客户端发送的解密数据。
具体实施例中,当所述目标客户端发送解密数据给所述代理服务器,所述代理服务器接收所述目标客户端发送的解密数据。可选的,在接收所述目标客户端发送的解密数据时,可以通过对解密数据的位数进行比对,从而初步判断所接收到达解密数据是否正确,如果位数与所述随机数据不相同,则说明解密失败,可以直接拒绝接收所述目标客户端发送的解密数据。
S204,所述代理服务器将所述解密数据与所述随机数据进行比对。
具体实施例中,代理服务器将所述解密数据与所述随机数据进行比对,从而判断获得的解密数据是否正确,以对客户端进行鉴权。优选的,可以将所述随机数据设置为具有预设有效期的数据,以防止所述随机数据被非法窃取,例如所述随机数据为在10分钟内有效,如在有效期内代理服务器未能接收到所述解密数据,或所述解密数据与所述随机数据未能比对成功,则视为当前比对失效。
S205,如比对一致,所述代理服务器允许所述目标客户端与虚拟机建立VNC访问连接。
具体实施例中,如所述解密数据与所述随机数据比对一致,说明所述解密数据正确,即所述目标客户端的鉴权通过,代理服务器将允许所述目标客户端与虚拟机建立VNC访问连接。
本发明实施例中,当代理服务器接收到目标客户端发送的携带目标用户标识的虚拟网络计算机VNC访问请求时,所述代理服务器获取与所述目标用户标识相匹配的密钥,并采用所述密钥对随机数据进行加密处理,生成加密数据并输出至所述目标客户端,以使所述目标客户端对所述加密数据进行解密处理获得解密数据,接收所述解密数据并与所述随机数据进行比对,如比对一致,所述代理服务器允许所述目标客户端与虚拟机建立VNC访问连接,通过代理服务器根据目标用户标识获取密钥并对随机数据进行加解密处理,从而对目标客户端进行身份验证,避免了非法客户端与虚拟机建立VNC访问连接,从而减小信息泄露风险,加强VNC访问的安全性。
请参阅图3,图3是本发明实施例公开的另一种远程访问方法的流程示意图。其中,图3所描述的方法是从代理服务器一侧来进行详细描述的。如图3所示,所述方法可以包括以下步骤:
S301,当代理服务器接收到目标客户端发送的携带目标用户标识的用户注册信息时,所述代理服务器生成与所述目标用户标识相匹配的密钥,所述密钥包括公钥和私钥。
具体实施例中,代理服务器可以为每个访问用户生成密钥,每个访问用户对应唯一的目标用户标识。当某一用户首次请求进行VNC访问连接时,可以通过客户端输入所述注册信息如注册名、密码等至代理服务器进行访问验证,验证成功后,客户端会自动为所述用户生成唯一的目标用户标识。所述目标用户标识可以通过所述目标客户端发送给代理服务器。所述代理服务器可以生成与所述目标用户标识相匹配的密钥,一个目标用户标识对应一个密钥。
加密方式中所采用的密钥可以为对称密钥,也可以为非对称密钥。当密钥为对称密钥时,即目标客户端的解密密钥和代理服务器的加密密钥为相同的密钥,采用对称加密可以快速对数据进行加解密,实现过程较为简单,但由于对称加密过程中,交互双方均采用同一个密钥进行加解密,而本发明实施例中,交互双方为多个客户端和同一个代理服务器,因此代理服务器一方会涉及到多个密钥,如果代理服务器和客户端采用相同的密钥,当代理服务器中的密钥被泄露给其它客户端时,其它客户端可以通过所述密钥对加密数据进行解密,存在一定的安全隐患。
本发明实施例中,优先选择非对称加密的方式进行加解密,即所述目标客户端的密钥和代理服务器的密钥为一对密钥,其中,客户端获取私钥,代理服务器获取公钥,代理服务器可以公钥进行加密,并将所述加密数据发送给所述目标客户端,所述目标客户端采用私钥进行解密,采用公私钥的方式进行加解密,提高数据加解密的安全性。
S302,当代理服务器接收到目标客户端发送的携带目标用户标识的虚拟网络计算机VNC访问请求时,所述代理服务器获取与所述目标用户标识相匹配的密钥。
具体实施例中,在目标客户端进行VNC访问请求前,可以通过Nova命令行或者图形界面发起API请求,要求返回虚拟计算机VNC的URL地址,所述URL地址包括IP地址、端口、token等相关用户信息(例如格式为:http://IP:PORT/vnc_auto.html?token=token_id),当目标客户端接收到所述URL地址时,由目标客户端通过所述URL地址发起VNC访问请求。其中,代理服务器的访问地与虚拟机的地址相同,当所述目标客户端发送携带目标用户标识的VNC访问请求给虚拟机时,代理服务器可以拦截所述VNC请求,并接收目标客户端发送的携带目标用户标识的VNC访问请求。
当代理服务器接收到目标客户端发送的携带目标用户标识的VNC访问请求时,所述代理服务器可根据目标用户标识查询与所述目标用户标识相匹配的密钥如公钥,并将所述公钥作为后续加解密的工具。
S303,所述代理服务器采用所述公钥对随机数据进行加密,生成加密数据。
具体实施例中,所述代理服务器可以通过公钥对预设定数据进行加密,其中,预设定数据可以是任意数据。由于随机数据具有随机、不可预计的,因此在本实施例中,采用所述随机数据作为与设定数据,相对于固定数据而言,可以防止数据的泄密。代理服务器可以采用所述公钥对随机数据进行加密,并获得加密数据,例如:当随机生成的数据为112233时,采用公钥加密后的数据变成XXYYZZ。
S304,所述代理服务器采用图形码规则对所述加密数据进行编码处理,获得图形码信息并输出,以使所述目标客户端扫描并解析所述图形码信息获得所述加密数据,并从所述代理服务器获取所述私钥后,采用所述私钥对所述加密数据进行解密处理获得解密数据。
具体实施例中,代理服务器采用图形码规则对所述加密数据进行编码处理,获得图形码信息并将所述图形码进行显示以供客户端的扫描。目标客户端可以通过扫码功能扫描图形码信息以获取到所述加密数据,并通过私钥对所述加密数据进行解密处理。如目标客户端所登录的注册名为首次登录时,则需要先查询代理服务器以从所述代理服务器中下载与所述目标用户标识相匹配的私钥,然后再通过所述加密数据进行解密处理,从而获得解密数据。本发明实施例中的图形码可以包括二维码、条形码等,通过图形码的扫描来获取加密数据,提高了数据获取的便捷性。
S305,所述代理服务器接收所述目标客户端发送的解密数据。
具体实施例中,本发明实施例步骤S305可以参见图2所示的步骤S203,在此不再进行赘述。
在另一实施例中,如所述解密数据与任意一个历史解密数据相同,所述代理服务器禁止所述目标客户端与虚拟机建立VNC访问连接,所述历史解密数据由当前处于VNC访问连接状态的至少一个客户端所发送。
具体实施例中,处于VNC访问连接状态的至少一个客户端对应的历史解密数据会被存储于代理服务器中,当代理服务器接收到的当前的解密数据与历史解密数据相同时,说明可能是目标客户端重复发送了解密数据或非法客户端窃取了解密数据并冒充当前的目标客户端进行VNC连接。因此,为了避免重放攻击和提高安全性,如所述解密数据与任意一个历史解密数据相同时,则代理服务器将禁止所述当前的目标客户端与虚拟机建立VNC访问连接。
S306,所述代理服务器将所述解密数据与所述随机数据进行比对。
具体实施例中,如所述解密数据与所述随机数据比对一致,则执行步骤S307,否则,执行步骤S308。本发明实施例步骤S306可以参见图2所示的步骤S204,在此不再进行赘述。
S307,如比对一致,所述代理服务器与允许所述目标客户端与虚拟机建立VNC访问连接。
具体实施例中,本发明实施例步骤S307可以参见图2所示的步骤S205,在此不再进行赘述。
S308,如比对不一致,所述代理服务器禁止所述目标客户端与虚拟机建立VNC访问连接。
具体实施例中,如所述解密数据与所述随机数据比对不一致,则说明所述解密数据错误,所述目标服务器鉴权失败,代理服务器将禁止所述目标客户端与虚拟机建立VNC访问连接。
上述发明实施例中,由于随机数据具有随机、不可预计性,代理服务器通过对随机数据进行加密,相比较固定数据而言,数据被窃取的可能性更小,且采用非对称的公私钥的方式对随机数据进行加解密,可以提高数据加解密过程中的可靠性,通过加解密方式对所述目标客户端进行鉴权,增强了VNC访问的安全性。
请参见图4,图4是本发明实施例公开的又一种远程访问方法的流程示意图。其中,图4所描述的方法是从代理服务器一侧来进行描述的。如图4所示,所述方法可以包括以下步骤:
S401,当代理服务器接收到目标客户端发送的携带目标用户标识的用户注册信息时,所述代理服务器生成与所述目标用户标识相匹配的密钥,所述密钥包括公钥和私钥。
具体实施例中,本发明实施例步骤S401可以参见图3所示的步骤S301,在此不再进行赘述。
S402,当代理服务器接收到目标客户端发送的携带目标用户标识的虚拟网络计算机VNC访问请求时,所述代理服务器获取与所述目标用户标识相匹配的密钥。
具体实施例中,本发明实施例步骤S402可以参见图3所示的步骤S302,在此不再进行赘述。
S403,所述代理服务器采用所述公钥对随机数据进行加密,生成加密数据。
具体实施例中,本发明实施例步骤S403可以参见图3所示的步骤S303,在此不再进行赘述。
S404,所述代理服务器采用图形码规则对所述加密数据进行编码处理,获得图形码信息并输出,以使所述目标客户端扫描并解析所述图形码信息获得所述加密数据,并从所述代理服务器获取所述私钥后,采用所述私钥对所述加密数据进行解密处理获得解密数据。
具体实施例中,本发明实施例步骤S404可以参见图3所示的步骤S304,在此不再进行赘述。
S405,所述代理服务器接收所述目标客户端发送的解密数据。
具体实施例中,本发明实施例步骤S405可以参见图3所示的步骤S305,在此不再进行赘述。
S406,所述代理服务器将所述解密数据与所述随机数据进行比对。
具体实施例中,本发明实施例步骤S406可以参见图2所示的步骤S204,在此不再进行赘述。
S407,如比对一致,所述代理服务器与允许所述目标客户端与虚拟机建立VNC访问连接。
具体实施例中,本发明实施例步骤S407可以参见图2所示的步骤S205,在此不再进行赘述。
S408,所述代理服务器查询处于VNC访问连接状态的至少一个客户端的连接记录,所述连接记录包括:所关联的用户标识及连接建立时间。
具体实施例中,当所述虚拟机与多个客户端进行VNC访问连接时,所有的所述客户端均可以共享虚拟机的屏幕信息,且任意一个客户端都可以对虚拟机进行控制操作,而多客户端进行虚拟机的屏幕共享,可能会出现信息泄露的问题,例如,客户端A和客户端B连接于同一虚拟机中,当客户端A向虚拟机输入隐私信息时,此时客户端B可以通过共享屏幕获取到所述隐私信息,从而造成信息泄露。另一方面,由于用户的误操作或注册名被窃取,可能会出现在不同的客户端采用了同一注册名进行登录并访问VNC的情况。因此,针对上述情况,本发明实施例在确保目标客户端与所述虚拟机建立了VNC访问连接的安全性基础上,还需要对上述情况进行判断和处理,以减小信息泄露的风险。
为了解决上述问题,所述代理服务器需要获知当前的VNC访问连接情况,因此所述代理服务器查询处于VNC访问连接状态的至少一个客户端的连接记录,所述连接记录包括所关联的用户标识及连接时间。其中,所关联的用户标识用于识别不同的用户,连接时间可用于对各用户的登录时间进行比对,以获取到最近一次登录的时间。本发明实施例中,所述连接记录不局限于上述信息,还可以包括客户端个数、客户端访问个数阈值等。
S409,所述代理服务器根据所述至少一个客户端的连接记录执行安全策略。
具体实施例中,当所述代理服务器获取到所述处于VNC访问连接状态的至少一个客户端的连接记录时,所述代理服务器根据所述至少一个客户端的连接记录执行安全策略,以减小信息泄露的风险。
一个实施例中,所述代理服务器按照所关联的用户标识对所述至少一个客户端进行归类,获得至少一个群组,每一个群组中包含至少一个成员客户端,同一群组中所有成员客户端所关联的用户标识相同;
所述代理服务器判断所述至少一个群组中每一个群组包含的成员客户端数量是否大于第一阈值;
若所述代理服务器判断所述至少一个群组中每一个群组包含的成员客户端数量大于第一阈值,所述代理服务器保持所述虚拟机与大于第一阈值的目标群组中连接建立时间最晚的成员客户端之间的VNC访问连接,断开所述虚拟机与所述大于第一阈值的目标群组中其他成员客户端之间的VNC访问连接。
具体的,当所述代理服务器获取到处于VNC访问连接状态的至少一个客户端的连接记录,按照所关联的用户标识对所述至少一个客户端进行归类,获得至少一个群组,每一个群组中包含至少一个成员客户端,同一群组中所有成员客户端所关联的用户标识相同,例如:
第一组:目标用户标识1—>客户端A、B和C;
第二组:目标用户标识2—>客户端D;
第三组:目标用户标识3—>客户端E;
第四组:目标用户标识4—>客户端F。
为了保证用户注册信息的安全,一般情况下,可将第一阈值设置为1,即在同一时间只允许同一注册名登录在一个客户端上。如将第一阈值设置为1时,所述第一组满足代理服务器判断上述群组中大于第一阈值的条件,即目标用户标识为1的用户登录到三个不同的客户端中。可选的,所述第一阈值可以根据用户的需要选择系统默认或根据实际需要通过用户端一侧发送控制指令给代理服务器,以进行调整。
当检测到同一个用户同时登录到多个客户端时,可以保留最近一次的连接,而将其它时间登录的客户端进行断开。即当所述代理服务器判断所述至少一个群组中每一个群组包含的成员客户端数量大于第一阈值时,所述代理服务器将保持所述虚拟机与大于第一阈值的目标群组中连接建立时间最晚的成员客户端之间的VNC访问连接,断开所述虚拟机与所述大于第一阈值的目标群组中其他成员客户端之间的VNC访问连接。在对连接建立时间最晚的成员客户端进行判断时,可以根据连接建立时间来进行判断,例如将所述超过第一阈值的第一组的连接建立时间进行排序,然后将时间最晚的成员客户端的连接保留,同时断开其它的成员客户端的连接,这样可以避免未使用的客户端还处于连接状态。本发明实施例中,也可以是根据实际情况预保留指定的连接,而断开其它连接。
在另一实施例中,所述代理服务器判断执行所述安全策略之后处于VNC访问连接状态的所有群组包含的成员客户端数量是否大于第二阈值;
若所述代理服务器判断执行所述安全策略之后处于VNC访问连接状态的所有群组包含的成员客户端数量大于第二阈值,所述代理服务器向执行安全策略之后处于VNC访问连接状态的所有群组包含的成员客户端发送多用户连接提示信息。
具体的,执行所述安全策略以对相同用户标识的客户端进行处理后,当前处于VNC访问连接状态的所有群组中所包含的成员客户端均为用户标识不同的成员客户端。判断上述成员客户端数量是否大于第二阈值,在本发明实施例中,可选择第二阈值为1,即当有至少两个或两个以上的客户端进行VNC访问连接时,则判定当前处于VNC访问连接状态的所有群组包含的成员客户端数量大于第二阈值,说明当前已有至少两个或两个以上的客户端进行VNC访问连接。为了避免隐私泄露,所述代理服务器可以向执行安全策略之后处于VNC访问连接状态的所有群组包含的成员客户端发送多用户连接提示信息,以告知各用户当前的连接数量,避免用户在进行对虚拟机进行访问或操控时造成信息泄露。本实施例中,不局限于上述发送多用户连接提示信息,也可以当发现多个客户端同时与同一虚拟机进行VNC连接时,断开所有或指定部分客户端的VNC访问连接。
上述实施例中,通过数据加解密的方式对目标客户端进行鉴权,提高了VNC访问连接的可靠性,并对处于VNC连接状态的目标用户标识相同的客户端的数量进行关闭处理,以及对处于VNC连接状态的不同用户标识的客户端发送提醒消息,降低了信息泄露风险。
请参见图5,图5是本发明实施例公开的又一种远程访问方法的流程示意图。其中,图5所描述的方法是从客户端一侧来进行描述的。如图5所示,所述方法可以包括以下步骤:
S501,目标客户端向代理服务器发送携带目标用户标识的虚拟网络计算机VNC访问请求,以使所述代理服务器获取与所述目标用户标识相匹配的密钥,并采用所述密钥对随机数据进行加密处理,生成和输出加密数据。
具体实施例中,目标客户端进行VNC访问请求前,可以通过Nova命令行或者图形界面发起API请求,要求返回VNC的URL地址,所述URL地址包括IP地址、端口、token等相关用户信息(例如格式为:http://IP:PORT/vnc_auto.html?token=token_id),Nova-api获取并返回URL地址,由目标客户端通过所述URL地址发起VNC访问请求,其中所述访问请求还携带目标用户标识。当所述目标客户端发送携带目标用户标识的VNC访问请求给虚拟机时,代理服务器可以拦截所述VNC请求,并接收目标客户端发送的携带目标用户标识的VNC访问请求,所述代理服务器可以根据所述VNC访问请求的目标用户标识,查询并获取到与所述用户标识相匹配的密钥,然后采用所述密钥对随机数据进行加密处理,生成和输出加密数据。
S502,所述目标客户端对所述代理服务器输出的加密数据进行解密处理获得解密数据。
具体实施例中,当所述目标客户端获取到所述代理服务器输出的加密数据后,根据所述加密数据进行解密处理,以获得解密数据。本发明实施例中,所述目标客户端可以根据密钥如私钥进行解密处理。当通过密钥的方式进行解密时,所述目标客户端可以先根据目标用户标识查询是否存在于所述目标用户标识相匹配的密钥,如存在,可以直接通过所述密钥进行解密,如不存在,可以通过向所述代理服务器发送查询请求以获取或加载所述密钥后,采用所述密钥进行解密。
S503,所述目标客户端向所述代理服务器发送所述解密数据,以使所述代理服务器将所述解密数据与所述随机数据进行比对。
具体实施例中,所述目标客户端将解密数据发送给所述代理服务器,以使所述代理服务器将所述解密数据与所述随机数据进行比对,从而判断所述目标客户端是否能够正确进行解密,以对目标客户进行鉴权。
S504,如比对一致,所述目标客户端与虚拟机建立VNC访问连接以对所述虚拟机进行VNC访问。
具体实施例中,如果所述解密数据与所述随机数据比对一致,则说明所述目标客户端鉴权成功,所述目标客户端可以与虚拟机建立VNC访问连接以对所述虚拟机进行VNC访问。
上述发明实施例中,所述客户端通过向代理服务器发送携带目标用户标识的VNC访问请求,并对所述代理服务器发送的加密数据进行解码以对所述目标客户端进行鉴权,避免了非法客户端与虚拟机建立VNC访问连接,从而减小信息泄露风险,加强了VNC访问的安全性。
请参见图6,图6是本发明实施例公开的又一种远程访问方法的流程示意图。其中,图6所描述的方法是从代理服务器、客户端和虚拟机多端来进行描述的。如图6所示,所述方法可以包括以下步骤:
S601,客户端发送携带有目标用户标识的用户注册信息。
具体实施例中,当某一用户首次请求进行VNC访问连接时,可以通过客户端输入所述注册信息至代理服务器进行验证,例如注册名、密码等,验证成功后,客户端会自动为所述用户生成唯一的目标用户标识。所述目标用户标识可以通过所述目标客户端发送给代理服务器。
S602,代理服务器生成与目标用户标识相匹配的密钥。
具体实施例中,所述代理服务器可以生成与所述目标用户标识相匹配的密钥,一个目标用户标识对应一个密钥。加密方式中所采用的密钥可以为对称密钥,也可以为非对称密钥。当密钥为对称密钥时,即目标客户端的解密密钥和代理服务器的加密密钥为相同的密钥,采用对称加密可以快速对数据进行加解密,实现过程较为简单,但由于对称加密过程中,交互双方均采用同一个密钥进行加解密,而本发明实施例中,交互双方为多个客户端和同一个代理服务器,因此代理服务器一方会涉及到多个密钥,如果代理服务器和客户端采用相同的密钥,当代理服务器中的密钥被泄露给其它客户端时,其它客户端可以通过所述密钥对加密数据进行解密,存在一定的安全隐患。
本发明实施例中,优选非对称加密的方式进行加解密,即所述目标客户端的密钥和代理服务器的密钥为一对密钥,其中,客户端获取私钥,代理服务器获取公钥,代理服务器可以公钥进行加密,并将所述加密数据发送给所述目标客户端,所述目标客户端采用私钥进行解密,采用公私钥的方式进行加解密,提高数据加解密的安全性
S603,所述客户端发送携带目标用户标识的VNC访问请求。
具体实施例中,在目标客户端进行VNC访问请求前,可以通过Nova命令行或者图形界面发起API请求,要求返回VNC的URL地址,所述URL地址包括IP地址、端口、token等相关用户信息(例如格式为:http://IP:PORT/vnc_auto.html?token=token_id),Nova-api获取并返回URL地址,由目标客户端通过所述URL地址发起VNC访问请求。
S604,所述代理服务器获取与目标用户标识相匹配的密钥,并采用公钥对随机数据进行加密,获得加密数据。
具体实施例中,代理服务器的访问地址可以配置为与被访问设备虚拟机的地址相同,当所述目标客户端发送携带目标用户标识的VNC访问请求给被访问设备虚拟机时,代理服务器可以拦截所述VNC请求,并接收目标客户端发送的携带目标用户标识的VNC访问请求。
当代理服务器接收到目标客户端发送的携带目标用户标识的VNC访问请求时,所述代理服务器可根据目标用户标识查询与所述目标用户标识相匹配的密钥如公钥,并通过公钥对预设定数据进行加密,其中,预设定数据可以是任意数据。由于随机数据具有随机、不可预计的,因此在本实施例中,采用所述随机数据作为与设定数据,相对于固定数据而言,可以防止数据的泄密。代理服务器可以采用所述公钥对随机数据进行加密,并获得加密数据,例如:当随机生成的数据为112233时,采用公钥加密后的数据变成XXYYZZ。
S605,所述代理服务器采用图形码规则对加密数据进行编码处理,获得图形信息并输出。
具体实施例中,代理服务器采用图形码规则对所述加密数据进行编码处理,获得图形码信息并将所述图形码进行显示以供客户端的扫描。目标客户端可以通过扫码功能扫描图形码信息以获取到所述加密数据,并通过私钥对所述加密数据进行解密处理。如目标客户端所登录的注册名为首次登录时,则需要先查询代理服务器以从所述代理服务器中下载与所述目标用户标识相匹配的私钥,然后再通过所述加密数据进行解密处理,从而获得解密数据。本发明实施例中的图形码可以包括二维码、条形码等,通过图形码的扫描来获取加密数据,提高了数据获取的便捷性。
S606,所述客户端扫描并解析图形码信息获得加密数据。
具体实施例中,客户端通过扫描的方式获取代理服务器中的图形码信息,并对图形码进行解析,获取到加密数据。
S607,所述客户端获取私钥并采用私钥对加密数据进行解密处理,获得并发送解密数据。
具体实施例中,当所述目标客户端获取到所述代理服务器输出的加密数据后,根据所述加密数据进行解密处理,以获得解密数据。本发明实施例中,所述目标客户端可以根据私钥进行解密处理。当通过私钥的方式进行解密时,所述目标客户端可以先根据目标用户标识查询是否存在于所述目标用户标识相匹配的私钥,如存在,可以直接通过所述私钥进行解密,如不存在,可以通过向所述代理服务器发送查询请求以获取或加载所述私钥后,采用所述私钥进行解密。
S608,所述代理服务器将解密数据与随机数据进行比对。
具体实施例中,当所述目标客户端发送解密数据给所述代理服务器,所述代理服务器接收所述目标客户端发送的解密数据。可选的,在接收所述目标客户端发送的解密数据时,可以通过对解密数据的位数进行比对,从而初步判断所接收到达解密数据是否正确,如果位数与所述随机数据不相同,则说明解密失败,可以直接拒绝接收所述目标客户端发送的解密数据。
如所述解密数据与任意一个历史解密数据相同,所述代理服务器禁止所述目标客户端与虚拟机建立VNC访问连接,所述历史解密数据由当前处于VNC访问连接状态的至少一个客户端所发送。
处于VNC访问连接状态的至少一个客户端对应的历史解密数据会被存储于代理服务器中,当代理服务器接收到的当前的解密数据与历史解密数据相同时,说明可能是目标客户端重复发送了解密数据或非法客户端窃取了解密数据并冒充当前的目标客户端进行VNC连接。因此,为了避免重放攻击和提高安全性,如所述解密数据与任意一个历史解密数据相同时,则代理服务器将禁止所述当前的目标客户端与虚拟机建立VNC访问连接。
如所述解密数据与任意一个历史解密数据不相同,所述代理服务器将所述解密数据与所述随机数据进行比对,从而判断获得的解密数据是否正确,以对客户端进行鉴权。优选的,可以将所述随机数据设置为具有预设有效期的数据,以防止所述随机数据被非法窃取,例如所述随机数据为在10分钟内有效,如在有效期内代理服务器未能接收到所述解密数据,或所述解密数据与所述随机数据未能比对成功,则视为当前比对失效。
S609,如比对一致,所述代理服务器允许与虚拟机建立VNC访问连接。
具体实施例中,如所述解密数据与所述随机数据比对一致,说明所述解密数据正确,即所述目标客户端的鉴权通过,代理服务器将允许所述目标客户端与虚拟机建立VNC访问连接。
S610,所述客户端与虚拟机建立VNC访问连接。
具体实施例中,如代理服务器允许所述目标客户端与虚拟机建立VNC访问连接,所述客户端与虚拟机建立VNC访问连接。
S611,所述代理服务器查询处于VNC访问连接状态的至少一个客户端的连接记录。
具体实施例中,当所述虚拟机与多个客户端进行VNC访问连接时,所有的所述客户端均可以共享虚拟机的屏幕信息,且任意一个客户端都可以对虚拟机进行控制操作,而多客户端进行虚拟机的屏幕共享,可能会出现信息泄露的问题,例如,客户端A和客户端B连接于同一虚拟机中,当客户端A向虚拟机输入隐私信息时,此时客户端B可以通过共享屏幕获取到所述隐私信息,从而造成信息泄露。另一方面,由于用户的误操作或注册名被窃取,可能会出现在不同的客户端采用了同一注册名进行登录并访问VNC的情况。因此,针对上述情况,本发明实施例在确保目标客户端与所述虚拟机建立了VNC访问连接的安全性基础上,还需要对上述情况进行判断和处理,以减小信息泄露的风险。
为了解决上述问题,所述代理服务器需要获知当前的VNC访问连接情况,因此所述代理服务器查询处于VNC访问连接状态的至少一个客户端的连接记录,所述连接记录包括所关联的用户标识及连接时间。其中,所关联的用户标识用于识别不同的用户,连接时间可用于对各用户的登录时间进行比对,以获取到最近一次登录的时间。本发明实施例中,所述连接记录不局限于上述信息,还可以包括客户端个数、客户端访问个数阈值等。
S612,所述代理服务器按照所关联的用户标识对所述至少一个客户端进行归类,获得至少一个群组,每一个群组中包含至少一个成员客户端。
具体实施例中,当所述代理服务器获取到所述处于VNC访问连接状态的至少一个客户端的连接记录时,所述代理服务器根据所述至少一个客户端的连接记录执行安全策略,以减小信息泄露的风险。
当所述代理服务器获取到处于VNC访问连接状态的至少一个客户端的连接记录,按照所关联的用户标识对所述至少一个客户端进行归类,获得至少一个群组,每一个群组中包含至少一个成员客户端,同一群组中所有成员客户端所关联的用户标识相同,例如:
第一组:目标用户标识1—>客户端A、B和C;
第二组:目标用户标识2—>客户端D;
第三组:目标用户标识3—>客户端E;
第四组:目标用户标识4—>客户端F。
S613,所述代理服务器判断所述至少一个群组中每一个群组包含的成员客户端数量是否大于第一阈值。
具体实施例中,为了保证用户注册信息的安全,一般情况下,可将第一阈值设置为1,即在同一时间只允许同一注册名登录在一个客户端上。如将第一阈值设置为1时,所述第一组满足代理服务器判断上述群组中大于第一阈值的条件,即目标用户标识为1的用户登录到三个不同的客户端中。可选的,所述第一阈值可以根据用户的需要选择系统默认或根据实际需要通过用户端一侧发送控制指令给代理服务器,以进行调整。
S614,所述客户端保持所述虚拟机与大于第一阈值的目标群组中连接建立时间最晚的成员客户端之间的VNC访问连接,断开所述虚拟机与所述大于第一阈值的目标群组中其他成员客户端之间的VNC访问连接。
具体实施例中,当检测到同一个用户同时登录到多个客户端时,可以保留最近一次的连接,而将其它时间登录的客户端进行断开。即当所述代理服务器判断所述至少一个群组中每一个群组包含的成员客户端数量大于第一阈值时,所述代理服务器将保持所述虚拟机与大于第一阈值的目标群组中连接建立时间最晚的成员客户端之间的VNC访问连接,断开所述虚拟机与所述大于第一阈值的目标群组中其他成员客户端之间的VNC访问连接。在对连接建立时间最晚的成员客户端进行判断时,可以根据连接建立时间来进行判断,例如将所述超过第一阈值的第一组的连接建立时间进行排序,然后将时间最晚的成员客户端的连接保留,同时断开其它的成员客户端的连接,这样可以避免未使用的客户端还处于连接状态。本发明实施例中,也可以是根据实际情况预保留指定的连接,而断开其它连接。
S615,所述代理服务器判断执行所述安全策略之后处于VNC访问连接状态的所有群组包含的成员客户端数量是否大于第二阈值。
具体实施例中,执行所述安全策略以对相同用户标识的客户端进行处理后,当前处于VNC访问连接状态的所有群组中所包含的成员客户端均为用户标识不同的成员客户端。判断上述成员客户端数量是否大于第二阈值,在本发明实施例中,可选择第二阈值为1,即当有至少两个或两个以上的客户端进行VNC访问连接时,则判定当前处于VNC访问连接状态的所有群组包含的成员客户端数量大于第二阈值,说明当前已有至少两个或两个以上的客户端进行VNC访问连接。
S616,所述代理服务器发送多用户连接提示信息。
具体实施例中,为了避免隐私泄露,所述代理服务器可以向执行安全策略之后处于VNC访问连接状态的所有群组包含的成员客户端发送多用户连接提示信息,以告知各用户当前的连接数量,避免用户在进行对虚拟机进行访问或操控时造成信息泄露。本实施例中,不局限于上述发送多用户连接提示信息,也可以当发现多个客户端同时与同一虚拟机进行VNC连接时,断开所有或指定部分客户端的VNC访问连接。
S617,所述客户端输出多用户连接提示信息。
具体实施例中,如接收到所述代理服务器发送多用户连接提示信息,可以听过客户端的显示屏输出多用户连接提示信息,以告知用户在进行VNC访问时避免隐私泄露。
图9所述的VNC远程访问系统中,由于随机数据具有随机、不可预计性,代理服务器通过对随机数据进行加密,相比较固定数据而言,数据被窃取的可能性更小,且代理服务器和客户端之间采用非对称的公私钥的方式对随机数据进行加解密,可以提高数据加解密过程中的可靠性,通过加解密方式对所述目标客户端进行鉴权,增强了VNC访问的安全性,并通过代理服务器对处于VNC连接状态的目标用户标识相同的客户端的数量进行关闭处理,以及对处于VNC连接状态的不同用户标识的客户端发送提醒消息,降低了信息泄露风险。
请参阅图7,图7是本发明实施例公开的一种代理服务器的模块化示意图。如图7所示,所述代理服务器可以包括获取单元701、加密处理单元702、接收单元703、比对单元704和连接建立单元705,其中:
获取单元701,用于当接收到目标客户端发送的携带目标用户标识的虚拟网络计算机VNC访问请求时,获取与所述目标用户标识相匹配的密钥。
具体实施例中,获取单元701用于当接收到目标客户端发送的携带目标用户标识的虚拟网络计算机VNC访问请求时,获取与所述目标用户标识相匹配的密钥。在目标客户端进行VNC访问请求前,Nova命令行或者图形界面发起API请求,要求返回虚拟计算机VNC的URL地址,所述URL地址包括IP地址、端口、token等相关用户信息(例如格式为:http://IP:PORT/vnc_auto.html?token=token_id),当目标客户端接收到所述URL地址时,由目标客户端通过所述URL地址发起VNC访问请求。其中,代理服务器的访问地与虚拟机的地址相同,当所述目标客户端发送携带目标用户标识的VNC访问请求给虚拟机时,获取单元701可以拦截所述VNC请求,并接收目标客户端发送的携带目标用户标识的VNC访问请求。
当获取单元701接收到目标客户端发送的携带目标用户标识的VNC访问请求时,所述获取单元701获取与所述目标用户标识相匹配的密钥,其中,所述目标用户标识是指在注册时由客户端根据用户名、密码信息等注册信息生成的可识别该用户的唯一识别码ID作为用户标识,每一个用户对应一个用户标识,所述密钥是指在用户注册过程中,由客户端将相关注册信息和用户标识发送给所述代理服务器,由获取单元701为每一个用户所生成的,可选的,所述密钥可以是对称密钥,也可以是非对称密钥如公私钥。获取单元701可根据目标用户标识查询与所述目标用户标识相匹配的密钥,并将所述密钥作为后续加解密的工具。
加密处理单元702,用于采用所述密钥对随机数据进行加密处理,生成加密数据并输出至所述目标客户端,以使所述目标客户端对所述加密数据进行解密处理获得解密数据。
具体实施例中,加密处理单元702用于采用所述密钥对随机数据进行加密处理,生成加密数据并输出至所述目标客户端,以使所述目标客户端对所述加密数据进行解密处理获得解密数据。由于token信息为明文,而Nova会将token信息存储于开放的缓存中,因此其很容易被其它非法用户所获得。为了防止URL地址被非法用户所使用,加密处理单元702在接收到所述URL地址后,需要对发送URL地址的目标客户端进行鉴权。在本发明实施例中,可以通过代理服务器和目标客户端之间增加加密方式以对目标客户端进行鉴权。加密方式中所采用的密钥可以为对称密钥,也可以为非对称密钥。当密钥为对称密钥时,即目标客户端的解密密钥和加密处理单元702的加密密钥为相同的密钥,采用对称加密可以快速对数据进行加解密,实现过程较为简单,但安全性较低。优选的,本发明实施例采用非对称加密的方式进行加解密,即所述目标客户端的密钥和加密处理单元702的密钥为一对密钥,其中,客户端获取私钥,加密处理单元702获取公钥。
为了进一步加强鉴权的可靠性,所述加密处理单元702可以随机获取数据作为预设进行加解密的数据。所述加密处理单元702可以采用所述密钥如公钥对随机数据进行加密处理,生成加密数据并输出至所述目标客户端。所述目标客户端接收到所述加密数据后,可以通过密钥如私钥对所述加密数据进行解密处理,获得解密数据。所述目标客户端和代理服务器的密钥可以通过身份标识来获取,不同的身份标识对应不同的密钥,如果通过加密处理单元702进行加密后,目标客户端能够成功进行解密,则说明所述目标客户端鉴权成功。例如:当代理服务器自动生成的随机数据为343434,通过密钥进行加密后,生成的密码串为aabbcc,所述目标客户端获取所述代理服务器的密码串并通过自身的密钥进行解密后,如获得的解密数据为343434,则说明所述目标客户端鉴权成功。
接收单元703,用于接收所述目标客户端发送的解密数据。
具体实施例中,当所述目标客户端发送解密数据给所述代理服务器,接收单元703用于接收所述目标客户端发送的解密数据。可选的,在接收所述目标客户端发送的解密数据时,可以通过对解密数据的位数进行比对,从而初步判断所接收到达解密数据是否正确,如果位数与所述随机数据不相同,则说明解密失败,可以直接拒绝接收所述目标客户端发送的解密数据。
在另一实施例中,所述代理服务器还包括第一禁止单元,所述第一禁止单元,用于如所述解密数据与任意一个历史解密数据相同,所述代理服务器禁止所述目标客户端与虚拟机建立VNC访问连接,所述历史解密数据由当前处于VNC访问连接状态的至少一个客户端所发送。
具体实施例中,处于VNC访问连接状态的至少一个客户端对应的历史解密数据会被存储于代理服务器中,当接收到的当前的解密数据与历史解密数据相同时,说明可能是目标客户端重复发送了解密数据或非法客户端窃取了解密数据并冒充当前的目标客户端进行VNC连接。因此,为了避免重放攻击和提高安全性,如所述解密数据与任意一个历史解密数据相同时,则所述第一禁止单元将禁止所述当前的目标客户端与虚拟机建立VNC访问连接。
比对单元704,用于将所述解密数据与所述随机数据进行比对。
具体实施例中,比对单元704将所述解密数据与所述随机数据进行比对,从而判断获得的解密数据是否正确,以对客户端进行鉴权。优选的,可以将所述随机数据设置为具有预设有效期的数据,以防止所述随机数据被非法窃取,例如所述随机数据为在10分钟内有效,如在有效期内比对单元704未能接收到所述解密数据,或所述解密数据与所述随机数据未能比对成功,则视为当前比对失效。
连接建立单元705,用于如比对一致,允许所述目标客户端与虚拟机建立VNC访问连接。
具体实施例中,连接建立单元705用于如比对一致,允许所述目标客户端与虚拟机建立VNC访问连接。如所述解密数据与所述随机数据比对一致,说明所述解密数据正确,即所述目标客户端的鉴权通过,代理服务器将允许所述目标客户端与虚拟机建立VNC访问连接。
在另一实施例中,所述代理服务器还包括第二禁止单元,所述第二禁止单元,用于如比对不一致,所述代理服务器禁止所述目标客户端与虚拟机建立VNC访问连接。
具体实施例中,如所述解密数据与所述随机数据比对不一致,则说明所述解密数据错误,所述目标服务器鉴权失败,所述第二禁止单元将禁止所述目标客户端与虚拟机建立VNC访问连接。
本发明实施例中,当代理服务器接收到目标客户端发送的携带目标用户标识的虚拟网络计算机VNC访问请求时,所述代理服务器获取与所述目标用户标识相匹配的密钥,并采用所述密钥对随机数据进行加密处理,生成加密数据并输出至所述目标客户端,以使所述目标客户端对所述加密数据进行解密处理获得解密数据,接收所述解密数据并与所述随机数据进行比对,如比对一致,所述代理服务器允许所述目标客户端与虚拟机建立VNC访问连接,通过代理服务器根据目标用户标识获取密钥并对随机数据进行加解密处理,从而对目标客户端进行身份验证,避免了非法客户端与虚拟机建立VNC访问连接,从而减小信息泄露风险,加强VNC访问的安全性。
请参阅图8,图8是本发明实施例公开的另一种代理服务器的模块化示意图。如图8所示,所述代理服务器可以包括获取单元701、加密处理单元702、接收单元703、比对单元704、连接建立单元705、密钥生成单元706、查询单元707和执行单元708,其中,所述获取单元701、接收单元703、比对单元704和连接建立单元705的具体解释参见图7,在本实施例中不在进行描述。
密钥生成单元706,用于当接收到目标客户端发送的携带目标用户标识的用户注册信息时,生成与所述目标用户标识相匹配的密钥,所述密钥包括公钥和私钥。
具体实施例中,密钥生成单元706可以为每个访问用户生成密钥,每个访问用户对应唯一的目标用户标识。当某一用户首次请求进行VNC访问连接时,可以通过客户端输入所述注册信息如注册名、密码等至代理服务器进行访问验证,验证成功后,客户端会自动为所述用户生成唯一的目标用户标识。所述目标用户标识可以通过所述目标客户端发送给密钥生成单元706。所述密钥生成单元706可以生成与所述目标用户标识相匹配的密钥,一个目标用户标识对应一个密钥。
加密方式中所采用的密钥可以为对称密钥,也可以为非对称密钥。当密钥为对称密钥时,即目标客户端的解密密钥和代理服务器的加密密钥为相同的密钥,采用对称加密可以快速对数据进行加解密,实现过程较为简单,但由于对称加密过程中,交互双方均采用同一个密钥进行加解密,而本发明实施例中,交互双方为多个客户端和同一个代理服务器,因此代理服务器一方会涉及到多个密钥,如果代理服务器和客户端采用相同的密钥,当代理服务器中的密钥被泄露给其它客户端时,其它客户端可以通过所述密钥对加密数据进行解密,存在一定的安全隐患。
本发明实施例中,优先选择非对称加密的方式进行加解密,即所述目标客户端的密钥和代理服务器的密钥为一对密钥,其中,客户端获取私钥,代理服务器的密钥生成单元706获取公钥,代理服务器可以公钥进行加密,并将所述加密数据发送给所述目标客户端,所述目标客户端采用私钥进行解密,采用公私钥的方式进行加解密,提高数据加解密的安全性。
加密处理单元702,用于采用所述密钥对随机数据进行加密处理,生成加密数据并输出至所述目标客户端,以使所述目标客户端对所述加密数据进行解密处理获得解密数据。
具体的,本发明实施例的所述加密处理单元702可以包括:加密子单元7021和编码子单元7022。
加密子单元7021,用于采用所述公钥对随机数据进行加密,生成加密数据。
具体实施例中,加密子单元7021可以通过公钥对预设定数据进行加密,其中,预设定数据可以是任意数据。由于随机数据具有随机、不可预计的,因此在本实施例中,采用所述随机数据作为与设定数据,相对于固定数据而言,可以防止数据的泄密。加密子单元7021可以采用所述公钥对随机数据进行加密,并获得加密数据,例如:当随机生成的数据为112233时,采用公钥加密后的数据变成XXYYZZ。
编码子单元7022,用于采用图形码规则对所述加密数据进行编码处理,获得图形码信息并输出,以使所述目标客户端扫描并解析所述图形码信息获得所述加密数据,并从所述代理服务器获取所述私钥后,采用所述私钥对所述加密数据进行解密处理获得解密数据。
具体实施例中,编码子单元7022采用图形码规则对所述加密数据进行编码处理,获得图形码信息并将所述图形码进行显示以供客户端的扫描。目标客户端可以通过扫码功能扫描图形码信息以获取到所述加密数据,并通过私钥对所述加密数据进行解密处理。如目标客户端所登录的注册名为首次登录时,则需要先查询代理服务器以从所述代理服务器中下载与所述目标用户标识相匹配的私钥,然后再通过所述加密数据进行解密处理,从而获得解密数据。本发明实施例中的图形码可以包括二维码、条形码等,通过图形码的扫描来获取加密数据,提高了数据获取的便捷性。
查询单元707,用于查询处于VNC访问连接状态的至少一个客户端的连接记录,所述连接记录包括:所关联的用户标识及连接建立时间。
具体实施例中,当所述虚拟机与多个客户端进行VNC访问连接时,所有的所述客户端均可以共享虚拟机的屏幕信息,且任意一个客户端都可以对虚拟机进行控制操作,而多客户端进行虚拟机的屏幕共享,可能会出现信息泄露的问题,例如,客户端A和客户端B连接于同一虚拟机中,当客户端A向虚拟机输入隐私信息时,此时客户端B可以通过共享屏幕获取到所述隐私信息,从而造成信息泄露。另一方面,由于用户的误操作或注册名被窃取,可能会出现在不同的客户端采用了同一注册名进行登录并访问VNC的情况。因此,针对上述情况,本发明实施例在确保目标客户端与所述虚拟机建立了VNC访问连接的安全性基础上,还需要对上述情况进行判断和处理,以减小信息泄露的风险。
为了解决上述问题,所述代理服务器需要获知当前的VNC访问连接情况,因此所述查询单元707查询处于VNC访问连接状态的至少一个客户端的连接记录,所述连接记录包括所关联的用户标识及连接时间。其中,所关联的用户标识用于识别不同的用户,连接时间可用于对各用户的登录时间进行比对,以获取到最近一次登录的时间。本发明实施例中,所述连接记录不局限于上述信息,还可以包括客户端个数、客户端访问个数阈值等。
执行单元708,用于根据所述至少一个客户端的连接记录执行安全策略。
具体实施例中,当所述代理服务器获取到所述处于VNC访问连接状态的至少一个客户端的连接记录时,所述执行单元708根据所述至少一个客户端的连接记录执行安全策略,以减小信息泄露的风险。
一个实施例中,所述执行子单元708包括归类子单元、判断子单元和执行子单元,其中,
所述归类子单元按照所关联的用户标识对所述至少一个客户端进行归类,获得至少一个群组,每一个群组中包含至少一个成员客户端,同一群组中所有成员客户端所关联的用户标识相同;
所述判断子单元判断所述至少一个群组中每一个群组包含的成员客户端数量是否大于第一阈值;
所述执行子单元,用于当所述至少一个群组中每一个群组包含的成员客户端数量大于第一阈值时,保持与大于第一阈值的目标群组中连接建立时间最晚的成员客户端之间的VNC访问连接,断开虚拟机与所述大于第一阈值的目标群组中其他成员客户端之间的VNC访问连接。
具体的,当所述代理服务器获取到处于VNC访问连接状态的至少一个客户端的连接记录,所述归类子单元按照所关联的用户标识对所述至少一个客户端进行归类,获得至少一个群组,每一个群组中包含至少一个成员客户端,同一群组中所有成员客户端所关联的用户标识相同,例如:
第一组:目标用户标识1—>客户端A、B和C;
第二组:目标用户标识2—>客户端D;
第三组:目标用户标识3—>客户端E;
第四组:目标用户标识4—>客户端F。
为了保证用户注册信息的安全,一般情况下,可将第一阈值设置为1,即在同一时间只允许同一注册名登录在一个客户端上。如将第一阈值设置为1时,所述第一组满足所述判断子单元判断上述群组中大于第一阈值的条件,即目标用户标识为1的用户登录到三个不同的客户端中。可选的,所述第一阈值可以根据用户的需要选择系统默认或根据实际需要通过用户端一侧发送控制指令给代理服务器,以进行调整。
当检测到同一个用户同时登录到多个客户端时,可以保留最近一次的连接,而将其它时间登录的客户端进行断开。即当所述判断子单元判断所述至少一个群组中每一个群组包含的成员客户端数量大于第一阈值时,所述代理服务器将保持所述虚拟机与大于第一阈值的目标群组中连接建立时间最晚的成员客户端之间的VNC访问连接,断开所述虚拟机与所述大于第一阈值的目标群组中其他成员客户端之间的VNC访问连接。在对连接建立时间最晚的成员客户端进行判断时,可以根据连接建立时间来进行判断,例如将所述超过第一阈值的第一组的连接建立时间进行排序,然后将时间最晚的成员客户端的连接保留,同时断开其它的成员客户端的连接,这样可以避免未使用的客户端还处于连接状态。本发明实施例中,也可以是根据实际情况预保留指定的连接,而断开其它连接。
在另一实施例中,所述代理服务器还包括数量判断单元和发送单元,其中,
所述数量判断单元用于判断执行所述安全策略之后处于VNC访问连接状态的所有群组包含的成员客户端数量是否大于第二阈值;
所述发送单元,用于当执行所述安全策略之后处于VNC访问连接状态的所有群组包含的成员客户端数量大于第二阈值时,向执行安全策略之后处于VNC访问连接状态的所有群组包含的成员客户端发送多用户连接提示信息。
具体的,执行所述安全策略以对相同用户标识的客户端进行处理后,当前处于VNC访问连接状态的所有群组中所包含的成员客户端均为用户标识不同的成员客户端。所述数量判断单元判断上述成员客户端数量是否大于第二阈值,在本发明实施例中,可选择第二阈值为1,即当有至少两个或两个以上的客户端进行VNC访问连接时,则判定当前处于VNC访问连接状态的所有群组包含的成员客户端数量大于第二阈值,说明当前已有至少两个或两个以上的客户端进行VNC访问连接。为了避免隐私泄露,所述发送单元可以向执行安全策略之后处于VNC访问连接状态的所有群组包含的成员客户端发送多用户连接提示信息,以告知各用户当前的连接数量,避免用户在进行对虚拟机进行访问或操控时造成信息泄露。本实施例中,不局限于上述发送多用户连接提示信息,也可以当发现多个客户端同时与同一虚拟机进行VNC连接时,断开所有或指定部分客户端的VNC访问连接。
上述实施例中,通过数据加解密的方式对目标客户端进行鉴权,提高了VNC访问连接的可靠性,并对处于VNC连接状态的目标用户标识相同的客户端的数量进行关闭处理,以及对处于VNC连接状态的不同用户标识的客户端发送提醒消息,降低了信息泄露风险。
下面进一步对本发明实施例中涉及的代理服务器进行描述。请参阅图9,图9是本发明实施例公开的一种代理服务器的结构示意图。如图9所示,所述代理服务器可以包括:至少一个处理器1001,例如CPU,至少一个网络接口1002,存储器1003,至少一个通信总线1004。通信总线1004用于实现这些组件之间的连接通信。其中,网络接口1002包括无线接口和有线接口,可以为代理服务器提供网络接口功能,可通过RFB通信协议与客户端、虚拟机等设备进行通信。存储器1003可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。存储器1003可选的可以包含至少一个位于远离前述处理器1001的存储装置。
在一些实施方式中,存储器1003存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:
操作系统10031,包含各种系统程序,用于实现各种基础业务以及处理基于硬件的任务;
应用程序10032,包含设备控制服务程序、设备识别服务程序等各种应用程序,用于实现各种应用业务。
具体地,处理器1001用于调用存储器1003中存储的程序,执行以下操作:
当接收到目标客户端发送的携带目标用户标识的虚拟网络计算机VNC访问请求时,获取与所述目标用户标识相匹配的密钥;
采用所述密钥对随机数据进行加密处理,生成加密数据并输出至所述目标客户端,以使所述目标客户端对所述加密数据进行解密处理获得解密数据;
接收所述目标客户端发送的解密数据;
将所述解密数据与所述随机数据进行比对;
如比对一致,允许所述目标客户端与虚拟机建立VNC访问连接。
在一个发明实施例中,所述当接收到目标客户端发送的携带目标用户标识的VNC访问请求时,获取与所述目标用户标识相匹配的密钥之前,还执行以下步骤:
当接收到目标客户端发送的携带目标用户标识的用户注册信息时,生成与所述目标用户标识相匹配的密钥,所述密钥包括公钥和私钥。
在一个实施例中,所述执行采用所述密钥对随机数据进行加密处理,生成加密数据并输出至所述目标客户端,以使所述目标客户端对所述加密数据进行解密处理获得解密数据时,具体执行以下步骤:
采用所述公钥对随机数据进行加密,生成加密数据;
采用图形码规则对所述加密数据进行编码处理,获得图形码信息并输出,以使所述目标客户端扫描并解析所述图形码信息获得所述加密数据,并从所述代理服务器获取所述私钥后,采用所述私钥对所述加密数据进行解密处理获得解密数据。
在一个实施例中,所述接收所述目标客户端发送的解密数据之后,还执行以下步骤:
如所述解密数据与任意一个历史解密数据相同,禁止所述目标客户端与虚拟机建立VNC访问连接,所述历史解密数据由当前处于VNC访问连接状态的至少一个客户端所发送。
在一个实施例中,所述将所述解密数据与所述随机数据进行比对之后,还执行以下步骤:
如比对不一致,禁止所述目标客户端与虚拟机建立VNC访问连接。
在一个实施例中,还执行以下步骤:
查询处于VNC访问连接状态的至少一个客户端的连接记录,所述连接记录包括:所关联的用户标识及连接建立时间;
所述代理服务器根据所述至少一个客户端的连接记录执行安全策略。
查询处于VNC访问连接状态的至少一个客户端的连接记录,所述连接记录包括:所关联的用户标识及连接建立时间;
在一个实施例中,所述执行根据所述至少一个客户端的连接记录执行安全策略步骤,具体执行以下步骤:
所述代理服务器按照所关联的用户标识对所述至少一个客户端进行归类,获得至少一个群组,每一个群组中包含至少一个成员客户端,同一群组中所有成员客户端所关联的用户标识相同;
所述代理服务器判断所述至少一个群组中每一个群组包含的成员客户端数量是否大于第一阈值;
若是,所述代理服务器保持所述虚拟机与大于第一阈值的目标群组中连接建立时间最晚的成员客户端之间的VNC访问连接,断开所述虚拟机与所述大于第一阈值的目标群组中其他成员客户端之间的VNC访问连接。
在一个实施例中,所述代理服务器根据所述至少一个客户端的连接记录执行安全策略之后,还执行以下步骤:
所述代理服务器判断执行所述安全策略之后处于VNC访问连接状态的所有群组包含的成员客户端数量是否大于第二阈值;
若是,所述代理服务器向执行安全策略之后处于VNC访问连接状态的所有群组包含的成员客户端发送多用户连接提示信息。
在本发明实施例中,通过数据加解密的方式对目标客户端进行鉴权,提高了VNC访问连接的可靠性,并对处于VNC连接状态的目标用户标识相同的客户端的数量进行关闭处理,以及对处于VNC连接状态的不同用户标识的客户端发送提醒消息,降低了信息泄露风险。
请参阅图10,图10是本发明实施例公开的一种客户端的模块化示意图。如图8所示,所述代理服务器可以包括发送单元101、解密处理单元102、比对单元103和连接建立单元104。
发送单元101,用于向代理服务器发送携带目标用户标识的虚拟网络计算机VNC访问请求,以使所述代理服务器获取与所述目标用户标识相匹配的密钥,并采用所述密钥对随机数据进行加密处理,生成和输出加密数据。
具体实施例中,目标客户端进行VNC访问请求前,可以通过Nova命令行或者图形界面发起API请求,要求返回虚拟计算机VNC的URL地址,所述URL地址包括IP地址、端口、token等相关用户信息(例如格式为:http://IP:PORT/vnc_auto.html?token=token_id)),当目标客户端接收到所述URL地址时,由目标客户端通过所述URL地址发起VNC访问请求,其中,所述访问请求还携带目标用户标识。当发送单元101发送携带目标用户标识的VNC访问请求给虚拟机时,代理服务器可以拦截所述VNC请求,并接收发送单元101发送的携带目标用户标识的VNC访问请求,所述代理服务器可以根据所述VNC访问请求的目标用户标识,查询并获取到与所述用户标识相匹配的密钥,然后采用所述密钥对随机数据进行加密处理,生成和输出加密数据。
在另一实施例中,所述发送单元还用于向代理服务器发送携带有目标用户标识的用户注册信息,以使所述代理服务器根据所述用户注册信息生成与所述目标用户标识相匹配的密钥,所述密钥包括公钥和私钥。
解密处理单元102,用于对所述代理服务器输出的加密数据进行解密处理获得解密数据。
具体实施例中,当获取到所述代理服务器输出的加密数据后,解密处理单元102根据所述加密数据进行解密处理,以获得解密数据。本发明实施例中,所述目标客户端可以根据密钥如私钥进行解密处理。当通过密钥的方式进行解密时,所述目标客户端可以先根据目标用户标识查询是否存在于所述目标用户标识相匹配的密钥,如存在,解密处理单元102可以直接通过所述密钥进行解密,如不存在,可以通过向所述代理服务器发送查询请求以获取或加载所述密钥后,解密处理单元102采用所述密钥进行解密。
具体的,所述解密处理单元102可以包括扫描子单元和解密处理子单元,所述扫描子单元,用于扫描并解析所述图形码信息,获得所述加密数据;所述解密处理子单元用于从所述代理服务器获取所述私钥,并采用所述私钥对所述加密数据进行解密处理获得解密数据。
扫描子单元可以通过扫码功能扫描图形码信息以获取到所述加密数据,解密处理子单元可以通过私钥对所述加密数据进行解密处理。如目标客户端所登录的注册名为首次登录时,则需要先查询代理服务器以从所述代理服务器中下载与所述目标用户标识相匹配的私钥,然后再通过解密处理子单元对所述加密数据进行解密处理,从而获得解密数据。本发明实施例中的图形码可以包括二维码、条形码等,通过图形码的扫描来获取加密数据,提高了数据获取的便捷性。
比对单元103,用于向所述代理服务器发送所述解密数据,以使所述代理服务器将所述解密数据与所述随机数据进行比对。
具体实施例中,所述比对单元103将解密数据发送给所述代理服务器,以使所述所述代理服务器将所述解密数据与所述随机数据进行比对,从而判断所述目标客户端是否能够正确进行解密,以对目标客户进行鉴权。
连接建立单元104,如比对一致,允许所述目标客户端与虚拟机建立VNC访问连接。
具体实施例中,如果所述解密数据与所述随机数据比对一致,则说明所述目标客户端鉴权成功,所述连接建立单元104允许所述目标客户端与虚拟机建立VNC访问连接。
在另一实施例中,所述客户端还包括输出单元,可用于当接收到所述代理服务器发送的多用户连接提示信息,输出所述多用户连接提示信息。当执行所述安全策略之后处于VNC访问连接状态的所有群组包含的成员客户端数量大于第二阈值,代理服务器会发送多用户连接提示信息,所述输出单元接收到所述信息后,可以将所述信息进行输出以提醒用户注意保护隐私。
上述发明实施例中,所述客户端通过向代理服务器发送携带目标用户标识的VNC访问请求,并对所述代理服务器发送的加密数据进行解码以对所述目标客户端进行鉴权,避免了非法客户端与虚拟机建立VNC访问连接,从而减小信息泄露风险,加强了VNC访问的安全性。
下面进一步对本发明实施例中涉及的客户端进行描述。请参阅图11,图11是本发明实施例公开的一种客户端的结构示意图。如图11所示,所述客户端可以包括:至少一个处理器1001,例如CPU,至少一个网络接口1002,存储器1003,至少一个通信总线1004、交互接口2005。通信总线1004用于实现这些组件之间的连接通信。其中,网络接口1002包括无线接口和有线接口。存储器1003可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。存储器1003可选的可以包含至少一个位于远离前述处理器1001的存储装置。
在一些实施方式中,存储器1003存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:
操作系统10031,包含各种系统程序,用于实现各种基础业务以及处理基于硬件的任务;
应用程序10032,包含设备控制服务程序、设备识别服务程序等各种应用程序,用于实现各种应用业务。
在一些实施方式中,交互接口2005可用于信息输入和输出,可以包括显示器20051和键盘20052。
具体地,处理器1001用于调用存储器1003中存储的程序,执行以下操作:
向代理服务器发送携带目标用户标识的虚拟网络计算机VNC访问请求,以使所述代理服务器获取与所述目标用户标识相匹配的密钥,并采用所述密钥对随机数据进行加密处理,生成和输出加密数据;
对所述代理服务器输出的加密数据进行解密处理获得解密数据;
向所述代理服务器发送所述解密数据,以使所述代理服务器将所述解密数据与所述随机数据进行比对;
如比对一致,所述目标客户端与虚拟机建立VNC访问连接以对所述虚拟机进行VNC访问。
在一个实施例中,所述向代理服务器发送携带目标用户标识的VNC访问请求之前,还执行以下步骤:
向代理服务器发送携带有目标用户标识的用户注册信息,以使所述代理服务器根据所述用户注册信息生成与所述目标用户标识相匹配的密钥,所述密钥包括公钥和私钥。
在一个实施例中,所述执行对所述代理服务器输出的加密数据进行解密处理获得解密数据时,具体执行以下步骤:
所述目标客户端扫描并解析所述图形码信息,获得所述加密数据;
所述目标客户端从所述代理服务器获取所述私钥,并采用所述私钥对所述加密数据进行解密处理获得解密数据。
在一个实施例中,所述执行如比对一致,所述目标客户端与虚拟机建立VNC访问连接以对所述虚拟机进行VNC访问之后,还执行以下步骤:
当所述目标客户端接收到所述代理服务器发送的多用户连接提示信息,输出所述多用户连接提示信息。
在本发明实施例中,通过数据加解密的方式对目标客户端进行鉴权,提高了VNC访问连接的可靠性,并对处于VNC连接状态的目标用户标识相同的客户端的数量进行关闭处理,以及对处于VNC连接状态的不同用户标识的客户端发送提醒消息,降低了信息泄露风险。
请参见图12,图12是本发明实施例公开的VNC远程访问系统的架构示意图,用于执行本发明实施例公开的远程访问方法。如图12所示,所述VNC远程访问系统包括客户端、代理服务器和虚拟机。其中:
客户端用于实现VNC访问请求的发送、数据解密和与虚拟机进行VNC访问连接;
代理服务器(vncproxy)用于实现对接收到的客户端访问请求进行拦截、数据加密以及管理客户端对虚拟机的VNC访问连接权限,并将虚拟机桌面的内容镜像到远程客户端中。
一个实施例中,目标客户端用于向代理服务器发送携带目标用户标识的虚拟网络计算机VNC访问请求;
当代理服务器接收到目标客户端发送的携带目标用户标识的虚拟网络计算机VNC访问请求时,所述代理服务器用于获取与所述目标用户标识相匹配的密钥,并采用所述密钥对随机数据进行加密处理,生成加密数据并输出至所述目标客户端;
所述目标客户端还用于对所述代理服务器输出的加密数据进行解密处理获得解密数据,并向所述代理服务器发送所述解密数据;
所述代理服务器还用于接收所述目标客户端发送的解密数据,并将所述解密数据与所述随机数据进行比对;
如比对一致,所述代理服务器还用于允许所述目标客户端与虚拟机建立VNC访问连接;
所述目标客户端还用于与虚拟机建立VNC访问连接以对所述虚拟机进行VNC访问。
一个实施例中,上述目标客户端还用于向代理服务器发送携带有目标用户标识的用户注册信息;当代理服务器接收到目标客户端发送的携带目标用户标识的用户注册信息时,所述代理服务器生成与所述目标用户标识相匹配的密钥,所述密钥包括公钥和私钥。
可选的,所述代理服务器采用所述密钥对随机数据进行加密处理,生成加密数据并输出至所述目标客户端,以使所述目标客户端对所述加密数据进行解密处理获得解密数据,包括:
所述代理服务器用于采用所述公钥对随机数据进行加密,生成加密数据,并采用图形码规则对所述加密数据进行编码处理,获得图形码信息并输出;
所述目标客户端用于扫描并解析所述图形码信息,获得所述加密数据,可从所述代理服务器获取所述私钥,并采用所述私钥对所述加密数据进行解密处理获得解密数据。
一个实施例中,如所述解密数据与任意一个历史解密数据相同,所述代理服务器还用于禁止所述目标客户端与虚拟机建立VNC访问连接,所述历史解密数据由当前处于VNC访问连接状态的至少一个客户端所发送。
一个实施例中,如所述解密数据与所述随机数据比对不一致,所述代理服务器还用于禁止所述目标客户端与虚拟机建立VNC访问连接。
一个实施例中,所述代理服务器还用于查询处于VNC访问连接状态的至少一个客户端的连接记录,所述连接记录包括:所关联的用户标识及连接建立时间;所述代理服务器还用于根据所述至少一个客户端的连接记录执行安全策略。
可选的,所述代理服务器根据所述至少一个客户端的连接记录执行安全策略,包括:
所述代理服务器用于按照所关联的用户标识对所述至少一个客户端进行归类,获得至少一个群组,每一个群组中包含至少一个成员客户端,同一群组中所有成员客户端所关联的用户标识相同;
所述代理服务器用于判断所述至少一个群组中每一个群组包含的成员客户端数量是否大于第一阈值;
若是,所述代理服务器用于保持所述虚拟机与大于第一阈值的目标群组中连接建立时间最晚的成员客户端之间的VNC访问连接,断开所述虚拟机与所述大于第一阈值的目标群组中其他成员客户端之间的VNC访问连接。
在一个实施例中,所述代理服务器还用于判断执行所述安全策略之后处于VNC访问连接状态的所有群组包含的成员客户端数量是否大于第二阈值;
若是,所述代理服务器还用于向执行安全策略之后处于VNC访问连接状态的所有群组包含的成员客户端发送多用户连接提示信息;
当所述目标客户端接收到所述代理服务器发送的多用户连接提示信息,所述目标客户端还用于输出所述多用户连接提示信息。
由于随机数据具有随机、不可预计性,代理服务器通过对随机数据进行加密,相比较固定数据而言,数据被窃取的可能性更小,且采用非对称的公私钥的方式对随机数据进行加解密,可以提高数据加解密过程中的可靠性,通过加解密方式对所述目标客户端进行鉴权,增强了VNC访问的安全性,并通过代理服务器对处于VNC连接状态的目标用户标识相同的客户端的数量进行关闭处理,以及对处于VNC连接状态的不同用户标识的客户端发送提醒消息,降低了信息泄露风险。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-OnlyMemory,ROM)、随机存取器(RandomAccessMemory,RAM)、磁盘或光盘等。
以上对本发明实施例公开的一种数据业务计费方法、PCEF设备、OCS及系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (24)

1.一种远程访问方法,其特征在于,包括:
当代理服务器接收到目标客户端发送的携带目标用户标识的虚拟网络计算机VNC访问请求时,所述代理服务器获取与所述目标用户标识相匹配的密钥;
所述代理服务器采用所述密钥对随机数据进行加密处理,生成加密数据并输出至所述目标客户端,以使所述目标客户端对所述加密数据进行解密处理获得解密数据;
所述代理服务器接收所述目标客户端发送的解密数据;
所述代理服务器将所述解密数据与所述随机数据进行比对;
如比对一致,所述代理服务器允许所述目标客户端与虚拟机建立VNC访问连接。
2.根据权利要求1所述的方法,其特征在于,所述当代理服务器接收到目标客户端发送的携带目标用户标识的VNC访问请求时,所述代理服务器获取与所述目标用户标识相匹配的密钥之前,还包括:
当代理服务器接收到目标客户端发送的携带目标用户标识的用户注册信息时,所述代理服务器生成与所述目标用户标识相匹配的密钥,所述密钥包括公钥和私钥。
3.根据权利要求2所述的方法,其特征在于,所述代理服务器采用所述密钥对随机数据进行加密处理,生成加密数据并输出至所述目标客户端,以使所述目标客户端对所述加密数据进行解密处理获得解密数据,包括:
所述代理服务器采用所述公钥对随机数据进行加密,生成加密数据;
所述代理服务器采用图形码规则对所述加密数据进行编码处理,获得图形码信息并输出,以使所述目标客户端扫描并解析所述图形码信息获得所述加密数据,并从所述代理服务器获取所述私钥后,采用所述私钥对所述加密数据进行解密处理获得解密数据。
4.根据权利要求1-3任意一项所述的方法,其特征在于,所述代理服务器接收所述目标客户端发送的解密数据之后,还包括:
如所述解密数据与任意一个历史解密数据相同,所述代理服务器禁止所述目标客户端与虚拟机建立VNC访问连接,所述历史解密数据由当前处于VNC访问连接状态的至少一个客户端所发送。
5.根据权利要求4所述的方法,其特征在于,所述代理服务器将所述解密数据与所述随机数据进行比对之后,还包括:
如比对不一致,所述代理服务器禁止所述目标客户端与虚拟机建立VNC访问连接。
6.根据权利要求1-3任意一项所述的方法,其特征在于,还包括:
所述代理服务器查询处于VNC访问连接状态的至少一个客户端的连接记录,所述连接记录包括:所关联的用户标识及连接建立时间;
所述代理服务器根据所述至少一个客户端的连接记录执行安全策略。
7.根据权利要求6所述的方法,其特征在于,所述代理服务器根据所述至少一个客户端的连接记录执行安全策略,包括:
所述代理服务器按照所关联的用户标识对所述至少一个客户端进行归类,获得至少一个群组,每一个群组中包含至少一个成员客户端,同一群组中所有成员客户端所关联的用户标识相同;
所述代理服务器判断所述至少一个群组中每一个群组包含的成员客户端数量是否大于第一阈值;
若是,所述代理服务器保持所述虚拟机与大于第一阈值的目标群组中连接建立时间最晚的成员客户端之间的VNC访问连接,断开所述虚拟机与所述大于第一阈值的目标群组中其他成员客户端之间的VNC访问连接。
8.根据权利要求7所述的方法,其特征在于,所述代理服务器根据所述至少一个客户端的连接记录执行安全策略之后,还包括:
所述代理服务器判断执行所述安全策略之后处于VNC访问连接状态的所有群组包含的成员客户端数量是否大于第二阈值;
若是,所述代理服务器向执行安全策略之后处于VNC访问连接状态的所有群组包含的成员客户端发送多用户连接提示信息。
9.一种远程访问方法,其特征在于,包括:
目标客户端向代理服务器发送携带目标用户标识的虚拟网络计算机VNC访问请求,以使所述代理服务器获取与所述目标用户标识相匹配的密钥,并采用所述密钥对随机数据进行加密处理,生成和输出加密数据;
所述目标客户端对所述代理服务器输出的加密数据进行解密处理获得解密数据;
所述目标客户端向所述代理服务器发送所述解密数据,以使所述代理服务器将所述解密数据与所述随机数据进行比对;
如比对一致,所述目标客户端与虚拟机建立VNC访问连接以对所述虚拟机进行VNC访问。
10.根据权利要求9所述的方法,其特征在于,所述目标客户端向代理服务器发送携带目标用户标识的VNC访问请求之前,还包括:
目标客户端向代理服务器发送携带有目标用户标识的用户注册信息,以使所述代理服务器根据所述用户注册信息生成与所述目标用户标识相匹配的密钥,所述密钥包括公钥和私钥。
11.根据权利要求10所述的方法,其特征在于,所述加密数据为所述代理服务器采用所述公钥对随机数据进行加密获得,且所述代理服务器采用图形码规则对所述加密数据进行编码处理,获得图形码信息并输出;
所述目标客户端对所述代理服务器输出的加密数据进行解密处理获得解密数据,包括:
所述目标客户端扫描并解析所述图形码信息,获得所述加密数据;
所述目标客户端从所述代理服务器获取所述私钥,并采用所述私钥对所述加密数据进行解密处理获得解密数据。
12.根据权利要求9-11任意一项所述的方法,其特征在于,所述如比对一致,所述目标客户端与虚拟机建立VNC访问连接以对所述虚拟机进行VNC访问之后,还包括:
当所述目标客户端接收到所述代理服务器发送的多用户连接提示信息,输出所述多用户连接提示信息。
13.一种代理服务器,其特征在于,包括:
获取单元,用于当接收到目标客户端发送的携带目标用户标识的虚拟网络计算机VNC访问请求时,获取与所述目标用户标识相匹配的密钥;
加密处理单元,用于采用所述密钥对随机数据进行加密处理,生成加密数据并输出至所述目标客户端,以使所述目标客户端对所述加密数据进行解密处理获得解密数据;
接收单元,用于接收所述目标客户端发送的解密数据;
比对单元,用于将所述解密数据与所述随机数据进行比对;
连接建立单元,用于如比对一致,允许所述目标客户端与虚拟机建立VNC访问连接。
14.根据权利要求13所述的代理服务器,其特征在于,还包括:
密钥生成单元,用于当接收到目标客户端发送的携带目标用户标识的用户注册信息时,生成与所述目标用户标识相匹配的密钥,所述密钥包括公钥和私钥。
15.根据权利要求14所述的代理服务器,其特征在于,所述加密处理单元包括:
加密子单元,用于采用所述公钥对随机数据进行加密,生成加密数据;
编码子单元,用于采用图形码规则对所述加密数据进行编码处理,获得图形码信息并输出,以使所述目标客户端扫描并解析所述图形码信息获得所述加密数据,并从所述代理服务器获取所述私钥后,采用所述私钥对所述加密数据进行解密处理获得解密数据。
16.根据权利要求13-15任意一项所述的代理服务器,其特征在于,还包括:
第一禁止单元,用于如所述解密数据与任意一个历史解密数据相同,禁止所述目标客户端与虚拟机建立VNC访问连接,所述历史解密数据由当前处于VNC访问连接状态的至少一个客户端所发送。
17.根据权利要求16所述的代理服务器,其特征在于,还包括:
第二禁止单元,用于如比对不一致,禁止所述目标客户端与虚拟机建立VNC访问连接。
18.根据权利要求13-15任意一项所述的代理服务器,其特征在于,还包括:
查询单元,用于查询处于VNC访问连接状态的至少一个客户端的连接记录,所述连接记录包括:所关联的用户标识及连接建立时间;
执行单元,用于根据所述至少一个客户端的连接记录执行安全策略。
19.根据权利要求18所述的代理服务器,其特征在于,所述执行单元包括:
归类子单元,用于按照所关联的用户标识对所述至少一个客户端进行归类,获得至少一个群组,每一个群组中包含至少一个成员客户端,同一群组中所有成员客户端所关联的用户标识相同;
判断子单元,用于判断所述至少一个群组中每一个群组包含的成员客户端数量是否大于第一阈值;
执行子单元,用于当所述至少一个群组中每一个群组包含的成员客户端数量大于第一阈值时,保持与大于第一阈值的目标群组中连接建立时间最晚的成员客户端之间的VNC访问连接,断开虚拟机与所述大于第一阈值的目标群组中其他成员客户端之间的VNC访问连接。
20.根据权利要求19所述的代理服务器,其特征在于,还包括:
数量判断单元,用于判断执行所述安全策略之后处于VNC访问连接状态的所有群组包含的成员客户端数量是否大于第二阈值;
发送单元,用于当执行所述安全策略之后处于VNC访问连接状态的所有群组包含的成员客户端数量大于第二阈值时,向执行安全策略之后处于VNC访问连接状态的所有群组包含的成员客户端发送多用户连接提示信息。
21.一种客户端,其特征在于,包括:
发送单元,用于向代理服务器发送携带目标用户标识的虚拟网络计算机VNC访问请求,以使所述代理服务器获取与所述目标用户标识相匹配的密钥,并采用所述密钥对随机数据进行加密处理,生成和输出加密数据;
解密处理单元,用于对所述代理服务器输出的加密数据进行解密处理获得解密数据;
比对单元,用于向所述代理服务器发送所述解密数据,以使所述代理服务器将所述解密数据与所述随机数据进行比对;
连接建立单元,用于如比对一致,与虚拟机建立VNC访问连接以对所述虚拟机进行VNC访问。
22.根据权利要求21所述的客户端,其特征在于,还包括:
所述发送单元,还用于向代理服务器发送携带有目标用户标识的用户注册信息,以使所述代理服务器根据所述用户注册信息生成与所述目标用户标识相匹配的密钥,所述密钥包括公钥和私钥。
23.根据权利要求22所述的客户端,其特征在于,所述加密数据为所述代理服务器采用所述公钥对随机数据进行加密获得,且所述代理服务器采用图形码规则对所述加密数据进行编码处理,获得图形码信息并输出;
所述解密处理单元包括:
扫描子单元,用于扫描并解析所述图形码信息,获得所述加密数据;
解密处理子单元,用于从所述代理服务器获取所述私钥,并采用所述私钥对所述加密数据进行解密处理获得解密数据。
24.根据权利要求21-23任意一项所述的客户端,其特征在于,还包括:
输出单元,用于当接收到所述代理服务器发送的多用户连接提示信息,输出所述多用户连接提示信息。
CN201510657500.7A 2015-10-12 2015-10-12 一种远程访问方法、代理服务器及客户端 Active CN105376216B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510657500.7A CN105376216B (zh) 2015-10-12 2015-10-12 一种远程访问方法、代理服务器及客户端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510657500.7A CN105376216B (zh) 2015-10-12 2015-10-12 一种远程访问方法、代理服务器及客户端

Publications (2)

Publication Number Publication Date
CN105376216A true CN105376216A (zh) 2016-03-02
CN105376216B CN105376216B (zh) 2019-04-26

Family

ID=55378023

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510657500.7A Active CN105376216B (zh) 2015-10-12 2015-10-12 一种远程访问方法、代理服务器及客户端

Country Status (1)

Country Link
CN (1) CN105376216B (zh)

Cited By (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105701421A (zh) * 2016-03-09 2016-06-22 成都爆米花信息技术有限公司 云盘数据修改方法
CN106230587A (zh) * 2016-08-05 2016-12-14 浪潮软件股份有限公司 一种长连接防重放攻击的方法
CN106302504A (zh) * 2016-08-31 2017-01-04 浪潮电子信息产业股份有限公司 一种Xenserver基于安全的vnc实现方法
CN106534223A (zh) * 2017-01-22 2017-03-22 上海新炬网络信息技术有限公司 基于密钥算法和日志审计的Openstack访问控制方法
CN106775950A (zh) * 2016-12-29 2017-05-31 郑州云海信息技术有限公司 一种虚拟机远程访问方法和装置
CN106936844A (zh) * 2017-03-31 2017-07-07 深圳市科迈爱康科技有限公司 远程访问服务的数据交互方法和系统
CN107135069A (zh) * 2017-04-24 2017-09-05 努比亚技术有限公司 远程协助控制方法及系统
CN107733936A (zh) * 2017-12-04 2018-02-23 国家电网公司 一种移动数据的加密方法
CN107819579A (zh) * 2017-12-13 2018-03-20 西安Tcl软件开发有限公司 一种用户请求的处理方法、服务器及计算机可读存储介质
CN107864136A (zh) * 2017-11-08 2018-03-30 北京酷我科技有限公司 一种防止系统短信服务被盗用的方法
CN107918731A (zh) * 2016-10-11 2018-04-17 百度在线网络技术(北京)有限公司 用于控制对开放接口进行访问的权限的方法和装置
CN107959701A (zh) * 2016-10-17 2018-04-24 中兴通讯股份有限公司 数据共享方法、云终端、云桌面虚拟机及中转代理服务器
CN108092937A (zh) * 2016-11-23 2018-05-29 厦门雅迅网络股份有限公司 防止Web系统越权访问的方法及系统
CN108156144A (zh) * 2017-12-18 2018-06-12 北京信安世纪科技股份有限公司 一种访问认证方法及对应装置
CN108363598A (zh) * 2018-01-04 2018-08-03 上海奕瑞光电子科技股份有限公司 虚拟远程桌面访问的管理方法/系统、介质及电子设备
CN109451043A (zh) * 2018-12-12 2019-03-08 熵加网络科技(北京)有限公司 一种通过代理访问来保护用户隐私的服务器访问方法
WO2019080010A1 (zh) * 2017-10-25 2019-05-02 深圳市互盟科技股份有限公司 基于云计算的虚拟机控制系统及其方法
TWI672606B (zh) * 2018-08-28 2019-09-21 國立暨南國際大學 基於認證和密鑰協商協議之授權認證方法
CN110311920A (zh) * 2019-07-10 2019-10-08 中国联合网络通信集团有限公司 救援方法及救援系统
CN110502315A (zh) * 2019-08-26 2019-11-26 浪潮云信息技术有限公司 一种远程访问物理机的方法、装置及系统
CN110995807A (zh) * 2019-11-24 2020-04-10 苏州浪潮智能科技有限公司 直接打开服务器kvm的方法、装置、设备及存储介质
CN111158857A (zh) * 2019-12-24 2020-05-15 深信服科技股份有限公司 数据加密方法、装置、设备及存储介质
CN112118206A (zh) * 2019-06-19 2020-12-22 贵州白山云科技股份有限公司 一种解密方法、装置、系统、介质及设备
CN112309556A (zh) * 2020-11-12 2021-02-02 安图实验仪器(郑州)有限公司 医学实验室集中管控方法
CN112532568A (zh) * 2019-09-19 2021-03-19 马上消费金融股份有限公司 一种交互方法、装置、设备及计算机可读存储介质
CN112788374A (zh) * 2019-11-05 2021-05-11 腾讯科技(深圳)有限公司 一种信息处理方法、装置、设备及存储介质
CN113163396A (zh) * 2021-03-23 2021-07-23 傲普(上海)新能源有限公司 一种基于b/s架构能源管理系统中的数据安全系统
CN113938474A (zh) * 2021-10-13 2022-01-14 网易(杭州)网络有限公司 一种虚拟机访问方法、装置、电子设备和存储介质
CN114827233A (zh) * 2022-04-27 2022-07-29 平安普惠企业管理有限公司 基于双活集群的交互连接方法、装置、计算机设备及介质
CN115134344A (zh) * 2022-06-29 2022-09-30 济南浪潮数据技术有限公司 一种虚拟机控制台的控制方法及组件
CN117728958A (zh) * 2024-02-05 2024-03-19 浙江大华技术股份有限公司 一种通信方法、装置和系统
CN111158857B (zh) * 2019-12-24 2024-05-24 深信服科技股份有限公司 数据加密方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110191252A1 (en) * 2010-02-02 2011-08-04 Xia Dai Secured Point-Of-Sale Transaction System
CN102196003A (zh) * 2010-03-12 2011-09-21 新奥特(北京)视频技术有限公司 一种监控系统的远程控制方法及装置
CN103200215A (zh) * 2012-01-08 2013-07-10 佳都新太科技股份有限公司 一种在https上实现XenServer虚拟机远程控制的方法
CN103973781A (zh) * 2014-04-29 2014-08-06 上海上讯信息技术股份有限公司 一种基于代理服务器的屏幕监控方法及其系统
CN104468491A (zh) * 2013-09-25 2015-03-25 无锡华御信息技术有限公司 一种基于安全信道的虚拟桌面系统及方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110191252A1 (en) * 2010-02-02 2011-08-04 Xia Dai Secured Point-Of-Sale Transaction System
CN102196003A (zh) * 2010-03-12 2011-09-21 新奥特(北京)视频技术有限公司 一种监控系统的远程控制方法及装置
CN103200215A (zh) * 2012-01-08 2013-07-10 佳都新太科技股份有限公司 一种在https上实现XenServer虚拟机远程控制的方法
CN104468491A (zh) * 2013-09-25 2015-03-25 无锡华御信息技术有限公司 一种基于安全信道的虚拟桌面系统及方法
CN103973781A (zh) * 2014-04-29 2014-08-06 上海上讯信息技术股份有限公司 一种基于代理服务器的屏幕监控方法及其系统

Cited By (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105701421A (zh) * 2016-03-09 2016-06-22 成都爆米花信息技术有限公司 云盘数据修改方法
CN106230587A (zh) * 2016-08-05 2016-12-14 浪潮软件股份有限公司 一种长连接防重放攻击的方法
CN106302504A (zh) * 2016-08-31 2017-01-04 浪潮电子信息产业股份有限公司 一种Xenserver基于安全的vnc实现方法
CN107918731A (zh) * 2016-10-11 2018-04-17 百度在线网络技术(北京)有限公司 用于控制对开放接口进行访问的权限的方法和装置
CN107959701A (zh) * 2016-10-17 2018-04-24 中兴通讯股份有限公司 数据共享方法、云终端、云桌面虚拟机及中转代理服务器
CN108092937B (zh) * 2016-11-23 2021-04-20 厦门雅迅网络股份有限公司 防止Web系统越权访问的方法及系统
CN108092937A (zh) * 2016-11-23 2018-05-29 厦门雅迅网络股份有限公司 防止Web系统越权访问的方法及系统
CN106775950A (zh) * 2016-12-29 2017-05-31 郑州云海信息技术有限公司 一种虚拟机远程访问方法和装置
CN106534223A (zh) * 2017-01-22 2017-03-22 上海新炬网络信息技术有限公司 基于密钥算法和日志审计的Openstack访问控制方法
CN106534223B (zh) * 2017-01-22 2019-10-25 上海新炬网络信息技术股份有限公司 基于密钥算法和日志审计的Openstack访问控制方法
CN106936844A (zh) * 2017-03-31 2017-07-07 深圳市科迈爱康科技有限公司 远程访问服务的数据交互方法和系统
CN107135069A (zh) * 2017-04-24 2017-09-05 努比亚技术有限公司 远程协助控制方法及系统
CN109997345B (zh) * 2017-10-25 2022-03-11 深圳市互盟科技股份有限公司 基于云计算的虚拟机控制系统及其方法
WO2019080010A1 (zh) * 2017-10-25 2019-05-02 深圳市互盟科技股份有限公司 基于云计算的虚拟机控制系统及其方法
CN109997345A (zh) * 2017-10-25 2019-07-09 深圳市互盟科技股份有限公司 基于云计算的虚拟机控制系统及其方法
CN107864136A (zh) * 2017-11-08 2018-03-30 北京酷我科技有限公司 一种防止系统短信服务被盗用的方法
CN107733936A (zh) * 2017-12-04 2018-02-23 国家电网公司 一种移动数据的加密方法
CN107733936B (zh) * 2017-12-04 2020-08-07 国家电网公司 一种移动数据的加密方法
CN107819579A (zh) * 2017-12-13 2018-03-20 西安Tcl软件开发有限公司 一种用户请求的处理方法、服务器及计算机可读存储介质
CN107819579B (zh) * 2017-12-13 2021-08-24 西安Tcl软件开发有限公司 一种用户请求的处理方法、服务器及计算机可读存储介质
CN108156144A (zh) * 2017-12-18 2018-06-12 北京信安世纪科技股份有限公司 一种访问认证方法及对应装置
CN108363598A (zh) * 2018-01-04 2018-08-03 上海奕瑞光电子科技股份有限公司 虚拟远程桌面访问的管理方法/系统、介质及电子设备
TWI672606B (zh) * 2018-08-28 2019-09-21 國立暨南國際大學 基於認證和密鑰協商協議之授權認證方法
CN109451043B (zh) * 2018-12-12 2022-02-08 北京升鑫网络科技有限公司 一种通过代理访问来保护用户隐私的服务器访问方法
CN109451043A (zh) * 2018-12-12 2019-03-08 熵加网络科技(北京)有限公司 一种通过代理访问来保护用户隐私的服务器访问方法
CN112118206A (zh) * 2019-06-19 2020-12-22 贵州白山云科技股份有限公司 一种解密方法、装置、系统、介质及设备
CN112118206B (zh) * 2019-06-19 2022-04-12 贵州白山云科技股份有限公司 一种解密方法、装置、系统、介质及设备
CN110311920A (zh) * 2019-07-10 2019-10-08 中国联合网络通信集团有限公司 救援方法及救援系统
CN110502315A (zh) * 2019-08-26 2019-11-26 浪潮云信息技术有限公司 一种远程访问物理机的方法、装置及系统
CN112532568B (zh) * 2019-09-19 2022-09-27 马上消费金融股份有限公司 一种交互方法、装置、设备及计算机可读存储介质
CN112532568A (zh) * 2019-09-19 2021-03-19 马上消费金融股份有限公司 一种交互方法、装置、设备及计算机可读存储介质
CN112788374A (zh) * 2019-11-05 2021-05-11 腾讯科技(深圳)有限公司 一种信息处理方法、装置、设备及存储介质
CN112788374B (zh) * 2019-11-05 2023-02-28 腾讯科技(深圳)有限公司 一种信息处理方法、装置、设备及存储介质
CN110995807A (zh) * 2019-11-24 2020-04-10 苏州浪潮智能科技有限公司 直接打开服务器kvm的方法、装置、设备及存储介质
CN110995807B (zh) * 2019-11-24 2023-01-10 苏州浪潮智能科技有限公司 直接打开服务器kvm的方法、装置、设备及存储介质
CN111158857A (zh) * 2019-12-24 2020-05-15 深信服科技股份有限公司 数据加密方法、装置、设备及存储介质
CN111158857B (zh) * 2019-12-24 2024-05-24 深信服科技股份有限公司 数据加密方法、装置、设备及存储介质
CN112309556A (zh) * 2020-11-12 2021-02-02 安图实验仪器(郑州)有限公司 医学实验室集中管控方法
CN113163396B (zh) * 2021-03-23 2022-11-08 傲普(上海)新能源有限公司 一种基于b/s架构能源管理系统中的数据安全系统
CN113163396A (zh) * 2021-03-23 2021-07-23 傲普(上海)新能源有限公司 一种基于b/s架构能源管理系统中的数据安全系统
CN113938474A (zh) * 2021-10-13 2022-01-14 网易(杭州)网络有限公司 一种虚拟机访问方法、装置、电子设备和存储介质
CN113938474B (zh) * 2021-10-13 2024-05-10 网易(杭州)网络有限公司 一种虚拟机访问方法、装置、电子设备和存储介质
CN114827233A (zh) * 2022-04-27 2022-07-29 平安普惠企业管理有限公司 基于双活集群的交互连接方法、装置、计算机设备及介质
CN114827233B (zh) * 2022-04-27 2023-11-24 光禹莱特数字科技(上海)有限公司 基于双活集群的交互连接方法、装置、计算机设备及介质
CN115134344A (zh) * 2022-06-29 2022-09-30 济南浪潮数据技术有限公司 一种虚拟机控制台的控制方法及组件
CN117728958A (zh) * 2024-02-05 2024-03-19 浙江大华技术股份有限公司 一种通信方法、装置和系统

Also Published As

Publication number Publication date
CN105376216B (zh) 2019-04-26

Similar Documents

Publication Publication Date Title
CN105376216A (zh) 一种远程访问方法、代理服务器及客户端
CN101350717B (zh) 一种通过即时通信软件登录第三方服务器的方法及系统
CN108684041B (zh) 登录认证的系统和方法
CN101510877B (zh) 单点登录方法和系统、通信装置
KR20220133206A (ko) 신분 인증 방법 및 장치, 그리고 관련 디바이스
CN111770057B (zh) 身份验证系统及身份验证方法
CN109981665B (zh) 资源提供方法及装置、资源访问方法及装置和系统
CN111770088A (zh) 数据鉴权方法、装置、电子设备和计算机可读存储介质
CN101009561A (zh) Imx会话控制和认证
CN110933078B (zh) 一种h5未登录用户会话跟踪方法
CN105262748A (zh) 广域网中对用户终端进行身份认证的方法和系统
CN104917807A (zh) 资源转移方法、装置和系统
CN104883255A (zh) 一种密码重置方法和装置
AU2011254221A1 (en) System and method for protecting access to authentication systems
CN112311769B (zh) 安全认证的方法、系统、电子设备及介质
CN104243452B (zh) 一种云计算访问控制方法及系统
CN103401686A (zh) 一种用户互联网身份认证系统及其应用方法
CN110138765A (zh) 数据处理方法和装置
CN109495458A (zh) 一种数据传输的方法、系统及相关组件
CA2793422C (en) Hypertext link verification in encrypted e-mail for mobile devices
JP4921614B2 (ja) 中間者によるコンピュータのハッキング技法を防止するための方法およびシステム
CN113992387B (zh) 资源管理方法、装置、系统、电子设备和可读存储介质
CN105577609A (zh) 用于对访问的内容进行控制的方法和装置
CN105871788B (zh) 一种登录服务器的密码生成方法及装置
CN103179088A (zh) 通用网关接口业务的保护方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant