发明内容
本发明提供一种安全设备管理方法及装置,用以解决现有技术中无法统一管理安全设备的缺陷,实现对安全设备的集中管理。
第一方面,本发明提供一种安全设备管理方法,应用于管理设备,包括:
接收一个或多个安全设备发送的设备注册信息;
与每个所述安全设备建立反向代理隧道,所述反向代理隧道是由所述安全设备基于SSH协议主动请求建立的;
基于所述反向代理隧道向每个所述安全设备发送配置消息,所述配置消息用于配置所述安全设备。
可选地,所述接收一个或多个安全设备发送的设备注册信息,包括:
接收每个所述安全设备发送的第一认证消息,所述第一认证消息包括所述安全设备的SSL证书信息;
向每个所述安全设备发送第一认证响应消息,所述第一认证响应消息包括所述管理设备的SSL证书信息;
接收每个所述安全设备发送的注册消息,所述注册消息包括所述安全设备的设备信息;
基于所述设备信息确定监听端口,所述监听端口与所述设备信息对应的安全设备一一绑定,用于对应的安全设备基于所述监听端口监听所述管理设备的消息。
可选地,所述与每个所述安全设备建立反向代理隧道,包括:
向每个所述安全设备发送注册响应消息,所述注册响应消息包括所述监听端口的端口信息;
接收每个所述安全设备发送的隧道建立请求消息,基于所述隧道建立请求消息和所述监听端口建立所述反向代理隧道。
可选地,所述方法还包括:
接收每个所述安全设备发送的公钥,所述公钥用于所述管理设备对传输数据进行加解密,所述传输数据为所述安全设备与所述管理设备之间传输的数据。
可选地,所述向每个所述安全设备发送配置消息之前,还包括:
向每个所述安全设备发送第二认证消息,所述第二认证消息用于所述安全设备对所述管理设备进行设备管理权限认证,所述管理权限是所述安全设备预先分配的。
可选地,所述配置消息的发送是基于django-http-proxy开源库实现的。
第二方面,本发明还提供一种安全设备管理方法,应用于安全设备,包括:
向管理设备发送设备注册信息;
与所述管理设备建立反向代理隧道,所述反向代理隧道是由所述安全设备基于SSH协议主动请求建立的;
基于所述反向代理隧道接收所述管理设备发送的配置消息,所述配置消息用于配置所述安全设备。
可选地,所述向管理设备发送设备注册信息,包括:
向所述管理设备发送第一认证消息,所述第一认证消息包括所述安全设备的SSL证书信息;
接收所述管理设备发送的第一认证响应消息,所述第一认证响应消息包括所述管理设备的SSL证书信息;
向所述管理设备发送注册消息,所述注册消息包括所述安全设备的设备信息。
可选地,所述与所述管理设备建立反向代理隧道,包括:
接收所述管理设备发送的注册响应消息,所述注册响应消息包括监听端口的端口信息,所述监听端口是所述管理设备基于所述设备信息确定的,与所述设备信息对应的安全设备一一绑定,用于对应的安全设备基于所述监听端口监听所述管理设备的消息;
向所述管理设备发送隧道建立请求消息,基于所述隧道建立请求消息和所述监听端口建立反向代理隧道。
可选地,所述方法还包括:
向所述管理设备发送公钥,所述公钥用于所述管理设备对传输数据进行加解密,所述传输数据为所述安全设备与所述管理设备之间传输的数据。
可选地,所述接收所述管理设备发送的配置消息之前,还包括:
接收所述管理设备发送的第二认证消息;
基于所述第二认证消息对所述管理设备进行设备管理权限认证,所述管理权限是所述安全设备预先分配的。
第三方面,本发明还提供一种安全设备管理装置,应用于管理设备,包括:
第一接收模块,用于接收一个或多个安全设备发送的设备注册信息;
第一隧道建立模块,用于与每个所述安全设备建立反向代理隧道,所述反向代理隧道是由所述安全设备基于SSH协议主动请求建立的;
第一发送模块,用于基于所述反向代理隧道向每个所述安全设备发送配置消息,所述配置消息用于配置所述安全设备。
第四方面,本发明还提供一种安全设备管理装置,应用于安全设备,包括:
第二发送模块,用于向管理设备发送设备注册信息;
第二隧道建立模块,用于与所述管理设备建立反向代理隧道,所述反向代理隧道是由所述安全设备基于SSH协议主动请求建立的;
第二接收模块,用于基于所述反向代理隧道接收所述管理设备发送的配置消息,所述配置消息用于配置所述安全设备。
第五方面,本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述安全设备管理方法的步骤,或第二方面所述安全设备管理方法的步骤。
第六方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所述安全设备管理方法的步骤,或第二方面所述安全设备管理方法的步骤。
第七方面,本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如第一方面所述安全设备管理方法的步骤,或第二方面所述安全设备管理方法的步骤。
本发明实施例提供的安全设备管理方法,通过反向代理隧道实现了管理设备向安全设备主动发送消息,进而实现了通过管理设备对安全设备集中管理的功能,由于反向代理隧道是安全设备主动请求建立的,反向代理隧道不公开安全设备的管理端口,因此保证了安全性;并且反向代理隧道是基于SSH协议建立的,SSH协议能够有效防止管理过程中信息泄漏的问题,提高了安全设备管理的安全性;另外本发明实施例中的设备注册,实现了根据网络组织业务需要对扩展设备进行设备注册的业务需求,从而使安全设备不仅可以集中管控防火墙设备,也可管理探针、VPN以及子安全设备等边界安全设备。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面对本发明涉及的技术术语作一介绍:
反向代理(Reverse Proxy):是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。图1是本发明提供的反向代理的流程示意图,如图1所示,通过一个代理服务器(也可以称为反向代理服务器)来接收用户(用户设备A、用户设备B和用户设备C)的请求,并将请求分配到代理的服务器上(服务器A、服务器B和服务器C),如此不同的用户可以通过请求反向代理服务器来获取相同的服务。
SSH(Secure Shell):SSH为建立在应用层基础上的安全协议。SSH是较可靠地、专为远程登录会话和其他网络服务提供的安全性协议。
ACL(Access Control Lists,访问控制列表):是一种基于包过滤的访问控制技术,它可以根据设定的条件对接口上的数据包进行过滤,允许其通过或丢弃。
图2是本发明实施例提供的应用场景示意图,如图2所示,图2展示了管理设备以及安全设备常见的部署方式,安全设备和管理设备都属于子网,但由于安全性设置(如防火墙的ACL设置),安全设备的管理端口对于管理设备来说,是不可访问的。而安全设备则可以通过网络发现管理设备。在这种场景下,常规的反向代理技术是无法满足管理设备管理安全设备的需求,因此本发明实施例提供一种安全设备管理方法,用以实现管理设备对安全设备的集中管理。
下面结合图3-图6描述本发明实施例提供的安全设备管理方法。
图3是本发明实施例提供的安全设备管理方法的流程示意图之一,如图3所示,发明实施例提供的安全设备管理方法,应用于管理设备,包括:
步骤110,接收一个或多个安全设备发送的设备注册信息;
具体地,安全设备是指用于安全领域的边界设备,也称为边界安全防护设备,如防火墙、探针、vpn或子管理设备。示例性地,对于大型网络***,可以由防火墙向子管理设备发送设备注册信息,子管理设备向管理设备发送设备注册信息,形成多级管理。设备注册信息用于将安全设备接入管理设备的集中管理。
示例性地,管理设备基于ssl协议与安全设备建立的底层通信通道。管理设备通过所述底层通信通道接收一个或多个安全设备发送的设备注册信息。
步骤120,与每个所述安全设备建立反向代理隧道,所述反向代理隧道是由所述安全设备基于SSH协议主动请求建立的;
具体地,反向代理隧道用于管理设备和安全设备之间的通信,反向代理隧道是由安全设备主动请求建立的SSH隧道,可以绑定管理设备的一个端口,对所述绑定的管理设备端口进行监听,监测到有基于所述端口发送的数据(如HTTP请求报文),将所述数据转发至安全设备。
步骤130,基于所述反向代理隧道向每个所述安全设备发送配置消息,所述配置消息用于配置所述安全设备。
具体地,所述配置消息中包括配置信息(如安全策略),所述配置信息用于配置所述安全设备。所述配置信息可以是管理设备基于用户在管理设备上的输入获得的;也可以是基于用户设备向管理设备发送的用户配置消息获得的,所述用户配置消息是基于用户在用户设备上的输入生成的,所述用户配置消息中包括配置信息。
本发明实施例提供的安全设备管理方法,通过反向代理隧道实现了管理设备向注册的一个或多个安全设备主动发送消息,实现了管理设备对安全设备的集中管理功能,由于反向代理隧道是安全设备主动请求建立的,反向代理隧道不公开安全设备的管理端口,因此避免了安全设备的管理端口被其他设备入侵,提高了安全性;并且反向代理隧道是基于SSH协议建立的,SSH协议能够有效防止管理过程中信息泄漏的问题,提高了安全设备管理的安全性;另外本发明实施例中的设备注册,实现了根据网络组织业务需要对扩展设备进行设备注册的业务需求,从而使管理设备不仅可以集中管控防火墙设备,也可管理探针、VPN以及子安全设备等边界安全设备。
下面,对上述步骤在具体实施例中的可能的实现方式做进一步说明。
步骤110,接收一个或多个安全设备发送的设备注册信息。
可选地,所述接收一个或多个安全设备发送的设备注册信息,包括:
步骤111,接收每个所述安全设备发送的第一认证消息,所述第一认证消息包括所述安全设备的SSL证书信息;
步骤112,向每个所述安全设备发送第一认证响应消息,所述第一认证响应消息包括所述管理设备的SSL证书信息;
可以理解的是,管理设备在建立反向代理隧道之前由于无法获知安全设备的端口,因此无法主动向安全设备发送消息,但管理设备可以开放一个通信端口,用于接收安全设备主动发送的消息,并响应于安全设备主动发送的消息,向安全设备发送响应消息(response消息),从而实现被动消息传输,如步骤110中所述的管理设备基于ssl协议与安全设备建立的底层通信通道。示例性地,安全设备可以基于用户的输入获知管理设备的开放端口,从而与管理设备建立单向通信连接,向管理设备发送通信消息。
对于安全设备的SSL证书信息和管理设备的SSL证书信息,SSL证书是一种配置在服务器上数字证书,也被称为SSL服务器证书,具有服务器身份验证和数据传输加密的功能。该步骤中采用SSL证书双向交换技术对安全设备和管理设备进行身份认证。
步骤113,接收每个所述安全设备发送的注册消息,所述注册消息包括所述安全设备的设备信息;
具体地,设备信息可以包括设备名称等。
可选地,管理设备接收安全设备发送的包含安全设备自身的信息的心跳信息(也可以称为心跳包或心跳报文等,本实施例对名称不作限定)。
步骤114,基于所述设备信息确定监听端口,所述监听端口与所述设备信息对应的安全设备一一绑定,用于对应的安全设备基于所述监听端口监听所述管理设备的消息。
具体地,管理设备基于设备信息和端口协商技术为安全设备分配监听端口(也可以称为侦听端口),管理设备在空闲的安全端口上为安全设备分配一个监听端口,所述监听端口将会与安全设备进行绑定。监听端口用于将管理设备的消息发送给安全设备。示例性地,将端口8888作为监听端口与安全设备001进行绑定。
步骤120,与每个所述安全设备建立反向代理隧道,所述反向代理隧道是由所述安全设备基于SSH协议主动请求建立的。
可选地,所述与每个所述安全设备建立反向代理隧道,包括:
步骤121,向每个所述安全设备发送注册响应消息,所述注册响应消息包括所述监听端口的端口信息;
具体地,响应于安全设备发送的注册消息,向安全设备发送注册响应消息,将步骤114中确定的监听端口的端口信息(如端口号)发送给安全设备。示例性地,接收到安全设备001发送的注册消息后,向安全设备001发送注册响应消息,注册响应消息中包括监听端口8888的端口号。
步骤122,接收每个所述安全设备发送的隧道建立请求消息,基于所述隧道建立请求消息和所述监听端口建立所述反向代理隧道。
具体地,接收安全设备发送的隧道建立请求消息,所述隧道建立请求消息是安全设备接收到监听端口的端口信息后,主动向管理设备发送的。示例性地,隧道建立请求消息中可以包括以下信息:安全设备的设备信息;对应的监听端口的端口号;管理设备信息。安全设备会分配一个管理端口用于反向代理隧道建立,与管理设备进行通信,但是为提高安全性,安全设备的管理端口是不公开的。反向代理隧道建立后,基于监听端口发送的数据,都会通过反向代理隧道发送到安全设备。示例性地,安全设备001能够基于反向代理隧道对端口8888进行端口监听,并获取管理设备基于端口8888发送的数据。
可选地,所述方法还包括:
接收每个所述安全设备发送的公钥,所述公钥用于所述管理设备对传输数据进行加解密,所述传输数据为所述安全设备与所述管理设备之间传输的数据。
具体地,公钥和私钥是一一对应的,公钥和私钥是安全设备生成的。由管理设备对安全设备的公钥进行管理,可以实现基于公钥登录,即安全设备无需输入密码登录管理设备(即建立SSH连接)。
步骤130,基于所述反向代理隧道向每个所述安全设备发送配置消息,所述配置消息用于配置所述安全设备。
可选地,所述向每个所述安全设备发送配置消息之前,还包括:
步骤1301,向每个所述安全设备发送第二认证消息,所述第二认证消息用于所述安全设备对所述管理设备进行设备管理权限认证,所述管理权限是所述安全设备预先分配的。
具体地,安全设备为管理设备分配一个拥有管理权限的账号,在与安全设备建立HTTP连接时,管理设备需要通过安全设备分配的账号进行身份认证,进而实现管理安全设备的目的。可以理解的是,HTTP请求用于对安全设备进行设置,HTTP请求可以通过反向代理隧道传输。
本发明实施例提供的安全设备管理方法,采用了角色权限认证机制,防止除管理设备之外的服务器进入安全设备的管理端口,提高了安全设备管理的安全性。
可选地,所述配置消息的发送是基于django-http-proxy开源库实现的。
django-http-proxy开源库可以将从Django服务器的请求代理到其他服务器上。基于django-http-proxy开源库的请求转发功能,实现反向代理隧道中的HTTP请求的转发与响应。示例性地,管理设备通过HTTP请求向安全设备发送配置信息,基于django-http-proxy开源库,实现将HTTP请求从管理设备转发至安全设备,以及安全设备对HTTP请求的响应消息回传。
可选地,所述方法还包括:管理设备接收安全设备发送的断开消息。
图4是本发明实施例提供的安全设备管理方法的流程示意图之二,如图4所示,本发明实施例提供的安全设备管理方法,应用于安全设备,包括:
步骤210,向管理设备发送设备注册信息;
步骤220,与所述管理设备建立反向代理隧道,所述反向代理隧道是由所述安全设备基于SSH协议主动请求建立的;
步骤230,基于所述反向代理隧道接收所述管理设备发送的配置消息,所述配置消息用于配置所述安全设备。
关于安全设备、管理设备以及反向代理隧道的介绍,参见图3中的介绍,此处不再赘述。
本发明实施例提供的安全设备管理方法,通过安全设备主动向管理设备请求建立反向代理隧道,实现了管理设备对安全设备的集中管理功能,由于反向代理隧道是安全设备主动请求建立的,反向代理隧道不公开安全设备的管理端口,因此避免了安全设备的管理端口被其他设备入侵,提高了安全性;并且反向代理隧道是基于SSH协议建立的,SSH协议能够有效防止管理过程中信息泄漏的问题,提高了安全设备管理的安全性;另外本发明实施例中的设备注册,实现了根据网络组织业务需要对扩展设备进行设备注册的业务需求,从而使防火墙、探针、VPN以及子安全设备等边界安全设备都可以向管理设备发起设备注册,实现集中管理。
下面,对上述步骤在具体实施例中的可能的实现方式做进一步说明。
步骤210,向管理设备发送设备注册信息。
可选地,所述向管理设备发送设备注册信息,包括:
向所述管理设备发送第一认证消息,所述第一认证消息包括所述安全设备的SSL证书信息;
接收所述管理设备发送的第一认证响应消息,所述第一认证响应消息包括所述管理设备的SSL证书信息;
向所述管理设备发送注册消息,所述注册消息包括所述安全设备的设备信息。
关于SSL证书和注册消息的介绍,参见图3中的介绍,此处不再赘述。
步骤220,与所述管理设备建立反向代理隧道,所述反向代理隧道是由所述安全设备基于SSH协议主动请求建立的。
可选地,所述与所述管理设备建立反向代理隧道,包括:
步骤221,接收所述管理设备发送的注册响应消息,所述注册响应消息包括监听端口的端口信息,所述监听端口是所述管理设备基于所述设备信息确定的,与所述设备信息对应的安全设备一一绑定,用于对应的安全设备基于所述监听端口监听所述管理设备的消息;
步骤222,向所述管理设备发送隧道建立请求消息,基于所述隧道建立请求消息和所述监听端口建立反向代理隧道。
示例性地,接收所述管理设备发送的注册响应消息,注册响应消息中包括管理设备分配给安全设备001的监听端口的端口号8888,安全设备001的管理端口号为3000(可以理解的是,管理端口3000对于除安全设备001以外的设备都是未知的)用于与管理设备通信。此时由安全设备001的管理端口3000向管理设备发起隧道建立请求,SSH在管理设备端绑定监听端口8888,在安全设备端绑定请求消息发送端口(即管理端口3000),安全设备通过反向代理隧道监听8888端口的数据,将基于端口8888发送的数据转发至安全设备。由于此时通过监听转发数据至安全设备的请求消息发送端口,无需管理设备按照“本地地址;本地端口;目标地址;目标端口”的命令格式向安全设备发送消息,实现了在不公开安全设备的管理端口的情况下,建立反向代理隧道,实现安全设备和管理设备的通信。
可选地,所述方法还包括:
向所述管理设备发送公钥,所述公钥用于所述管理设备对传输数据进行加解密,所述传输数据为所述安全设备与所述管理设备之间传输的数据。
具体地,安全设备通过SSH-keygen生成自己的公钥和私钥。公钥则是公开的,可以对外发送。公钥和私钥是一一对应的,每一个私钥都有且仅有一个对应的公钥,反之亦然。示例性地,安全设备通过步骤112中所述的单向通信连接公钥发送至管理设备。基于管理设备管理安全设备的公钥,可以实现公钥登录。安全设备请求基于SSH连接管理设备,管理设备将一个随机字符串发送给安全设备;安全设备根据自己的私钥加密这个随机字符串之后再发送给管理设备;管理设备接收到加密后的字符串之后用公钥解密,如果正确就让安全设备登录,否则拒绝。公钥登录可以解决每次登录管理设备(即建立SSH连接)都要输入密码的问题,提高安全设备管理的便捷性,并且通过公钥私钥非对称加密,还可以提高安全设备管理的安全性。
步骤230,基于所述反向代理隧道接收所述管理设备发送的配置消息,所述配置消息用于配置所述安全设备。
可选地,所述接收所述管理设备发送的配置消息之前,还包括:
接收所述管理设备发送的第二认证消息;
基于所述第二认证消息对所述管理设备进行设备管理权限认证,所述管理权限是所述安全设备预先分配的。
关于设备管理权限认证的介绍,参见图3中的介绍,此处不再赘述。
本发明实施例提供的安全设备管理方法,采用了角色权限认证机制,防止除管理设备之外的服务器进入安全设备的管理端口,提高了安全设备管理的安全性。
可选地,安全设备基于ssl协议与管理设备之间建立底层通信通道。安全设备通过所述底层通信通道向管理设备发送设备注册信息。
可选地,所述方法还包括:安全设备向所述管理设备发送包含安全设备自身的信息的心跳信息(也可以称为心跳包或心跳报文等,本实施例对名称不作限定),所述心跳信息是所述安全设备基于所述底层通信通道发送的。
可选地,所述方法还包括:安全设备向所述管理设备发送断开消息,所述断开消息用于指示管理设备断开连接。
本发明实施例提供的安全设备管理方法,通过安全设备向所述管理设备发送断开消息,可以实现在安全设备检测到当前连接不稳定或连接不安全等场景下,主动向管理设备发送断开消息,进一步提高安全设备管理的安全性。
图5是本发明实施例提供的安全设备管理方法的流程示意图之三,如图5所示,本发明实施例提供的安全设备管理方法,包括:设备注册、隧道建立以及反向代理。
具体地,考虑到反向代理隧道的安全性,在设备注册时采用了SSL证书交换技术来进行管理设备和安全设备的身份认证,此外在为安全设备分配隧道端口时,采用了端口协商技术,管理设备在空闲的安全端口上会为安全设备随机分配一个监听端口,该端口将会与安全设备进行绑定。
在隧道建立过程中,考虑到安全设备与管理设备独特的部署场景,将安全设备的公钥在管理设备上进行管理,并将上一步协商出的监听端口发送给安全设备,并由安全设备主动建立到管理设备的反向代理隧道,此步骤保障了安全设备的自主性与安全性,避免了端口暴露的风险。
最后一步为反向代理过程,为防止除管理设备之外的服务进入安全设备的管理端口,采用了角色权限认证机制,安全设备为管理设备分配一个拥有管理权限的账号,在与安全设备建立HTTP连接时,管理设备需要通过账号安全设备分配的账号进行身份认证,进而实现管理安全设备的目的,此外反向代理隧道中的http请求的转发与响应,基于django-http-proxy开源库进行了实现,基于django-http-proxy开源库可以将从Django服务的请求代理到其他服务器上的功能,将管理设备的HTTP请求发送至安全设备,并且维护了每次管理设备登录到安全设备的会话(session)信息。
本发明实施例提供的安全设备管理方法,在内网场景中安全规则的限制下,实现管理设备到安全设备的管理端口的反向代理,进而实现对防火墙等边界安全设备进行更加便捷的集中管理需求;本发明实施例采用SSH技术来实现安全可靠并且扩展性强的反向代理框架。在保障安全性上,采用了SSH技术所具备的隧道加密技术,结合设备注册、端口协商和管理权限认证手段,实现了管理设备到安全设备的安全管理技术。另外,以SSH反向代理技术为基础,增加了设备认证以及数据传输等技术,使得该反向代理具有强大的扩展性能。
图6是本发明实施例提供的安全设备管理方法的反向代理示意图,如图6所示,本发明实施例提供的安全设备管理方法,用户设备向管理设备发送安全设备配置消息,管理设备向安全设备转发该配置消息,实现了用户设备对安全设备进行集中管理的效果。
本发明实施例提供的安全设备管理方法,第一,通过反向代理技术来通过一台管理设备来对部署在不同区域的安全设备进行统一的集中管理,极大的提高使用者部署防火墙的便捷性;第二,对于防火墙等安全设备,处于不同子网的设备,会存在ACL(访问控制列表)规则限制。SSH反向代理可以在保障安全性的基础上提供强大的内网穿透能力;第三,提高了安全性,SSH反向代理所建立的数据隧道是加密隧道。SSH会自动加密和解密所有SSH客户端与服务端之间的网络数据;第四,增加了扩展性:基于反向代理框架,可以根据网络各自业务的扩展设备认证等业务需求。从而使管理设备不仅可以集中管控防火墙设备,也可管理探针、VPN以及管理设备自身等类似的边界安全设备。
下面对本发明提供的安全设备管理装置进行描述,下文描述的安全设备管理装置与上文描述的安全设备管理方法可相互对应参照。
图7是本发明实施例提供的安全设备管理装置的结构示意图,如图7所示,本发明实施例提供一种安全设备管理装置,应用于管理设备,包括:第一接收模块710、第一隧道建立模块720和第一发送模块730;
第一接收模块710,用于接收一个或多个安全设备发送的设备注册信息;
可选地,第一接收模块710能够维持安全设备与管理设备之间的长连接,示例性地,第一接收模块基于ssl连接维持安全设备与管理设备之间的底层通信通道。第一接收模块710,用于接收一个或多个安全设备发送的设备注册信息。第一接收模块710,还用于接收安全设备发送的设备信息,示例性地,管理设备通过第一接收模块710接收安全设备发送的包含安全设备自身的信息的心跳信息(也可以称为心跳包或心跳报文等,本实施例对名称不作限定);第一接收模块710,还用于接收安全设备断开的消息;可选地,第一接收模块710,还用于管理注册成功后的安全设备与管理设备的会话通道。可选地,第一接收模块710,还用于安全设备与管理设备之间通信连接的建立、维护以及清理工作。
第一隧道建立模块720,用于与每个所述安全设备建立反向代理隧道,所述反向代理隧道是由所述安全设备基于SSH协议主动请求建立的;
第一发送模块730,用于基于所述反向代理隧道向每个所述安全设备发送配置消息,所述配置消息用于配置所述安全设备。
在此需要说明的是,本发明实施例提供的上述装置,能够实现上述方法实施例所实现的所有方法步骤,且能够达到相同的技术效果,在此不再对本实施例中与方法实施例相同的部分及有益效果进行具体赘述。
图8是本发明实施例提供的安全设备管理装置的结构示意图,如图8所示,本发明实施例提供一种安全设备管理装置,应用于安全设备,包括:第二发送模块810、第二隧道建立模块820和第二接收模块830;
第二发送模块810,用于向管理设备发送设备注册信息;
第二隧道建立模块820,用于与所述管理设备建立反向代理隧道,所述反向代理隧道是由所述安全设备基于SSH协议主动请求建立的;
第二接收模块830,用于基于所述反向代理隧道接收所述管理设备发送的配置消息,所述配置消息用于配置所述安全设备。
在此需要说明的是,本发明实施例提供的上述装置,能够实现上述方法实施例所实现的所有方法步骤,且能够达到相同的技术效果,在此不再对本实施例中与方法实施例相同的部分及有益效果进行具体赘述。
图9示例了一种电子设备的实体结构示意图,如图9所示,该电子设备可以包括:处理器(processor)910、通信接口(Communications Interface)920、存储器(memory)930和通信总线940,其中,处理器910,通信接口920,存储器930通过通信总线940完成相互间的通信。处理器910可以调用存储器930中的逻辑指令,以执行一种安全设备管理方法,该方法应用于管理设备,包括:接收一个或多个安全设备发送的设备注册信息;与每个所述安全设备建立反向代理隧道,所述反向代理隧道是由所述安全设备基于SSH协议主动请求建立的;基于所述反向代理隧道向每个所述安全设备发送配置消息,所述配置消息用于配置所述安全设备。
此外,上述的存储器930中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
图10示例了一种电子设备的实体结构示意图,如图10所示,该电子设备可以包括:处理器(processor)1010、通信接口(Communications Interface)1020、存储器(memory)1030和通信总线1040,其中,处理器1010,通信接口1020,存储器1030通过通信总线1040完成相互间的通信。处理器1010可以调用存储器1030中的逻辑指令,以执行一种安全设备管理方法,该方法应用于安全设备,包括:向管理设备发送设备注册信息;与所述管理设备建立反向代理隧道,所述反向代理隧道是由所述安全设备基于SSH协议主动请求建立的;基于所述反向代理隧道接收所述管理设备发送的配置消息,所述配置消息用于配置所述安全设备。
此外,上述的存储器1030中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的一种安全设备管理方法,该方法应用于管理设备,包括:接收一个或多个安全设备发送的设备注册信息;与每个所述安全设备建立反向代理隧道,所述反向代理隧道是由所述安全设备基于SSH协议主动请求建立的;基于所述反向代理隧道向每个所述安全设备发送配置消息,所述配置消息用于配置所述安全设备。
本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的一种安全设备管理方法,该方法应用于安全设备,包括:向管理设备发送设备注册信息;与所述管理设备建立反向代理隧道,所述反向代理隧道是由所述安全设备基于SSH协议主动请求建立的;基于所述反向代理隧道接收所述管理设备发送的配置消息,所述配置消息用于配置所述安全设备。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的一种安全设备管理方法,该方法应用于管理设备,包括:接收一个或多个安全设备发送的设备注册信息;与每个所述安全设备建立反向代理隧道,所述反向代理隧道是由所述安全设备基于SSH协议主动请求建立的;基于所述反向代理隧道向每个所述安全设备发送配置消息,所述配置消息用于配置所述安全设备。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的一种安全设备管理方法,该方法应用于安全设备,包括:向管理设备发送设备注册信息;与所述管理设备建立反向代理隧道,所述反向代理隧道是由所述安全设备基于SSH协议主动请求建立的;基于所述反向代理隧道接收所述管理设备发送的配置消息,所述配置消息用于配置所述安全设备。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。