一种基于VNC的服务器远程执行命令的方法、设备及介质与流程

文档序号:31729297发布日期:2022-10-05 01:28阅读:109来源:国知局
一种基于VNC的服务器远程执行命令的方法、设备及介质与流程
一种基于vnc的服务器远程执行命令的方法、设备及介质
技术领域
1.本技术涉及计算机技术领域,具体涉及一种基于vnc的服务器远程执行命令的方法、设备及介质。


背景技术:

2.目前服务器在计算机领域是不可缺少的一部分,而对远程服务器进行操作也成了一个非常重要的问题,现有技术中,对远程服务器进行操作时,无法同时对多个服务器按照某种规则进行同时管理,而且还需要操作人员必须去机房操控服务器。


技术实现要素:

3.为了解决上述问题,本技术提出了一种基于vnc的服务器远程执行命令的方法、设备及介质,其中方法包括:
4.通过互联网ip地址,建立本地服务器与远程服务器之间的网络通道;在所述远程服务器中搭建vnc环境;根据服务器属性将所述远程服务器划分至不同站点,并通过novnc对所述远程服务器进行标识;根据待执行命令对应的服务器属性,确定目标服务器的对应站点和\或对应标识;根据所述对应站点以及所述对应标识,将所述待执行命令分发至目标站点和\或目标服务器。
5.在一个示例中,所述通过互联网ip地址,建立本地服务器与远程服务器之间的网络通道之前,所述方法还包括:在所述本地服务器以及所述远程服务器中搭建novnc、nginx、mysql环境。
6.在一个示例中,所述根据所述对应站点以及所述对应标识,将所述待执行命令分发至目标站点和\或目标服务器之前,所述方法还包括:通过所述本地服务器端获取操作人员的登录信息;根据所述登录信息判断所述操作人员是否具有操作权限;若是,则允许所述操作人员将所述待执行命令分发至目标站点和\或目标服务器。
7.在一个示例中,所述根据所述登录信息判断所述操作人员是否具有操作权限,具体包括:获取所述操作人员的互联网ip地址;判断预先设立的ip地址白名单中是否包含所述互联网ip地址,若是,则所述操作人员具有操作权限。
8.在一个示例中,所述将所述待执行命令分发至目标站点和\或目标服务器之后,所述方法还包括:获取操作人员的登录信息,以及对所述远程服务器的操作信息;向所述登录信息以及所述操作信息添加时间戳;将所述登录信息、所述操作信息、所述时间戳保存在所述本地服务器中。
9.在一个示例中,所述将所述待执行命令分发至目标站点和\或目标服务器之后,所述方法还包括:获取所述远程服务器的命令执行结果,并将所述命令执行结果传输至所述本地服务器。
10.在一个示例中,所述根据服务器属性将所述远程服务器划分至不同站点,具体包括:获取所述远程服务器的物理位置信息;根据所述物理位置信息,将所述远程服务器划分
至预设的物理位置站点。
11.在一个示例中,所述方法还包括:确定系统中新增服务器;获取所述新增服务器的服务器属性,并根据所述服务器属性将所述服务器划分至所述站点中。
12.本技术还提供了一种基于vnc的服务器远程执行命令的设备,其特征在于,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行:通过互联网ip地址,建立本地服务器与远程服务器之间的网络通道;在所述远程服务器中搭建vnc环境;根据服务器属性将所述远程服务器划分至不同站点,并通过novnc对所述远程服务器进行标识;根据待执行命令对应的服务器属性,确定目标服务器的对应站点和\或对应标识;根据所述对应站点以及所述对应标识,将所述待执行命令分发至目标站点和\或目标服务器。
13.本技术还提供了一种非易失性计算机存储介质,存储有计算机可执行指令,其特征在于,所述计算机可执行指令设置为:通过互联网ip地址,建立本地服务器与远程服务器之间的网络通道;在所述远程服务器中搭建vnc环境;根据服务器属性将所述远程服务器划分至不同站点,并通过novnc对所述远程服务器进行标识;根据待执行命令对应的服务器属性,确定目标服务器的对应站点和\或对应标识;根据所述对应站点以及所述对应标识,将所述待执行命令分发至目标站点和\或目标服务器。
14.通过本技术提出的方法能够实现对远程服务器的操作,实现了对服务器进行多job操作,也为批量管理服务器提供了保障。服务器运维人员可以通过此方法进行批量执行job、多站点分发以及多任务分发,不需要相关人员进行操作服务器进行任务操作。
附图说明
15.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
16.图1为本技术实施例中一种基于vnc的服务器远程执行命令的方法的流程示意图;
17.图2为本技术实施例中一种基于vnc的服务器远程执行命令的设备结构示意图。
具体实施方式
18.为使本技术的目的、技术方案和优点更加清楚,下面将结合本技术具体实施例及相应的附图对本技术技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
19.以下结合附图,详细说明本技术各实施例提供的技术方案。
20.图1为本说明书一个或多个实施例提供的一种基于vnc的服务器远程执行命令的方法的流程示意图。该方法可以应用于不同种类的服务器,该流程可以由相应领域的计算设备执行,流程中的某些输入参数或者中间结果允许人工干预调节,以帮助提高准确性。
21.本技术实施例涉及的分析方法的实现可以为终端设备,也可以为服务器,本技术对此不作特殊限制。为了方便理解和描述,以下实施例均以服务器为例进行详细描述。
22.需要说明的是,该服务器可以是单独的一台设备,可以是有多台设备组成的系统,
即,分布式服务器,本技术对此不做具体限定。
23.vnc(virtual network console)是虚拟网络控制台的缩写。它是一款优秀的远程控制工具。vnc是在基于unix和linux操作系统的免费的开源软件,远程控制能力强大,高效实用,其性能可以和windows和mac中的任何远程控制软件媲美。
24.vnc基本上是由两部分组成:一部分是客户端的应用程序(vnc viewer);另外一部分是服务器端的应用程序(vnc server)。vnc的基本运行原理和一些windows下的远程控制软件很类似。vnc的服务器端应用程序在unix和linux操作系统中适应性很强,图形界面十分友好。在任何安装了客户端的应用程序(vncviewer)的linux平台的计算机都能十分方便地和安装了服务器端的应用程序(vncserver)的计算机相互连接。
25.而novnc提供一种在网页上访问机器上vncserver提供的vnc服务,需要做tcp到websocket的转化,才能在web页中显示出来。网页就是一个客户端,类似于vncviewer,只是此时填的不是裸露的vnc服务的ip+port,而是由novnc提供的websockets的代理,在novnc代理服务器上要配置每个vnc服务,novnc提供一个标识,去反向代理所配置的vnc服务。
26.websocket是一种在单个tcp连接上进行全双工通信的协议,这种协议使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在websocket api中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。那么可以通过websocket协议连接服务器的互联网ip建立与服务器的持久性连接。
27.如图1所示,本技术实施例提供一种基于vnc的服务器远程执行命令的方法,包括:
28.s101:通过互联网ip地址,建立本地服务器与远程服务器之间的网络通道。
29.首先本地服务器要与远程服务器通过互联网ip进行连接,使得本地服务器与远端建立网络通道。
30.在一个实施例中,通过互联网ip地址,建立本地服务器与远程服务器之间的网络通道之前,还需要在本地服务器以及远程服务器中搭建novnc、nginx、mysql环境。
31.s102:在所述远程服务器中搭建vnc环境。
32.然后在远程服务器中安装vnc server,使得远程服务器内部之间可以进行互相通信。
33.s103:根据服务器属性将所述远程服务器划分至不同站点,并通过novnc对所述远程服务器进行标识。
34.通过novnc对远端服务器进行唯一标识,通过服务器的服务器属性对服务器进行站点划分,可以将服务器看做每个站点的中的服务器。
35.在一个实施例中,这里的服务器属性可以是服务器的物理位置,如山东省内的服务器,其具体物理位置信息即为山东省内。此时根据服务器属性将远程服务器划分至不同站点的具体过程包括:获取所述远程服务器的物理位置信息;根据物理位置信息,将远程服务器划分至预设的物理位置站点。
36.s104:根据待执行命令对应的服务器属性,确定目标服务器的对应站点和\或对应标识。
37.确定编写好的待执行命令,并获取该待执行命令要求的目标服务器属性,从而确定目标服务器或者是目标站点。
38.s105:根据所述对应站点以及所述对应标识,将所述待执行命令分发至目标站点和\或目标服务器。
39.根据需要对目标站点的远程服务器或目标服务器进行操作:通过将待执行命令分发到目标站点下的全部远程服务器或者是某个目标服务器进行执行。
40.上述待执行命令可以预先存储在计算机设备的存储装置中,当需要对服务器进行远程操作时,计算机设备可以从存储装置中选取待执行命令。当然,计算机设备还可以从其它外部设备中获取该待执行命令。比如,将待执行命令存储在云端,当需要对服务器进行远程操作时,计算机设备可以从云端获取待执行命令,本实施例对待执行命令的获取方式不做限定。
41.在一个实施例中,在将待执行命令发送至目标服务器之前,还需要通过本地服务器端获取操作人员的登录信息;根据登录信息判断操作人员是否具有操作权限;若具有,则允许操作人员将待执行命令分发至目标站点和\或目标服务器。
42.进一步地,在判断操作人员是否具有操作权限时,可以通过判断操作人员的ip地址是否合规进行检验。具体过程为:获取所述操作人员的互联网ip地址;判断预先设立的ip地址白名单中是否包含所述互联网ip地址,若是,则所述操作人员具有操作权限。通过本地服务器nginx可以对进行远程服务器操作的人员设置登录限制以及ip限制,充分保证远程服务器操作的安全性。
43.在一个实施例中,将待执行命令分发至目标站点和\或目标服务器之后,为进一步保证服务器的安全运行,还需要获取操作人员的登录信息,以及对远程服务器的操作信息。再向登录信息以及操作信息添加时间戳,并将登录信息、操作信息、时间戳保存在所述本地服务器中。即通过本地服务器添加审计功能,对登陆的信息和对远端服务器的操作的信息加以时间戳以及相关操作账号进行记录,保证服务器运行的安全保证。
44.在一个实施例中,将待执行命令分发至目标站点和\或目标服务器之后,还可以获取远程服务器的命令执行结果,并将命令执行结果传输至所述本地服务器。以方便操作人员能够及时知晓待执行命令在远程服务器的执行情况,以及时处理以外情况或修改命令。
45.在一个实施例中,由于经常会出现新增服务器或是删减服务器的情况出现,因此,当确定系统中新增服务器之后,还需要获取新增服务器的服务器属性,并根据服务器属性将服务器划分至站点中。同理,当确定系统中需要删减某个服务器,需要获取删减服务器的服务器属性,并根据服务器属性将服务器从站点中删除。
46.如图2所示,本技术实施例还提供了一种基于vnc的服务器远程执行命令的设备,包括:
47.至少一个处理器;以及,
48.与所述至少一个处理器通信连接的存储器;其中,
49.所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
50.通过互联网ip地址,建立本地服务器与远程服务器之间的网络通道;在所述远程服务器中搭建vnc环境;根据服务器属性将所述远程服务器划分至不同站点,并通过novnc对所述远程服务器进行标识;根据待执行命令对应的服务器属性,确定目标服务器的对应站点和\或对应标识;根据所述对应站点以及所述对应标识,将所述待执行命令分发至目标
站点和\或目标服务器。
51.本技术实施例还提供了一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:
52.通过互联网ip地址,建立本地服务器与远程服务器之间的网络通道;在所述远程服务器中搭建vnc环境;根据服务器属性将所述远程服务器划分至不同站点,并通过novnc对所述远程服务器进行标识;根据待执行命令对应的服务器属性,确定目标服务器的对应站点和\或对应标识;根据所述对应站点以及所述对应标识,将所述待执行命令分发至目标站点和\或目标服务器。
53.本技术中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备和介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
54.本技术实施例提供的设备和介质与方法是一一对应的,因此,设备和介质也具有与其对应的方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述设备和介质的有益技术效果。
55.本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
56.本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
57.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
58.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
59.在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
60.内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
61.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
62.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
63.以上所述仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1