基于固定端口的运维管理系统及方法

文档序号:7802692阅读:350来源:国知局
基于固定端口的运维管理系统及方法
【专利摘要】本发明提供了一种基于固定端口的运维管理系统,包括交互模块,用于获取并校验运维参数;运维代理模块,用于管理交互模块校验后的运维参数;协议代理模块,用于根据运维参数为建立运维连接调用协议代理程序;及固定端口监听模块,用于依据运维参数,通过一固定监听端口监听并建立应用客户端与运维目标计算机之间的运维连接。本发明还提供了一种基于固定端口的运维管理方法,包括选定并通过固定的监听端口及固定传递端口传输运维目标计算机的运维参数;以及建立应用客户端及运维目标计算机之间的运维连接的步骤。本发明的运维管理系统与方法通过采用固定端口监听、传递,有效提高运维管理的安全性,同时便于用户对端口进行统一管理。
【专利说明】基于固定端口的运维管理系统及方法【技术领域】
[0001]本发明涉及一种运维管理技术,尤其涉及一种基于固定端口的运维管理系统及方法。
【背景技术】
[0002]目前,随着互联网信息技术的迅速发展,各类信息系统层出不穷,对各类计算机的运行维护工作变得越来越复杂,技术难度也越来越高。由此,各式各样的运维管理系统便应运而生。
[0003]运维管理系统的核心部分是运维代理,通常通过分配随机端口的方法来实现应用客户端与运维管理系统、运维管理系统与目标计算机之间的对接,使得应用客户端的操作信息能够顺利的通过运维管理系统传输到运维目标计算机上。
[0004]现有的运维管理系统通过分配随机端口虽然能够实现运维过程的代理功能,但同时因端口不固定导致出现需要开放大量端口造成安全上的隐患、不能实现端口映射以及连接过程需验证而非常繁琐等问题,且更无法识别同一应用客户端的并发运维连接请求。
[0005]有鉴于此,有必要采用通过固定端口实现运维过程的代理,从而可以提高运维系统的安全性,又可以 为用户统一管理带来便利。

【发明内容】

[0006]针对现有技术中存在的上述缺陷,本发明提供了一种基于固定端口的运维管理系统,可与一应用客户端及运维目标计算机通信,包括:交互模块,用于获取并校验运维参数;运维代理模块,用于管理交互模块校验后的所述运维参数;协议代理模块,用于根据所述运维参数为所述应用客户端以及所述运维目标计算机建立运维连接调用协议代理程序;以及固定端口监听模块,用于依据所述运维参数,通过一固定监听端口监听并建立所述应用客户端与所述运维目标计算机之间的运维连接。
[0007]依据本发明的一个方面,提供了一种基于固定端口的运维管理系统,所述运维管理系统还包括显示模块,用于收集所述运维参数并传输至所述交互模块。
[0008]针对现有技术中存在的上述缺陷,本发明还提供了一种基于固定端口的运维管理方法,包括以下步骤:针对一运维目标计算机选定固定的监听端口及对应用客户端的固定传递端口,并通过所述固定监听端口及传递端口传输所述运维目标计算机的运维参数;以及通过所述固定的监听端口及传递端口建立所述应用客户端及所述运维目标计算机之间的运维连接。
[0009]依据本发明的另一个方面,提供了一种基于固定端口的运维管理方法,其中所述针对一运维目标计算机选定固定的监听端口及对应用客户端的固定传递端口,并通过所述固定监听端口及传递端口传输所述运维目标计算机的运维参数进一步包括以下步骤:获取并校验所述运维目标计算机的运维参数;用一数据结构管理所述运维参数;将所述运维参数返回至所述的固定监听端口 ;将所述固定监听端口及运维参数传输至所述应用客户端;以及将接收所述固定监听端口及运维参数的应用客户端的目标端口设定为固定传递端口。
[0010]依据本发明的又一个方面,提供了一种基于固定端口的运维管理方法,其中所述建立所述应用客户端及所述运维目标计算机之间的运维连接进一步包括以下步骤:发送运维连接请求信息;通过所述固定监听端口查询运维目标计算机的运维参数;通过所述固定监听端口逐级传递所述运维连接请求至所述运维目标计算机;以及通过所述固定监听端口逐级返回所述运维目标计算机的响应信息至所述应用客户端。
[0011]采用本发明的基于固定端口的运维管理系统与方法,可以通过固定端口实现运维过程的代理,从而提高运维系统的安全性,又可以为统一端口管理带来便利。
【专利附图】

【附图说明】
[0012]读者在参照附图阅读了本发明的【具体实施方式】以后,将会更清楚地了解本发明的各个方面。其中,
[0013]图1为本发明的基于固定端口的运维管理系统的模块示意图;
[0014]图2为本发明的一实施例中基于固定端口的运维管理方法的流程示意图;
[0015]图3为本发明图2的基于固定端口的运维管理方法的步骤10的优选流程示意图;
[0016]图4为本发明图2的基于固定端口的运维管理方法的步骤20的优选流程示意图。
【具体实施方式】
[0017]为了使本申请所揭示的技术内容更加详尽与完备,可参照附图以及本发明的下述各种具体实施例,附图中相同的标记代表相同或相似的组件。然而,本领域的普通技术人员应当理解,下文中所提供的实施例并非用来限制本发明所涵盖的范围。此外,附图仅仅用于示意性地加以说明,并未依照其原尺寸进行绘制。
[0018]下面参照附图,对本发明各个方面的【具体实施方式】作进一步的详细描述。
[0019]请参阅图1,所示为本发明的基于固定端口的运维管理系统的模块示意图。所述运维目标计算机I通过所述运维管理系统2与应用客户端3建立运维连接。其中所述运维管理系统2包括显示模块21、交互模块22,运维代理模块23、协议代理模块24以及固定端口监听模块25。所述应用客户端3包括客户端管理模块31以及客户端管理模块32。
[0020]在本实施例中,所述运维管理系统2与所述运维目标计算机I以及应用客户端3基于B/S架构环境,其中所述运维目标计算机I可通过所述运维管理系统2选定。
[0021]运维管理系统2的显示模块21用于收集运维目标计算机I的运维参数,并传输至交互模块22。具体而言,所述显示模块21收集所述运维目标计算机I的运维参数,所述运维参数主要包括运维目标计算机I的IP地址、端口信息及其使用和/或支持的协议类型。在本实施例中,所述显示模块21还进一步可用于启动运维,以及与所述交互模块22交互运维目标计算机I的运维参数。在本实施例中,所述显示模块21与所述交互模块22之间的交互过程可以通过WEB服务器进行,例如nginx以及apach等。
[0022]交互模块22用于从显示模块21获取并校验运维参数。在本实施例中,所述交互模块22通过与显示模块21的交互获取运维目标计算机I的运维参数,并将获取到的运维参数进行校验。在本实施例中,所述校验的主要内容为:校验所述运维参数是否达到所述运维管理系统2预设的最大会话数、以及运维目标计算机I的状态、端口、运维管理账户是否在所述运维管理系统2中可用等。经校验后的运维参数符合一预设的规则时,交互模块22将通过校验的运维参数发送至所述运维代理模块23。
[0023]运维代理模块23用于管理交互模块22校验后的所述运维参数。在本实施例中,所述运维代理模块23通过一预定义的数据结构管理从交互模块22接收到的校验后的运维参数,并进一步保存所有经管理的运维参数。
[0024]协议代理模块24用于根据所述运维参数为所述应用客户端3以及所述运维目标计算机I建立运维连接调用协议代理程序。在本实施例中,运维目标计算机I使用的协议依据该运维目标计算机I支持的协议类型而定,当运维目标计算机I与应用客户端3之间建立运维连接后,该协议代理程序是运维目标计算机I与应用客户端3之间确定的唯一参数关联。进一步地,在本实施例中,该协议代理程序可以通过运维目标计算机I支持和/或使用的不同类型的协议进行不同的处理。举例而言,当运维目标计算机I支持和/或使用telnet和ssh协议,则所述协议代理程序可以是openssh,所述协议代理模块24可以使用expect交互式脚本。当运维目标计算机I支持和/或使用如oracle等数据库类协议,协议代理模块24可建立一个中转程序。
[0025]固定端口监听模块25用于依据所述运维参数,通过一固定监听端口监听并建立所述应用客户端与所述运维目标计算机之间的运维连接。在本实施例中,所述固定端口可以是预先定义的端口号对应的端口,也可以是依据运维目标计算机I的运维参数被监听或返回至的一个随机的、没有被系统占用的端口号对应的端口。通常地,前述固定端口不宜选用通用或公知端口号。优选地,在本实施例中,固定监听端口模块25监听的固定端口号应选用大于1024的端口号。在本发明其他实施方式中,所述固定端口的端口号也可以依据实际情形予以预设或选定。
[0026]在本实施例中,所述固定端口监听模块25监听一个固定的端口传输的运维目标计算机I的运维参数,并与应用客户端3建立连接,从客户端32发出的运维连接请求信息,也需经过固定端口监听模块25的转递。所述对固定端口的监听可以是一个服务中转应用,可通过基于TCP (面向连接)的socket方式监听所述的固定端口。当应用客户端3连接至所述固定端口监听模块25时,所述固定端口监听模块25使得运维管理系统2与运维目标计算机I之间也建立连接,并将运维目标计算机I的运维信息与应用客户端3的运维请求信息逐级转递至对方。
[0027]在本实施例中,应用客户端3包括客户端管理模块31以及客户端模块32。其中,客户端管理模块31与运维管理系统2连接,用于根据运维参数选择相应的客户端协议。在本实施例中,所述客户端管理模块31根据固定端口监听模块25传输的运维目标计算机I的运维参数解析其支持和/或使用的协议参数,并根据该协议参数选择应用客户端3应使用的客户端协议。具体而言,运维目标计算机I的支持和/或使用的协议参数为文本类协议如ssh协议,则客户端管理模块31选择相应的客户端协议可以是putty或者secureCRT协议中的一种。运维目标计算机I支持和/或使用的协议参数为ftp协议,则客户端管理模块31选择相应的客户端协议可以是winscp或者f Iashftp协议。
[0028]客户端模块32用于根据所述客户端协议启动所述应用客户端3与所述运维管理系统2以及所述运维目标计算机I之间的运维连接。在本实施例中,客户端模块32根据客户端协议启动应用客户端3登录或者连接至运维管理系统2,并通过运维管理系统2建立与运维目标计算机I之间的运维连接。在本实施例中,所述客户端模块32通过预设的登录应用程式实现启动该运维连接,在本发明的其他实施方式中,所述客户端模块32也可通过其他远程交互方式实现与所述运维管理系统2以及所述运维目标计算机I之间的运维连接。
[0029]具体地,运维管理系统2的显示模块21收集运维目标计算机I的运维参数,并将运维参数传输至交互模块22。交互模块22对获取到的运维参数进行校验,并在校验通过后将运维参数传输至运维代理模块23。运维代理模块23将接收到的运维参数通过一定的数据结构进行管理并返回至一个监听端口(端口号可以依据实际情形预先定义,也可以是未被系统占用的随机端口号)。固定端口监听模块25选定该监听端口为固定监听端口,并通过该固定端口监听模块25返回其端口号及运维参数至应用客户端3,应用客户端3接收固定端口监听模块25运维参数信息及其端口号信息的端口则为固定传递端口。客户端管理模块31解析该运维参数中的协议参数,并根据该协议参数调用客户端协议。客户端模块32根据该客户端协议启动登录或连接至运维管理系统2的程序,并通过固定端口监听模块25与固定传递端口建立运维连接。
[0030]在本实施例中,所述运维连接请求至少应包括请求时间及客户端模块32的IP地址。当固定端口监听模块25接收到客户端模块32的运维连接请求后,向运维代理模块23查询运维目标计算机I的运维参数(包括其端口信息及其使用和/或支持的协议类型等)。运维代理模块23在接收到查询请求后,使用一定的查询规则去匹配找到相应信息后返回应答消息。在本实施例中,所述查询规则为采用栈的方式后进先出,先匹配IP地址;再匹配时间,离查询时间最近的记录即为需要的请求,查询后从数据结构中删除该记录。查询要求每个IP对应的相关信息有超时失效机制,在本实施例中定为120秒,以免存储信息无限制增大或降低查询效率、占用过多系统资源。本实施例中,采用栈的方式可以避免同一客户端并发运维时无法区分各个连接的问题,这是采用固定端口相较于随机端口的难点所在。
[0031]运维代理模块23查询到运维目标计算机I使用的协议等运维参数后,响应固定端口监听模块25的查询请求。固定端口监听模块25得到运维目标计算机I的协议等运维参数后,将其转发到查询到的协议代理模块24。协议代理模块24与运维目标计算机I建立连接并转发运维连接请求。运维目标计算机I响应客户端模块32的运维连接请求后将响应信息通过原链路逐级返回应用客户端3。由此建立应用客户端3与运维目标计算机I间的运维代理连接,从而应用客户端3通过运维管理系统2对运维目标计算机I实现运维。
[0032]采用本发明的基于固定端口的运维管理系统,可以通过固定端口实现运维过程的代理,从而提高运维系统的安全性,又可以为统一端口管理带来便利。
[0033]请参阅图2所示,为本发明的一实施例中基于固定端口的运维管理方法的流程示意图。请同时参阅图1与图2,下文结合图1的运维管理系统对图2予以阐明。
[0034]在本实施例中,所述基于固定端口的运维管理方法包括以下步骤:
[0035]在步骤IO,针对一运维目标计算机选定固定的监听端口及对应用客户端的固定传递端口,并通过所述固定监听端口监听及传递端口传输所述运维目标计算机的运维参数。在本实施例中,所述固定监听端口的选定可结合前文固定端口监听模块25及其工作方式的阐述而实现,在此不再赘述;所述固定传递端口的选定可以通过结合所述应用客户端3及其工作方式的阐述实现,在此亦不赘述。
[0036]在步骤20,通过所述固定的监听端口及传递端口建立所述应用客户端及所述运维目标计算机之间的运维连接。在本实施例中,所述应用客户端及所述运维目标计算机之间的运维连接的建立请具体参阅前文应用客户端3的客户端管理模块31、客户端模块32及其与运维管理系统2的显示模块21、交互模块22、运维代理模块23、协议代理模块24以及固定端口监听模块25,以及与运维目标计算机I建立连接的工作方式的阐述,在此不再赘述。
[0037]请配合参阅图1、图2与图3,图3为本发明图2的基于固定端口的运维管理方法的步骤10的优选流程示意图。在本实施例中,步骤10针对一运维目标计算机选定固定的监听端口及对应用客户端的固定传递端口,并通过所述固定的监听端口监听及传递端口传输所述运维目标计算机的运维参数的步骤更包括以下流程:
[0038]步骤100,收集运维参数。在本实施例中,运维管理系统2的显示模块21收集运维目标计算机I的运维参数,并将运维参数传输至交互模块22。
[0039]步骤102,获取并校验运维参数。在本实施例中,交互模块22对获取到的运维参数进行校验,并在校验通过后将运维参数传输至运维代理模块23。在本实施例中,所述校验的主要内容为:校验所述运维参数是否达到所述运维管理系统2预设的最大会话数、以及运维目标计算机I的状态、端口、运维管理账户是否在所述运维管理系统2中可用等。
[0040]步骤104,传递运维参数。在本实施例中,经校验后的运维参数符合预设的规则时,交互模块22将通过校验的运维参数发送至所述运维代理模块23。
[0041]步骤106,管理运维参数。在本实施例中,运维代理模块23通过预定义的数据结构管理从交互模块22接收到的校验后运维参数,并进一步保存所有管理的运维参数。
[0042]步骤108,返回运维参数至固定监听端口。在本实施例中,运维代理模块23将接收到的运维参数通过一定的数据结构进行管理并返回至一个监听端口,所述监听端口的端口号可以依据实际情形预先定义,也可以是未被系统占用的随机端口号。固定端口监听模块25选定该监听端口为固定监听端口。
[0043]步骤110,传输监听端口号及运维参数至应用客户端。在本实施例中,固定端口监听模块25通过该固定端口监听模块25返回其端口号及运维参数至应用客户端3,应用客户端3接收固定端口监听模块25运维参数信息及其端口号信息的端口则为固定传递端口。
[0044]步骤112,应用客户端解析运维参数并调用相应的客户端协议。在本实施例中,客户端管理模块31解析该运维参数中的协议参数,并根据该协议参数调用客户端协议。
[0045]步骤114,根据客户端协议启动登录或连接。在本实施例中,客户端模块32根据该客户端协议启动登录或连接至运维管理系统2的程序,并通过固定端口监听模块25建立运维连接。
[0046]请配合参阅图1、图2与图4,图4为本发明图2的基于固定端口的运维管理方法的步骤20的优选流程示意图。在本实施例中,步骤20通过所述固定的监听端口及传递端口建立所述应用客户端及所述运维目标计算机之间的运维连接进一步包括以下流程:
[0047]步骤200,发送运维连接请求。在本实施例中,客户端模块32启动登录或连接至运维管理系统2的程序后应发送运维连接请求至运维管理模块2。所述运维连接请求中至少应包括请求时间及客户端模块32的IP地址。
[0048]步骤202,查询运维目标计算机的运维参数。在本实施例中,当固定端口监听模块25接收到客户端模块32的运维连接请求后,向运维代理模块23查询运维目标计算机I的运维参数(端口信息及其使用和/或支持的协议类型等)。运维代理模块23在接收到查询请求后,使用一定的查询规则去匹配找到相应信息后返回应答消息。在本实施例中,所述查询规则为采用栈的方式后进先出,先匹配IP地址,再匹配时间,离查询时间最近的记录即为需要的请求。查询后,从数据结构中删除该记录。查询要求每个IP对应的相关信息有超时失效机制,在本实施例中定为120秒,以免存储信息无限制增大或降低查询效率、占用过多系统资源。在本实施例中,采用栈的方式可以避免同一客户端并发运维时无法区分各个连接的问题,这正是采用固定端口相较于随机端口的难点所在。
[0049]步骤204,响应查询请求。在本实施例中,运维代理模块23查询到运维目标计算机I使用的协议等运维参数后,响应固定端口监听模块25的查询请求。
[0050]步骤206,转发运维连接请求到查询到的协议代理模块。在本实施例中,固定端口监听模块25得到运维目标计算机I的协议等运维参数后,将其转发到查询到的协议代理模块24。
[0051]步骤208,转发运维连接请求并建立与运维目标计算机的连接。在本实施例中,协议代理模块24与运维目标计算机I建立连接并向其转发运维连接请求。
[0052]步骤210,逐级返回运维目标计算机的响应信息。在本实施例中,运维目标计算机I响应客户端模块32的运维连接请求后将响应信息通过原链路逐级返回应用客户端3。由此建立应用客户端3与运维目标计算机I间的运维代理连接。具体地:步骤210进一步包括以下流程:
[0053]步骤2100,从运维目标计算机I返回响应信息至协议代理模块24。
[0054]步骤2102,从协议代理模块24返回响应信息至固定端口监听模块25。
[0055]步骤2104,从固定端口监听模块25返回响应信息至客户端模块32。
[0056]由此,通过以上步骤建立应用客户端3与运维目标计算机I间的运维代理连接,从而应用客户端3通过运维管理系统2对运维目标计算机I实现运维。
[0057]采用本发明的基于固定端口的运维管理方法,可以通过固定端口实现运维过程的代理,从而提高运维系统的安全性,又可以为统一端口管理带来便利。
[0058]上文中,参照附图描述了本发明的【具体实施方式】。但是,本领域中的普通技术人员能够理解,在不偏离本发明的精神和范围的情况下,还可以对本发明的【具体实施方式】作各种变更和替换。这些变更和替换都落在本发明权利要求书所限定的范围内。
【权利要求】
1.一种基于固定端口的运维管理系统,适于与一应用客户端及运维目标计算机通信,其特征在于,所述运维管理系统包括: 交互模块,用于获取并校验运维参数; 运维代理模块,用于管理交互模块校验后的所述运维参数; 协议代理模块,用于根据所述运维参数,为所述应用客户端以及所述运维目标计算机建立运维连接调用协议代理程序;以及 固定端口监听模块,用于依据所述运维参数,通过一固定监听端口监听并建立所述应用客户端与所述运维目标计算机之间的运维连接。
2.根据权利要求1所述的运维管理系统,其特征在于,所述运维管理系统还包括显示模块,用于收集所述运维参数并传输至所述交互模块。
3.根据权利要求1所述的运维管理系统,其特征在于,所述应用客户端还包括: 客户端管理模块,与所述运维管理系统连接,用于根据所述运维参数选择相应的客户端协议;以及 客户端模块,用于根据所述客户端协议启动所述应用客户端与所述运维管理系统及所述运维目标计算机之间的运维连接。
4.一种基于固定端口的运维管理方法,适于应用客户端及运维目标计算机之间的运维管理,其特征在于,所述运维管理方法包括以下步骤: 针对所述运维目标计算机选定固定的监听端口及对所述应用客户端的固定传递端口,并通过所述固定监听端口及传递端口传输所述运维目标计算机的运维参数;以及 通过所述固定监听端口及传递端口建立所述应用客户端及所述运维目标计算机之间的运维连接。
5.根据权利要求4所述的运维管理方法,其特征在于,所述针对运维目标计算机选定固定的监听端口及对应用客户端的固定传递端口,并通过所述固定的监听端口及传递端口传输运维参数进一步包括以下步骤: 获取并校验所述运维目标计算机的运维参数; 用一数据结构管理所述运维参数; 将所述运维参数返回至所述固定监听端口; 将所述固定监听端口及运维参数传输至所述应用客户端;以及 将接收所述固定监听端口及运维参数的应用客户端的目标端口设定为固定传递端口。
6.根据权利要求5所述的运维管理方法,其特征在于,还包括选定运维目标计算机的步骤。
7.根据权利要求6所述的运维管理方法,其特征在于,所述应用客户端还进行以下步骤: 解析所述运维参数中的协议参数,以调用相应的客户端协议;以及 根据所述客户端协议启动所述应用客户端的运维连接。
8.根据权利要求4-7任一项所述的运维管理方法,其特征在于,通过所述固定监听端口及传递端口建立所述应用客户端及所述运维目标计算机之间的运维连接进一步包括以下步骤: 发送运维连接请求;通过所述固定监听端口查询运维目标计算机的运维参数; 通过所述固定监听端口逐级传递所述运维连接请求至所述运维目标计算机;以及 通过所述固定监听端口逐级返回所述运维目标计算机的响应信息至所述应用客户端。
9.根据权利要求8所述的运维管理方法,其特征在于,所述通过所述固定监听端口逐级返回所述运维目标计算机的响应信息至所述应用客户端进一步包括以下步骤: 将所述运维目标计算机的响应信息返回至所述固定监听端口 ;以及 通过所述固定监听端口将所述运维目标计算机的响应信息返回至所述固定传递端口。
10.根据权利要求8所述的运维管理方法,其特征在于,所述运维连接请求包括所述应用客户端的IP地址及请 求时间参数。
【文档编号】H04L12/24GK103973485SQ201410178291
【公开日】2014年8月6日 申请日期:2014年4月29日 优先权日:2014年4月29日
【发明者】刘炳 申请人:上海上讯信息技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1