CN109902074B - 基于数据中心的日志存储方法和系统 - Google Patents
基于数据中心的日志存储方法和系统 Download PDFInfo
- Publication number
- CN109902074B CN109902074B CN201910310734.2A CN201910310734A CN109902074B CN 109902074 B CN109902074 B CN 109902074B CN 201910310734 A CN201910310734 A CN 201910310734A CN 109902074 B CN109902074 B CN 109902074B
- Authority
- CN
- China
- Prior art keywords
- server
- service server
- block chain
- log
- network
- 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
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于数据中心的日志存储方法和系统,其中,方法包括:管理服务器接受业务服务器的入网请求,并在验证合法后允许业务服务器加入区块链网络,接收区块链网络的业务服务器发送的日志文件,按照日志生成时间对所接收的所有日志文件进行排序,并对日志文件进行处理生成本地的新区块,有关目标业务服务器向区块链网络广播经过目标业务服务器私钥签名的携带目标业务服务器标识的新区块;各个业务服务器根据新区块中记录的目标日志文件删除本地服务器中已经重复存储的日志文件。由此,在数据中心以服务器组成了一个区块链网络,以分布式的方式存储日志文件,保护了日志文件的安全性,且跨越了数据中心的防火墙机制,可操作性强。
Description
技术领域
本发明涉及区块链技术领域,尤其涉及一种基于数据中心的日志存储方法和系统。
背景技术
目前,服务器安全体系中很关键的一项日志安全审计为记录管理员中的每一项操作并形成日志。由此,在接收到恶意操作或者系统被入侵以后,可以基于记录的日志进行回溯以保证系统的安全。随着黑客技术的发展,很多入侵者通过清除日志使得有些恶意操作无迹可查,从而,当系统受到攻击后无法获知被进行的恶意操作,难以进行回溯恢复系统安全。
相关技术中,基于去中心化的方式保存日志,避免日志被恶意篡改,即将日志写入外部的区块链,由于区块链具备不可篡改的特性,所以任凭入侵者如何处理都无法删除,一旦写入,从而可以有效的记录日志,保证日志的安全从而进行有效的审计。但是,由于日志服务器一般都是部署到数据中心中,数据中心出口一般都会部署防火墙,防火墙基于安全考虑,通常会禁止内部的服务器对外无约束的访问,从而避免服务器对外发起攻击等,而对外任意访问却正是区块链的基本要求,从而在实际的部署中有一定的困难。
发明内容
本发明提供了一种基于数据中心的日志存储方法和系统,以解决现有技术中,在外部区块链网络存放日志难以跨越数据中心的防火墙机制,导致可操作性不高的技术问题。
本发明第一实施例提供一种基于数据中心的日志存储方法,所述数据中心包括:管理服务器和多个业务服务器,其中,每台业务服务器上安装rsyslog客户端,所述方法包括:所述管理服务器接收经过业务服务器私钥签名后发送的区块链网络加入请求,解析所述区块链网络加入请求获取待入网的业务服务器的区块链标识、IP地址和公钥,应用所述公钥验证所述业务服务器私钥签名的有效性,若验证通过,则生成与所述待入网的业务服务器对应的入网广播消息,其中,所述入网广播消息包括:授权入网的业务服务器的区块链标识、IP地址和公钥,并应用所述管理服务器私钥对所述入网广播消息进行私钥签名后发送给所述区块链网络;所述区块链网络中的各个业务服务器接收经过所述管理服务器私钥签名的入网广播消息,应用预先获取的所述管理服务器的公钥验证所述管理服务器私钥签名的有效性,若验证通过,则在本地的服务器列表中记录所述入网广播消息中携带的授权入网的业务服务器的区块链标识、IP地址和公钥;所述区块链网络中的各个业务服务器通过rsyslog客户端启动Syslog服务,查询本地的服务器列表中其他业务服务器的IP地址,通过P2P的方式向其他的业务服务器发送本地产生的携带业务服务器标识信息的日志文件;所述区块链网络中的各个业务服务器通过rsyslog客户端接收其他业务服务器发送的所述携带业务服务器标识信息的日志文件,按照日志生成时间对所接收的所有日志文件进行排序,并根据预设策略对排序后的日志文件进行处理生成本地的新区块,并按照预设算法生成随机数,根据所述随机数和所述新区块的哈希值计算区块难度值,根据所述区块链网络中各个业务服务器生成的区块难度值确定目标业务服务器,进而所述目标业务服务器向所述区块链网络广播经过目标业务服务器私钥签名的携带所述目标业务服务器标识的新区块;所述区块链网络中的各个业务服务器接收携带所述目标业务服务器标识的新区块,并应用与所述目标业务服务器标识对应的公钥对所述目标业务服务器私钥签名的有效性进行验证,若验证通过,则将所述新区块写入本地的区块链账本,并根据所述新区块中记录的目标日志文件删除本地服务器中已经重复存储的日志文件。
本发明第二实施例提供一种基于数据中心的日志存储系统,包括:管理服务器和多个业务服务器,其中,每台业务服务器上安装rsyslog客户端,其中,所述管理服务器,用于接收经过业务服务器私钥签名后发送的区块链网络加入请求,解析所述区块链网络加入请求获取待入网的业务服务器的区块链标识、IP地址和公钥,应用所述公钥验证所述业务服务器私钥签名的有效性,若验证通过,则生成与所述待入网的业务服务器对应的入网广播消息,其中,所述入网广播消息包括:授权入网的业务服务器的区块链标识、IP地址和公钥,并应用所述管理服务器私钥对所述入网广播消息进行私钥签名后发送给所述区块链网络;所述区块链网络中的各个业务服务器,用于接收经过所述管理服务器私钥签名的入网广播消息,应用预先获取的所述管理服务器的公钥验证所述管理服务器私钥签名的有效性,若验证通过,则在本地的服务器列表中记录所述入网广播消息中携带的授权入网的业务服务器的区块链标识、IP地址和公钥;所述区块链网络中的各个业务服务器,用于通过rsyslog客户端启动Syslog服务,查询本地的服务器列表中其他业务服务器的IP地址,通过P2P的方式向其他的业务服务器发送本地产生的携带业务服务器标识信息的日志文件;所述区块链网络中的各个业务服务器,用于通过rsyslog客户端接收其他业务服务器发送的所述携带业务服务器标识信息的日志文件,按照日志生成时间对所接收的所有日志文件进行排序,并根据预设策略对排序后的日志文件进行处理生成本地的新区块,并按照预设算法生成随机数,根据所述随机数和所述新区块的哈希值计算区块难度值,根据所述区块链网络中各个业务服务器生成的区块难度值确定目标业务服务器,进而所述目标业务服务器向所述区块链网络广播经过目标业务服务器私钥签名的携带所述目标业务服务器标识的新区块;所述区块链网络中的各个业务服务器,用于接收携带所述目标业务服务器标识的新区块,并应用与所述目标业务服务器标识对应的公钥对所述目标业务服务器私钥签名的有效性进行验证,若验证通过,则将所述新区块写入本地的区块链账本,并根据所述新区块中记录的目标日志文件删除本地服务器中已经重复存储的日志文件。
本发明第三实施例提供一种计算机设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如上述实施例所述的基于数据中心的日志存储方法。
本发明第四实施例提供一种非临时性计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述实施例所述的基于数据中心的日志存储方法。
本发明实施例提供的技术方案可以包括以下有益效果:
管理服务器接收经过业务服务器私钥签名后发送的区块链网络加入请求,解析区块链网络加入请求获取待入网的业务服务器的区块链标识、IP地址和公钥,应用公钥验证业务服务器私钥签名的有效性,若验证通过,则生成与待入网的业务服务器对应的入网广播消息,其中,入网广播消息包括:授权入网的业务服务器的区块链标识、IP地址和公钥,并应用管理服务器私钥对入网广播消息进行私钥签名后发送给区块链网络,区块链网络中的各个业务服务器接收经过管理服务器私钥签名的入网广播消息,应用预先获取的管理服务器的公钥验证管理服务器私钥签名的有效性,若验证通过,则在本地的服务器列表中记录入网广播消息中携带的授权入网的业务服务器的区块链标识、IP地址和公钥,区块链网络中的各个业务服务器通过rsyslog客户端启动Syslog服务,查询本地的服务器列表中其他业务服务器的IP地址,通过P2P的方式向其他的业务服务器发送本地产生的携带业务服务器标识信息的日志文件,区块链网络中的各个业务服务器通过rsyslog客户端接收其他业务服务器发送的携带业务服务器标识信息的日志文件,按照日志生成时间对所接收的所有日志文件进行排序,并根据预设策略对排序后的日志文件进行处理生成本地的新区块,并按照预设算法生成随机数,根据随机数和新区块的哈希值计算区块难度值,根据区块链网络中各个业务服务器生成的区块难度值确定目标业务服务器,进而目标业务服务器向区块链网络广播经过目标业务服务器私钥签名的携带目标业务服务器标识的新区块,进而,区块链网络中的各个业务服务器接收携带目标业务服务器标识的新区块,并应用与目标业务服务器标识对应的公钥对目标业务服务器私钥签名的有效性进行验证,若验证通过,则将新区块写入本地的区块链账本,并根据新区块中记录的目标日志文件删除本地服务器中已经重复存储的日志文件。由此,在数据中心以服务器组成了一个区块链网络,以分布式的方式存储日志文件,保护了日志文件的安全性,且跨越了数据中心的防火墙机制,可操作性强。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中,
图1是根据本发明一个实施例的基于数据中心的日志存储系统的结构示意图;
图2是根据本发明一个实施例的基于数据中心的日志存储系统的交互示意图;
图3是根据本发明一个实施例的基于数据中心的日志存储法的流程图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
下面参考附图描述本发明实施例的基于数据中心的日志存储方法和系统。
针对上述背景技术中提到的,由于数据中心的防火墙机制,导致外部区块链存储日志文件的方式难以实际操作的技术问题,本发明提出了一种在数据中心存储日志文件的方式,其中,在数据中心布置大量的日志服务器,多个日志服务器构成了分布式日志文件存储系统,这样,即便黑客入侵了任何几台服务器,只要不是所有的服务器的记录日志都被删除,就可以保证本区块链的所有服务器的日志都会在区块链中保存下来,并且由于在数据中心内置区块链系统,避免了防火墙的阻隔。
其中,为了描述的清楚,首先集中在基于数据中心的日志存储系统进行描述,图1是根据本发明一个实施例的基于数据中心的日志存储系统的结构示意图,如图1所示,该系统中,包括数据中心,数据中心包括:管理服务器100多个业务服务器200,其中,每台业务服务器200上安装rsyslog客户端,其中,管理服务器100可以理解为创始服务器或者权威性较高的服务器,用来对多个业务服务器200进行授权和管理等,本质上管理服务器100多个业务服务器200均是日志服务器。rsyslog客户端用以实现日志有关的日志信息与区块链网络的对接。
参照图2(图2中仅示出一台业务服务器),在实际执行过程中,管理服务器接收经过业务服务器私钥签名后发送的区块链网络加入请求,解析区块链网络加入请求获取待入网的业务服务器的区块链标识、IP地址和公钥,应用公钥验证业务服务器私钥签名的有效性(步骤1),若验证通过,则表明该请求是业务服务器本身发送的,从而,生成与待入网的业务服务器对应的入网广播消息,其中,入网广播消息包括:授权入网的业务服务器的区块链标识、IP地址和公钥,并应用管理服务器私钥对入网广播消息进行私钥签名后发送给区块链网络(步骤2)。
区块链网络中的各个业务服务器接收经过管理服务器私钥签名的入网广播消息,应用预先获取的管理服务器的公钥验证管理服务器私钥签名的有效性(步骤3),若验证通过,则在本地的服务器列表中记录入网广播消息中携带的授权入网的业务服务器的区块链标识、IP地址和公钥(步骤4)。
区块链网络中的各个业务服务器通过rsyslog客户端启动Syslog服务,查询本地的服务器列表中其他业务服务器的IP地址,通过P2P的方式向其他的业务服务器发送本地产生的携带业务服务器标识信息的日志文件(步骤5)。
区块链网络中的各个业务服务器通过rsyslog客户端接收其他业务服务器发送的携带业务服务器标识信息的日志文件,按照日志生成时间对所接收的所有日志文件进行排序,并根据预设策略对排序后的日志文件进行处理生成本地的新区块(步骤6),并按照预设算法生成随机数,根据随机数和新区块的哈希值计算区块难度值,根据区块链网络中各个业务服务器生成的区块难度值确定目标业务服务器(步骤7),进而目标业务服务器向区块链网络广播经过目标业务服务器私钥签名的携带目标业务服务器标识的新区块(步骤8)。
区块链网络中的各个业务服务器接收携带目标业务服务器标识的新区块,并应用与目标业务服务器标识对应的公钥对目标业务服务器私钥签名的有效性进行验证(步骤9),若验证通过,则将新区块写入本地的区块链账本,并根据新区块中记录的目标日志文件删除本地服务器中已经重复存储的日志文件(步骤10)。
由此,在本实施例中,基于去中心化的区块链实现对业务服务器中记录的日志信息的保存,保证了日志信息的存储安全性,且基于数据中心内部实现日志文件的分布式存储,实行克服了数据中心的防火墙机制,可操作性强。
另外,应当理解的是,本发明的实施例中,基于公钥证书技术对区块链的业务服务器等设备进行身份认证,公钥证书技术的而核心为一对密钥,其基本原理是:由一个密钥进行加密的信息内容,只能由与之配对的另一个密钥才能进行解密。加密公钥可以广泛地发给与自己有关的通信者,加密私钥则需要十分安全地存放起来。使用中,消息发送方可以用签名私钥对广播信息进行加密并传送给有关节点,有关节点可以使用消息发送方的加密公钥完成解密。
为了更加详细的说明本发明实施例的基于数据中心的日志存储方法,使得本领域的技术人员对本发明的日志存储过程更加清楚,下面集中在基于数据中心的日志存储方法侧进行描述。
图3是根据本发明一个实施例的基于数据中心的日志存储方法的流程图,如图3所示,该方法包括:
步骤101,管理服务器接收经过业务服务器私钥签名后发送的区块链网络加入请求,解析区块链网络加入请求获取待入网的业务服务器的区块链标识、IP地址和公钥,应用公钥验证业务服务器私钥签名的有效性,若验证通过,则生成与待入网的业务服务器对应的入网广播消息,其中,入网广播消息包括:授权入网的业务服务器的区块链标识、IP地址和公钥,并应用管理服务器私钥对入网广播消息进行私钥签名后发送给区块链网络。
其中,区块链标识用于标识业务服务器在区块链中的唯一性,基于区块链的运行机制的不同,该区块链标识可以是数字、代码、文字等,在此不作限制,IP地址用于标识业务服务器在网络中的标识信息等。
具体地,正如以上描述的,在数据中心以管理服务器作为创始服务器,对其他的业务服务器进行入网授权。
具体而言,管理服务器接收经过业务服务器私钥签名后发送的区块链网络加入请求,该请求可以端对端的方式发送,也可以其他通信方式发送,通信方式取决于可实现通信的方式,在此不再一一列举,该加入请求中包含待入网的业务服务器的区块链标识、IP地址和公钥,其中,区块链标识、IP地址用于标识业务服务器的身份唯一性,公钥用于验证业务服务器的身份合法性。
进而,管理服务器应用公钥验证业务服务器私钥签名的有效性,若验证通过,则表明该请求时业务服务器本身发送的,进而,对其进行入网授权,并生成与待入网的业务服务器对应的入网广播消息,其中,入网广播消息包括:授权入网的业务服务器的区块链标识、IP地址和公钥,进而,为了使得区块链网络内的其他业务服务器获知该加入的业务服务器,应用管理服务器私钥对入网广播消息进行私钥签名后发送给区块链网络。
在本发明的一个实施例中,为了提高业务服务器的入网效率,在生成与待入网的业务服务器对应的入网广播消息之后,还可同步区块链中已生成的区块,即授权入网的业务服务器查询本地的服务器列表获取相邻业务服务器的IP地址,根据IP地址向相邻业务服务器发送区块同步请求,并接相邻业务服务器反馈的当前全部区块信息,并将当前全部区块信息写入本地的区块链账本,由此,新加入的业务服务器也作为分布式存储的一员。
步骤102,区块链网络中的各个业务服务器接收经过管理服务器私钥签名的入网广播消息,应用预先获取的管理服务器的公钥验证管理服务器私钥签名的有效性,若验证通过,则在本地的服务器列表中记录入网广播消息中携带的授权入网的业务服务器的区块链标识、IP地址和公钥。
具体地,区块链网络中的各个业务服务器接收经过管理服务器私钥签名的入网广播消息,应用预先获取的管理服务器的公钥验证管理服务器私钥签名的有效性,若验证通过,则表明该入网广播消息是管理服务器本身发送的,从而,在本地服务器列表中记录该入网广播消息中携带的授权入网的业务服务器的区块链标识、IP地址和公钥,以便于后续基于这些表示信息识别合法的业务服务器,并对该授权入网的业务服务器发送的消息认为是合法消息。
步骤103,区块链网络中的各个业务服务器通过rsyslog客户端启动Syslog服务,查询本地的服务器列表中其他业务服务器的IP地址,通过P2P的方式向其他的业务服务器发送本地产生的携带业务服务器标识信息的日志文件。
在本发明的实施例中,基于业务服务器中内嵌的rsyslog客户端实现有关区块链业务,由此,由于区块链客户端统一开发,便于对多台业务服务器的区块链业务的更新管理等。
基于上述步骤,业务服务器已经成功加入数据中心的区块链网络后,区块链中的各个业务服务器通过rsyslog客户端启动Syslog服务,查询本地的服务器列表中其他业务服务器的IP地址,通过P2P的方式向其他的业务服务器发送本地产生的携带业务服务器标识信息的日志文件,其中,业务服务器标识信息可以包含业务服务器的地理位置、生产标志等唯一标志业务服务器的信息,业务服务器本地的日志文件记录了发生在本地的操作信息等。
步骤104,区块链网络中的各个业务服务器通过rsyslog客户端接收其他业务服务器发送的携带业务服务器标识信息的日志文件,按照日志生成时间对所接收的所有日志文件进行排序,并根据预设策略对排序后的日志文件进行处理生成本地的新区块,并按照预设算法生成随机数,根据随机数和新区块的哈希值计算区块难度值,根据区块链网络中各个业务服务器生成的区块难度值确定目标业务服务器,进而目标业务服务器向区块链网络广播经过目标业务服务器私钥签名的携带目标业务服务器标识的新区块。
当然,每一个业务服务器即作为日志发送方,也作为日志接收方存在,区块链网络中的各个业务服务器通过rsyslog客户端接收其他业务服务器发送的所述携带业务服务器标识信息的日志文件,并且按照日志生成时间对所接收的所有日志文件进行排序,以便于后续对日志文件的审计和管理等。
进一步地,业务服务器的根据预设策略对排序后的日志文件进行处理生成本地的新区块,该新区块记录了接收到的新的日志文件。
需要说明的是,在不同的应用场景下,根据预设策略对排序后的日志文件进行处理生成本地的新区块的方式不同,作为一种可能的实现方式,按照预设的时间间隔对排序后的日志文件进行处理生成本地的新区块,比如,每隔五分钟对排序后的在这五分钟内的日志文件进行新区块的生成。
作为另一种可能的实现方式,按照预设的日志的条数生成新的区块,比如,每接收满10条日志文件则生成新的区块,以保证资源的合理利用。
在生成新的区块后,基于区块链的记账机制,选择一个业务服务器生成的新区块作为最终的区块,选择的策略为:各个业务服务器按照预设算法生成随机数,根据随机数和新区块的哈希值计算区块难度值,根据区块链网络中各个业务服务器生成的区块难度值确定目标业务服务器,比如,将难度值最低的一个业务服务器作为目标业务服务器等,进而目标业务服务器生成的区块作为左后认定的区块,目标业务服务器向区块链网络广播经过目标业务服务器私钥签名的携带目标业务服务器标识的新区块,由此,可以理解,区块链网络中以目标业务服务器生成的新区块为准将区块对应的日志文件记录在本地。
步骤105,区块链网络中的各个业务服务器接收携带目标业务服务器标识的新区块,并应用与目标业务服务器标识对应的公钥对目标业务服务器私钥签名的有效性进行验证,若验证通过,则将新区块写入本地的区块链账本,并根据新区块中记录的目标日志文件删除本地服务器中已经重复存储的日志文件。
具体地,区块链网络中的各个业务服务器接收携带目标业务服务器标识的新区块,并应用与目标业务服务器标识对应的公钥对目标业务服务器私钥签名的有效性进行验证,若验证通过,则表明该新区块是目标服务器本身发送的,从而,将新区块写入本地的区块链账本,由于该新区块中包含的日志文件可能包含在业务服务器本地产生的一些日志文件,因而,为了避免存储资源的浪费,业务服务器在将新区块写入本地的区块链账本后,根据新区块中记录的目标日志文件删除本地服务器中已经重复存储的日志文件。
由此,任何一个新加入的业务服务器,可以找到相邻节点的业务服务器获得本区块链历史的区块,也就是区块链账本,然后生成新的区块。当某台业务服务器被黑客入侵,业务服务器上的区块被删除,则该业务服务器可以迅速从其他业务服务器获得被删除的区块。
具体而言,在本发明的一个实施例中,被入侵删除日志的业务服务器查询本地的服务器列表获取相邻业务服务器的IP地址,根据IP地址向相邻业务服务器发送包含丢失日志参数的日志同步请求,并接收相邻业务服务器反馈的与丢失日志参数对应补偿日志文件,并将补偿日志文件写入本地的区块链账本由此,多个业务服务器互为备份,保证了日志文件的安全存储。
当然,也有可能新加入的业务服务器从相邻节点获取的新区块是被篡改的,因而,为了维护区块链的良性运作,还可以通过从多个相邻节点获得区块链账本来进行对比来保证自己获得的区块链账本里的所有的区块都是正确的。
具体而言,在本发明的一个实施例中,区块链网络中的各个业务服务器还可获取包含待查服务器标识的业务日志审计请求,该待查询服务器是新的业务服务器获取区块的来源业务服务器,进而查询本地的区块链账本获取与待查服务器标识对应的查询日志文件,并计算与查询日志文件对应的查询哈希值,并向区块链网络广播携带本地查询服务器标识和待查服务器标识的查询哈希值,当区块链网络中超过预设阈值的不同业务服务器发送的查询哈希值相同,则表明该待查询业务服务器反馈的业务日志是准确的,没有被篡改,因而确定与待查服务器标识对应的业务日志审计通过。
综上,本发明实施例的基于数据中心的日志存储方法,管理服务器接收经过业务服务器私钥签名后发送的区块链网络加入请求,解析区块链网络加入请求获取待入网的业务服务器的区块链标识、IP地址和公钥,应用公钥验证业务服务器私钥签名的有效性,若验证通过,则生成与待入网的业务服务器对应的入网广播消息,其中,入网广播消息包括:授权入网的业务服务器的区块链标识、IP地址和公钥,并应用管理服务器私钥对入网广播消息进行私钥签名后发送给区块链网络,区块链网络中的各个业务服务器接收经过管理服务器私钥签名的入网广播消息,应用预先获取的管理服务器的公钥验证管理服务器私钥签名的有效性,若验证通过,则在本地的服务器列表中记录入网广播消息中携带的授权入网的业务服务器的区块链标识、IP地址和公钥,区块链网络中的各个业务服务器通过rsyslog客户端启动Syslog服务,查询本地的服务器列表中其他业务服务器的IP地址,通过P2P的方式向其他的业务服务器发送本地产生的携带业务服务器标识信息的日志文件,区块链网络中的各个业务服务器通过rsyslog客户端接收其他业务服务器发送的携带业务服务器标识信息的日志文件,按照日志生成时间对所接收的所有日志文件进行排序,并根据预设策略对排序后的日志文件进行处理生成本地的新区块,并按照预设算法生成随机数,根据随机数和新区块的哈希值计算区块难度值,根据区块链网络中各个业务服务器生成的区块难度值确定目标业务服务器,进而目标业务服务器向区块链网络广播经过目标业务服务器私钥签名的携带目标业务服务器标识的新区块,进而,区块链网络中的各个业务服务器接收携带目标业务服务器标识的新区块,并应用与目标业务服务器标识对应的公钥对目标业务服务器私钥签名的有效性进行验证,若验证通过,则将新区块写入本地的区块链账本,并根据新区块中记录的目标日志文件删除本地服务器中已经重复存储的日志文件。由此,在数据中心以服务器组成了一个区块链网络,以分布式的方式存储日志文件,保护了日志文件的安全性,且跨越了数据中心的防火墙机制,可操作性强。
为了实现上述实施例,本发明还提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如前述实施例描述的基于数据中心的日志存储方法。
为了实现上述实施例,本发明还提出一种非临时性计算机可读存储介质,其上存储有计算机程序,当该计算机程序被处理器执行时能够实现如前述实施例所描述的基于数据中心的日志存储方法。
在本发明中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本发明中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在第二特征“之上”、“上方”和“上面”可是第一特征在第二特征正上方或斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种基于数据中心的日志存储方法,其特征在于,所述数据中心包括:管理服务器和多个业务服务器,其中,每台业务服务器上安装rsyslog客户端,所述方法包括:
所述管理服务器接收经过业务服务器私钥签名后发送的区块链网络加入请求,解析所述区块链网络加入请求获取待入网的业务服务器的区块链标识、IP地址和公钥,应用所述公钥验证所述业务服务器私钥签名的有效性,若验证通过,则生成与所述待入网的业务服务器对应的入网广播消息,其中,所述入网广播消息包括:授权入网的业务服务器的区块链标识、IP地址和公钥,并应用所述管理服务器私钥对所述入网广播消息进行私钥签名后发送给所述区块链网络;
所述区块链网络中的各个业务服务器接收经过所述管理服务器私钥签名的入网广播消息,应用预先获取的所述管理服务器的公钥验证所述管理服务器私钥签名的有效性,若验证通过,则在本地的服务器列表中记录所述入网广播消息中携带的授权入网的业务服务器的区块链标识、IP地址和公钥;
所述区块链网络中的各个业务服务器通过rsyslog客户端启动Syslog服务,查询本地的服务器列表中其他业务服务器的IP地址,通过P2P的方式向其他的业务服务器发送本地产生的携带业务服务器标识信息的日志文件;
所述区块链网络中的各个业务服务器通过rsyslog客户端接收其他业务服务器发送的所述携带业务服务器标识信息的日志文件,按照日志生成时间对所接收的所有日志文件进行排序,并根据预设策略对排序后的日志文件进行处理生成本地的新区块,并按照预设算法生成随机数,根据所述随机数和所述新区块的哈希值计算获取参考值,获取所述区块链网络中各个业务服务器生成的多个参考值,将所述多个参考值中的最小参考值对应的业务服务器确定为目标业务服务器,进而所述目标业务服务器向所述区块链网络广播经过目标业务服务器私钥签名的携带所述目标业务服务器标识的新区块;
所述区块链网络中的各个业务服务器接收携带所述目标业务服务器标识的新区块,并应用与所述目标业务服务器标识对应的公钥对所述目标业务服务器私钥签名的有效性进行验证,若验证通过,则将所述新区块写入本地的区块链账本,并根据所述新区块中记录的目标日志文件删除本地服务器中已经重复存储的日志文件。
2.如权利要求1所述的方法,其特征在于,所述根据预设策略对排序后的日志文件进行处理生成本地的新区块,包括:
按照预设的时间间隔或者按照预设的日志的条数对排序后的日志文件进行处理生成本地的新区块。
3.如权利要求1所述的方法,其特征在于,还包括:
所述区块链网络中的各个业务服务器获取包含待查服务器标识的业务日志审计请求,进而查询本地的区块链账本获取与所述待查服务器标识对应的查询日志文件,并计算与所述查询日志文件对应的查询哈希值,并向所述区块链网络广播携带本地查询服务器标识和所述待查服务器标识的所述查询哈希值,当所述区块链网络中超过预设阈值的不同业务服务器发送的查询哈希值相同,则确定与所述待查服务器标识对应的业务日志审计通过。
4.如权利要求1所述的方法,其特征在于,在所述生成与所述待入网的业务服务器对应的入网广播消息之后,还包括:
授权入网的业务服务器查询本地的服务器列表获取相邻业务服务器的IP地址,根据所述IP地址向所述相邻业务服务器发送区块同步请求,并接收所述相邻业务服务器反馈的当前全部区块信息,并将所述当前全部区块信息写入本地的区块链账本。
5.如权利要求1所述的方法,其特征在于,还包括:
被入侵删除日志的业务服务器查询本地的服务器列表获取相邻业务服务器的IP地址,根据所述IP地址向所述相邻业务服务器发送包含丢失日志参数的日志同步请求,并接收所述相邻业务服务器反馈的与所述丢失日志参数对应补偿日志文件,并将所述补偿日志文件写入本地的区块链账本。
6.一种基于数据中心的日志存储系统,其特征在于,包括:管理服务器和多个业务服务器,其中,每台业务服务器上安装rsyslog客户端,其中,
所述管理服务器,用于接收经过业务服务器私钥签名后发送的区块链网络加入请求,解析所述区块链网络加入请求获取待入网的业务服务器的区块链标识、IP地址和公钥,应用所述公钥验证所述业务服务器私钥签名的有效性,若验证通过,则生成与所述待入网的业务服务器对应的入网广播消息,其中,所述入网广播消息包括:授权入网的业务服务器的区块链标识、IP地址和公钥,并应用所述管理服务器私钥对所述入网广播消息进行私钥签名后发送给所述区块链网络;
所述区块链网络中的各个业务服务器,用于接收经过所述管理服务器私钥签名的入网广播消息,应用预先获取的所述管理服务器的公钥验证所述管理服务器私钥签名的有效性,若验证通过,则在本地的服务器列表中记录所述入网广播消息中携带的授权入网的业务服务器的区块链标识、IP地址和公钥;
所述区块链网络中的各个业务服务器,用于通过rsyslog客户端启动Syslog服务,查询本地的服务器列表中其他业务服务器的IP地址,通过P2P的方式向其他的业务服务器发送本地产生的携带业务服务器标识信息的日志文件;
所述区块链网络中的各个业务服务器,用于通过rsyslog客户端接收其他业务服务器发送的所述携带业务服务器标识信息的日志文件,按照日志生成时间对所接收的所有日志文件进行排序,并根据预设策略对排序后的日志文件进行处理生成本地的新区块,并按照预设算法生成随机数,根据所述随机数和所述新区块的哈希值计算获取参考值,获取所述区块链网络中各个业务服务器生成的多个参考值,将所述多个参考值中的最小参考值对应的业务服务器确定为目标业务服务器,进而所述目标业务服务器向所述区块链网络广播经过目标业务服务器私钥签名的携带所述目标业务服务器标识的新区块;
所述区块链网络中的各个业务服务器,用于接收携带所述目标业务服务器标识的新区块,并应用与所述目标业务服务器标识对应的公钥对所述目标业务服务器私钥签名的有效性进行验证,若验证通过,则将所述新区块写入本地的区块链账本,并根据所述新区块中记录的目标日志文件删除本地服务器中已经重复存储的日志文件。
7.如权利要求6所述的系统,其特征在于,所述区块链网络中的各个业务服务器,具体用于:
按照预设的时间间隔或者按照预设的日志的条数对排序后的日志文件进行处理生成本地的新区块。
8.如权利要求6所述的系统,其特征在于,
所述区块链网络中的各个业务服务器,还用于获取包含待查服务器标识的业务日志审计请求,进而查询本地的区块链账本获取与所述待查服务器标识对应的查询日志文件,并计算与所述查询日志文件对应的查询哈希值,并向所述区块链网络广播携带本地查询服务器标识和所述待查服务器标识的所述查询哈希值,当所述区块链网络中超过预设阈值的不同业务服务器发送的查询哈希值相同,则确定与所述待查服务器标识对应的业务日志审计通过。
9.一种计算机设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如权利要求1-5中任一所述的基于数据中心的日志存储方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-5中任一所述的基于数据中心的日志存储方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910310734.2A CN109902074B (zh) | 2019-04-17 | 2019-04-17 | 基于数据中心的日志存储方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910310734.2A CN109902074B (zh) | 2019-04-17 | 2019-04-17 | 基于数据中心的日志存储方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109902074A CN109902074A (zh) | 2019-06-18 |
CN109902074B true CN109902074B (zh) | 2021-02-09 |
Family
ID=66955065
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910310734.2A Active CN109902074B (zh) | 2019-04-17 | 2019-04-17 | 基于数据中心的日志存储方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109902074B (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11196759B2 (en) * | 2019-06-26 | 2021-12-07 | Microsoft Technology Licensing, Llc | SIEM system and methods for exfiltrating event data |
CN110489313B (zh) * | 2019-07-04 | 2022-07-19 | 平安科技(深圳)有限公司 | 基于区块链的操作日志记录方法、装置及存储介质 |
CN110430268B (zh) * | 2019-08-08 | 2022-03-11 | 中国工商银行股份有限公司 | 基于分布式服务的静态资源路由方法及装置 |
CN110545190B (zh) * | 2019-09-06 | 2021-08-13 | 腾讯科技(深圳)有限公司 | 一种签名处理的方法、相关装置以及设备 |
CN110597913B (zh) * | 2019-09-17 | 2023-11-24 | 腾讯科技(深圳)有限公司 | 交易信息跟踪方法、装置、系统、存储介质和计算机设备 |
CN110839015B (zh) * | 2019-10-12 | 2022-05-24 | 深圳壹账通智能科技有限公司 | 基于区块链的日志存储和读取方法、装置、设备及介质 |
CN111290910B (zh) * | 2020-01-20 | 2023-06-23 | Oppo(重庆)智能科技有限公司 | 日志处理方法、装置、服务器及存储介质 |
CN111367867B (zh) * | 2020-03-05 | 2023-03-21 | 腾讯云计算(北京)有限责任公司 | 日志信息处理方法、装置、电子设备及存储介质 |
CN113010480B (zh) * | 2020-03-26 | 2024-03-19 | 腾讯科技(深圳)有限公司 | 日志处理方法、装置、电子设备及计算机可读存储介质 |
CN111614731B (zh) * | 2020-04-29 | 2023-04-07 | 深圳市芯链科技有限公司 | 物联网设备接入区块链方法、系统、聚合网关及存储介质 |
CN111917761B (zh) * | 2020-07-28 | 2022-09-13 | 安徽高山科技有限公司 | 一种基于区块链云计算的数据安全保护方法 |
CN114172671A (zh) * | 2020-08-19 | 2022-03-11 | 北京金山云网络技术有限公司 | 加入区块链的方法及装置 |
CN112035353B (zh) * | 2020-08-28 | 2022-06-17 | 北京浪潮数据技术有限公司 | 一种日志记录方法、装置、设备及计算机可读存储介质 |
CN112713996B (zh) * | 2020-12-15 | 2023-05-12 | 中国联合网络通信集团有限公司 | 基于区块链的故障验证方法、服务器和终端 |
CN113434477B (zh) * | 2021-05-25 | 2023-08-04 | 延锋伟世通电子科技(上海)有限公司 | 保存日志文件的方法、系统、介质及服务器端 |
CN113221151A (zh) * | 2021-05-28 | 2021-08-06 | 数网金融有限公司 | 基于区块链的数据处理方法、装置及存储介质 |
CN114567502B (zh) * | 2022-03-04 | 2024-03-01 | 南京联成科技发展股份有限公司 | 一种基于过程管控的通信网络中可信安全日志管理的系统 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100583889C (zh) * | 2006-03-09 | 2010-01-20 | 华为技术有限公司 | 网络事件协议报文传输方法 |
CN100521623C (zh) * | 2007-05-22 | 2009-07-29 | 网御神州科技(北京)有限公司 | 高性能的Syslog日志处理和存储方法 |
CN101354718B (zh) * | 2008-07-23 | 2012-02-08 | 深圳市迅雷网络技术有限公司 | 确定文件包资源标识信息的方法及装置 |
US8620884B2 (en) * | 2008-10-24 | 2013-12-31 | Microsoft Corporation | Scalable blob storage integrated with scalable structured storage |
US20120218084A1 (en) * | 2011-02-25 | 2012-08-30 | Nokia Corporation | Method and apparatus for presenting printed media based on radio frequency memory tag detection |
CN102307185B (zh) * | 2011-06-27 | 2015-02-25 | 北京大学 | 适用于存储云内的数据隔离方法 |
CN103824069A (zh) * | 2014-03-19 | 2014-05-28 | 北京邮电大学 | 一种基于多主机日志关联的入侵检测方法 |
US10318746B2 (en) * | 2015-09-25 | 2019-06-11 | Mcafee, Llc | Provable traceability |
CN106296359A (zh) * | 2016-08-13 | 2017-01-04 | 深圳市樊溪电子有限公司 | 基于区块链技术的可信电力网络交易平台 |
CN106375317A (zh) * | 2016-08-31 | 2017-02-01 | 北京明朝万达科技股份有限公司 | 一种基于区块链的大数据安全认证方法和系统 |
CN106598490A (zh) * | 2016-11-25 | 2017-04-26 | 深圳前海微众银行股份有限公司 | 区块链数据的访问方法和区块链管理系统 |
CN106776894B (zh) * | 2016-11-29 | 2018-03-16 | 北京众享比特科技有限公司 | 日志数据库系统和同步方法 |
CN107070644B (zh) * | 2016-12-26 | 2020-02-28 | 北京科技大学 | 一种基于信任网络的去中心化公钥管理方法和管理系统 |
CN106789095B (zh) * | 2017-03-30 | 2020-12-08 | 腾讯科技(深圳)有限公司 | 分布式系统及消息处理方法 |
US20180285839A1 (en) * | 2017-04-04 | 2018-10-04 | Datient, Inc. | Providing data provenance, permissioning, compliance, and access control for data storage systems using an immutable ledger overlay network |
CN107103252A (zh) * | 2017-04-27 | 2017-08-29 | 电子科技大学 | 基于区块链的数据访问控制方法 |
CN107330694A (zh) * | 2017-07-03 | 2017-11-07 | 重庆小犀智能科技有限公司 | 基于区块链的版权交易系统以及交易方法 |
CN108900507B (zh) * | 2018-06-29 | 2020-12-22 | 全链通有限公司 | 区块链实名认证方法和系统 |
CN109190410B (zh) * | 2018-09-26 | 2020-05-19 | 华中科技大学 | 一种云存储环境下的基于区块链的日志行为审计方法 |
-
2019
- 2019-04-17 CN CN201910310734.2A patent/CN109902074B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN109902074A (zh) | 2019-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109902074B (zh) | 基于数据中心的日志存储方法和系统 | |
CN110084069B (zh) | 基于区块链的服务器日志监控方法和系统 | |
CN110049043B (zh) | 基于区块链的服务器日志监控方法和系统 | |
CN109729080B (zh) | 基于区块链域名系统的访问攻击防护方法和系统 | |
US8196186B2 (en) | Security architecture for peer-to-peer storage system | |
CN109714447B (zh) | 基于区块链域名系统的域名生成方法和系统 | |
Ling et al. | Protocol-level hidden server discovery | |
US11368450B2 (en) | Method for bidirectional authorization of blockchain-based resource public key infrastructure | |
CN110086790A (zh) | 基于数据中心的日志存储方法和系统 | |
CN108173827B (zh) | 基于区块链思维的分布式sdn控制平面安全认证方法 | |
KR20140023991A (ko) | 머신-대-머신 노드 소거 절차 | |
CN108809940B (zh) | 电网系统服务器与客户端交互加密方法 | |
KR101479973B1 (ko) | 부정 통신을 검출하면서 통신 무결성 및 익명성을 제공하는 공개-키 인프라스트럭처에 대한 방법 | |
CN111865993B (zh) | 身份认证管理方法、分布式系统及可读存储介质 | |
CN109391617B (zh) | 一种基于区块链的网络设备配置管理方法及客户端 | |
CN110048828A (zh) | 基于数据中心的日志存储方法和系统 | |
CN114338242B (zh) | 一种基于区块链技术的跨域单点登录访问方法及系统 | |
CN113392430B (zh) | 基于智能合约认证的数字资源管理方法及系统 | |
CN113395282A (zh) | 一种阻止第三方访问服务端资源的方法及系统 | |
CN110719167B (zh) | 一种基于区块链的带时效性的签密方法 | |
CN109951481B (zh) | 基于区块链网络相邻节点的信息处理方法和系统 | |
CN110213232B (zh) | 一种指纹特征和密钥双重验证方法和装置 | |
CN113645196A (zh) | 一种基于区块链与边缘辅助的物联网设备认证方法及系统 | |
CN116388998A (zh) | 一种基于白名单的审计处理方法和装置 | |
US11870899B2 (en) | Secure device access recovery based on validating encrypted target password from secure recovery container in trusted recovery device |
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 |