CN115277680A - 用于提高同步安全性的文件同步方法 - Google Patents
用于提高同步安全性的文件同步方法 Download PDFInfo
- Publication number
- CN115277680A CN115277680A CN202210911142.8A CN202210911142A CN115277680A CN 115277680 A CN115277680 A CN 115277680A CN 202210911142 A CN202210911142 A CN 202210911142A CN 115277680 A CN115277680 A CN 115277680A
- Authority
- CN
- China
- Prior art keywords
- synchronization
- file
- receiving end
- server
- source server
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 120
- 238000003860 storage Methods 0.000 claims abstract description 163
- 230000001360 synchronised effect Effects 0.000 claims abstract description 136
- 230000008569 process Effects 0.000 claims description 54
- 230000004044 response Effects 0.000 claims description 20
- 238000012546 transfer Methods 0.000 claims description 13
- 238000004891 communication Methods 0.000 claims description 11
- 238000005516 engineering process Methods 0.000 abstract description 10
- 239000003795 chemical substances by application Substances 0.000 description 24
- 238000010586 diagram Methods 0.000 description 18
- 238000004590 computer program Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 238000012795 verification Methods 0.000 description 3
- 230000000977 initiatory effect Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 239000007943 implant Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/101—Access control lists [ACL]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种用于提高同步安全性的文件同步方法。该方法包括:接收端服务器接收同步源服务器发送的文件同步信息,从文件同步信息中获取文件的目的存储路径,并判断同步源服务器是否具有将文件同步至目的存储路径的权限;在同步源服务器具有将文件同步至目的存储路径的权限的情况下,接收端服务器向同步源服务器发送允许同步的反馈消息;接收端服务器接收同步源服务器发送的同步文件,并将同步文件发送至中转目录;从中转目录中将同步文件发送至目的存储路径。通过本申请,解决了相关技术中通过rsync工具进行文件同步时,由于rsync工具支持向任意地址同步文件,存在安全隐患的问题。
Description
技术领域
本申请涉及文件同步技术领域,具体而言,涉及一种用于提高同步安全性的文件同步方法。
背景技术
文件同步是数据处理中的一种重要的处理过程,相关技术中可以利用rsync备份工具实现文件实时同步。
但是,一方面,rsync工具本身支持从任意源地址将文件同步至任意目的地址,也即,支持往目的服务器任意目录下同步下文件,在文件同步时,不仅需要给rsync工具所用用户提权,而且会导致接收端服务器上的文件存在可被任意篡改的威胁。另一方面,rsync工具本身同步文件需要目的服务器启动主机端口并运行相关服务程序,并且,rsync工具同步认证密码等重要信息都是记录在配置文件中,作为环境变量进行保存,在该场景下目的服务器容易被恶意攻击。
针对相关技术中通过rsync工具进行文件同步时,由于rsync工具支持向任意地址同步文件,存在安全隐患的问题,目前尚未提出有效的解决方案。
发明内容
本申请提供一种用于提高同步安全性的文件同步方法,以解决相关技术中通过rsync工具进行文件同步时,由于rsync工具支持向任意地址同步文件,存在安全隐患的问题。
根据本申请的一个方面,提供了一种用于提高同步安全性的文件同步方法。该方法包括:接收端服务器接收同步源服务器发送的文件同步信息,从文件同步信息中获取文件的目的存储路径,并判断同步源服务器是否具有将文件同步至目的存储路径的权限,其中,文件同步信息是同步源服务器接收到的文件同步请求中的信息;在同步源服务器具有将文件同步至目的存储路径的权限的情况下,接收端服务器向同步源服务器发送允许同步的反馈消息;接收端服务器接收同步源服务器发送的同步文件,并将同步文件发送至中转目录,其中,同步源服务器在接收到允许同步的反馈消息的情况下,通过文件同步请求对应的文件同步任务发送同步文件;从中转目录中将同步文件发送至目的存储路径。
可选地,判断同步源服务器是否具有将文件同步至目的存储路径的权限包括:判断接收端服务器中是否存在目的存储路径;在接收端服务器中存在目的存储路径的情况下,判断目的存储路径是否开放数据写入权限;在目的存储路径开放数据写入权限的情况下,确定同步源服务器具有将文件同步至目的存储路径的权限。
可选地,判断同步源服务器是否具有将文件同步至目的存储路径的权限包括:判断目的存储路径是否位于白名单内,其中,白名单存储在接收端服务器中,白名单内存储有允许同步源服务器写入数据的路径;在目的存储路径位于白名单内的情况下,确定同步源服务器是否具有将文件同步至目的存储路径的权限。
可选地,在接收端服务器接收同步源服务器发送的同步文件,并将同步文件发送至中转目录之后,方法还包括:判断目的存储路径是否位于白名单内,其中,白名单存储在接收端服务器中,白名单内存储有允许同步源服务器写入数据的路径;在目的存储路径位于白名单内的情况下,执行从中转目录中将同步文件发送至目的存储路径的步骤。
可选地,白名单中包含多个同步源服务器,允许同步源服务器写入数据的路径分别作为同步源服务器的关联路径存储在白名单中,判断目的存储路径是否位于白名单内包括:判断同步源服务器是否在白名单内;在同步源服务器在白名单内的情况下,判断目的存储路径是否在同步源服务器的关联路径中;在目的存储路径在同步源服务器的关联路径中的情况下,确定目的存储路径位于白名单内。
可选地,白名单为加密白名单,用于解密加密白名单的密钥存储在接收端服务器的代理模块中,代理模块用于控制文件同步任务的执行进程,判断同步源服务器是否在白名单内包括:代理模块通过密钥解密加密白名单,得到解密后的白名单;代理模块判断同步源服务器是否在解密后的白名单内。
可选地,接收端服务器接收同步源服务器发送的同步文件,并将同步文件发送至中转目录包括:在备份接收程序接收到备份工具发送的同步文件的情况下,通过接收端服务器中的代理模块控制备份接收程序将同步文件发送至中转目录,其中,备份工具安装在同步源服务器上,用于将文件从同步源服务器同步至接收端服务器,备份接收程序安装在接收端服务器上,用于接收备份工具传输的文件,代理模块用于在接收端服务器控制文件同步任务的执行进程。
可选地,接收端服务器接收同步源服务器发送的同步文件包括:接收端服务器接收同步源服务器发送的端口开放指令以及进程启动指令;基于端口开放指令开放接收端服务器与同步源服务器之间的通讯端口,基于进程启动指令启动备份接收程序,并向同步源服务器发送指令完成响应信息,其中,指令完成响应信息用于指示端口开放指令以及进程启动指令均执行完毕;通过备份接收程序接收备份工具发送的同步文件,并在检测到同步源服务器发送的端口关闭指令和进程关闭指令的情况下,关闭备份工具的通讯端口,并关闭备份接收程序。
根据本申请的另一方面,提供了另一种用于提高同步安全性的文件同步方法。该方法包括:同步源服务器接收目标应用程序发送的文件同步请求,并向接收端服务器发送文件同步信息,其中,文件同步信息是文件同步请求中的信息;在接收到接收端服务器基于文件同步信息发送的允许同步的反馈消息的情况下,执行文件同步请求对应的文件同步任务,其中,文件同步任务用于将同步文件发送至接收端服务器;接收到接收端服务器发送的禁止同步的反馈消息,或在预设时间段内未收到接收端服务器的反馈消息的情况下,向目标应用程序发送同步失败的反馈消息。
可选地,在向接收端服务器发送文件同步信息之前,方法还包括:判断文件同步请求对应的文件同步任务是否在任务清单内,其中,任务清单内记录有待执行的文件同步任务;在文件同步任务在任务清单内的情况下,向目标应用程序发送文件正在同步的反馈消息;在文件同步任务不在任务清单内的情况下,执行向接收端服务器发送文件同步信息的步骤。
根据本申请的另一方面,提供了一种用于提高同步安全性的文件同步装置。该装置包括:第一接收单元,用于通过接收端服务器接收同步源服务器发送的文件同步信息,从文件同步信息中获取文件的目的存储路径,并判断同步源服务器是否具有将文件同步至目的存储路径的权限,其中,文件同步信息是同步源服务器接收到的文件同步请求中的信息;第一发送单元,用于在同步源服务器具有将文件同步至目的存储路径的权限的情况下,接收端服务器向同步源服务器发送允许同步的反馈消息;第二接收单元,用于通过接收端服务器接收同步源服务器发送的同步文件,并将同步文件发送至中转目录,其中,同步源服务器在接收到允许同步的反馈消息的情况下,通过文件同步请求对应的文件同步任务发送同步文件;第二发送单元,用于从中转目录中将同步文件发送至目的存储路径。
根据本申请的另一方面,提供了另一种用于提高同步安全性的文件同步装置。该装置包括:第三接收单元,用于通过同步源服务器接收目标应用程序发送的文件同步请求,并向接收端服务器发送文件同步信息,其中,文件同步信息是文件同步请求中的信息;第二执行单元,用于在接收到接收端服务器基于文件同步信息发送的允许同步的反馈消息的情况下,执行文件同步请求对应的文件同步任务,其中,文件同步任务用于将同步文件发送至接收端服务器;第三发送单元,用于在接收到接收端服务器发送的禁止同步的反馈消息,或在预设时间段内未收到接收端服务器的反馈消息的情况下,向目标应用程序发送同步失败的反馈消息。
根据本发明实施例的另一方面,还提供了一种计算机存储介质,计算机存储介质用于存储程序,其中,程序运行时控制计算机存储介质所在的设备执行一种用于提高同步安全性的文件同步方法。
根据本发明实施例的另一方面,还提供了一种电子装置,包含处理器和存储器;存储器中存储有计算机可读指令,处理器用于运行计算机可读指令,其中,计算机可读指令运行时执行一种用于提高同步安全性的文件同步方法。
通过本申请,采用以下步骤:接收端服务器接收同步源服务器发送的文件同步信息,从文件同步信息中获取文件的目的存储路径,并判断同步源服务器是否具有将文件同步至目的存储路径的权限,其中,文件同步信息是同步源服务器接收到的文件同步请求中的信息;在同步源服务器具有将文件同步至目的存储路径的权限的情况下,接收端服务器向同步源服务器发送允许同步的反馈消息;接收端服务器接收同步源服务器发送的同步文件,并将同步文件发送至中转目录,其中,同步源服务器在接收到允许同步的反馈消息的情况下,通过文件同步请求对应的文件同步任务发送同步文件;从中转目录中将同步文件发送至目的存储路径,解决了相关技术中通过rsync工具进行文件同步时,由于rsync工具支持向任意地址同步文件,存在安全隐患的问题。通过在同步源服务器具有将文件同步至目的存储路径的权限的情况下,先将文件发送至中转目录,再从中转目录转发至目的路径,进而达到了减少同步工具执行文件同步的安全隐患的效果。
附图说明
构成本申请的一部分的附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例提供的文件同步系统的示意图;
图2是根据本申请实施例提供的可选的文件同步系统的示意图;
图3是根据本申请实施例提供的一种用于提高同步安全性的文件同步方法的流程图;
图4是根据本申请实施例提供的可选的用于提高同步安全性的文件同步方法的示意图一;
图5是根据本申请实施例提供的通过白名单判断目的路径的合法性的示意图;
图6是根据本申请实施例提供的另一种用于提高同步安全性的文件同步方法的流程图;
图7是根据本申请实施例提供的可选的用于提高同步安全性的文件同步方法的示意图二;
图8是根据本申请实施例提供的用于提高同步安全性的文件同步装置的示意图;
图9是根据本申请实施例提供的另一种用于提高同步安全性的文件同步装置的示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,本公开所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于展示的数据、分析的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
为了便于描述,以下对本申请实施例涉及的部分名词或术语进行说明:
Rsync:linux系统下的数据镜像备份工具。使用快速增量备份工具Remote Sync可以远程同步,支持本地复制,或者与其他SSH、rsync主机同步。
实施例1
根据本申请的实施例,提供了一种文件同步系统。
图1是根据本申请实施例的文件同步系统的示意图。如图1所示,该系统包括同步源服务器101和接收端服务器102。
需要说明的是,同步源服务器101和接收端服务器102的数量均不作限定,同步源服务器101和接收端服务器102可以是一对多的关系,也可以是多对一的关系,还可以是多对多的关系,即一个同步源服务器101可以同时向多个接收端服务器102同步文件,一个接收端服务器102也可以同时接收来自于多个同步源服务器101的同步文件。
同步源服务器101和接收端服务器102之间通过经安全认证的通信通道进行数据传输,通信通道需依赖其它服务和应用进行建立及维护,在一种实施方式中,同步源服务器101与接收端服务器102之间已建立了HTTPS安全认证交互通道,同步源服务器101通过HTTPS通道向接收端服务器102下发指令,接收端服务器102通过HTTPS通道向同步源服务器101返回指令完成结果等。需要说明的是,本实施例的通信通道包括但不限于HTTPS连接。
在一种可选的实施例中,如图2所示,同步源服务器101运行并维护同步任务管理器和备份工具,同步任务管理器是一个功能应用模块,以系统后台进程或系统服务等方式常驻并运行于同步源服务器101上,并开放部分端口以接收目标应用程序(图2中的上层应用系统)发出的文件同步请求,备份工具可以为rsync工具,通过rsync工具执行同步请求所指示的文件同步任务。
接收端服务器102运行并维护代理模块(同步任务接收端代理)和备份工具的接收端程序,同步任务接收端代理是一个功能应用模块,对接收端服务器102的操作系统提供功能入口,以响应来自HTTPS安全认证通道的请求。备份接收程序可以为rsync工具的接收端程序,接收rsync工具传输的文件,并转发至指定路径,从而完成文件同步任务。
需要说明的是,上层应用包括但不限于任何能够发起请求的功能模块或应用,可运行于任意服务器上,如图2所示,上层应用可以运行在同步源服务器101和接收端服务器102之外的服务器上,上层应用也可以运行在同步源服务器101或接收端服务器102上,其中请求形式没有具化,可以是HTTP请求也可以是其它方式的请求,具体取决于同步任务管理器接收请求命令方式的设计和实现。
在执行文件同步任务的过程中,同步任务管理器维护有一份同步任务清单,通过下发同步控制命令控制接收端的代理模块配合完成同步准备工作和收尾工作,辅以同步任务监控实现同步工作的可重传机制,并借助rsync工具完成大文件的快速同步。其中,同步任务清单记录当前正在同步的文件相关信息、接收端服务器102IP、文件的源存储路径、接收端文件存储路径、同步发起时间戳,文件相关信息包括文件名、文件MD5、文件大小等。
同步任务接收端代理同样维护有一份同步任务清单,同步任务接收端代理接收来自同步任务管理器下发的同步控制命令,根据命令完成具体的操作,同时负责对rsync工具接收端进程的管理,借以rsync工具接收端进程接收来自同步任务管理器的同步文件,并对同步结果检查后跟同步任务管理器反馈同步进展情况,其中,同步任务清单记录了当前正在同步的文件相关信息、文件的源存储路径、接收端文件存储路径、同步源服务器101IP地址等,文件相关信息包括文件名、文件MD5、文件大小等。
需要说明的是,同步源服务器101IP地址可记录多个,对应于来自不同同步源服务器101发起的对同一个文件的同步请求。文件存储路径也可记录多个,对应于来自不同同步任务对同一个文件同步至不同路径下的需求。在上述情况下,同步文件只需借助rsync工具在服务器间传递一次,同步完成之后首先存放于中转路径,再由中转路径拷贝到不同存储路径下,即实现相同文件只需要同步一次,进一步提高文件同步可靠性。
基于rsync工具的可复用性,同步任务管理器可以维护和处理多个同步任务,同步任务接收端代理也可以同时处理多个同步文件的接收过程。其中,对于同步任务管理器来说,同一个同步任务的判别标准为两个任务对应的文件名、文件大小、文件MD5、接收端服务器102IP地址以及接收端文件存储路径均相同。而对于同步任务接收端代理来说,同一个同步任务的判别标准为两个任务对应的文件名、文件大小、文件MD5、同步源服务器101IP地址以及所接收文件的存储路径均相同。需要说明的是,同步任务清单的存储方式包括但不局限于文件,但不论基于哪个方式存储,对于同步任务清单的操作都是互斥的,即一次只能有一个同步任务读或者写。
此外,需要说明的是,本实施例将文件大小超过100GB的文件称为大文件,本实施例的文件同步方式是出于对该类文件在通过HTTP等方式同步时可能存在耗时很长、同步过程容易断开连接等问题而提出的,但本实施例还适用于其他大小的文件的同步。
实施例2
根据本申请的实施例,提供了一种用于提高同步安全性的文件同步方法。
图3是根据本申请实施例的用于提高同步安全性的文件同步方法的流程图。如图3所示,该方法包括以下步骤:
步骤S301,接收端服务器接收同步源服务器发送的文件同步信息,从文件同步信息中获取文件的目的存储路径,并判断同步源服务器是否具有将文件同步至目的存储路径的权限,其中,文件同步信息是同步源服务器接收到的文件同步请求中的信息。
需要说明的是,接收端服务器是用于接收同步文件的服务器,同步源服务器是用于执行文件同步的服务器,同步源服务器在接收到上层应用系统发出的文件同步请求之后,解析文件同步请求,得到文件同步信息,向接收端服务器发送文件同步信息,由接收端服务器根据文件同步信息决定是否运行执行文件同步。
具体地,文件同步信息可以包括待同步文件的文件名、文件MD5值、文件大小以及期望该文件在接收端服务器上的存储路径等信息。需要说明的是,同步源服务器通过同步工具执行文件同步,例如,Rsync工具,为了避免同步源服务器通过同步工具将文件传到接收端服务器的任意路径,需要先从文件同步信息中获取文件的目的存储路径,并通过接收端服务器判断同步源服务器是否具有将文件同步至目的存储路径的权限。
步骤S302,在同步源服务器具有将文件同步至目的存储路径的权限的情况下,接收端服务器向同步源服务器发送允许同步的反馈消息。
具体地,在同步源服务器具有将文件同步至目的存储路径的权限的情况下,说明目的路径合法,同步源服务器将文件传到目的路径,不会导致接收端服务器中存储的文件被恶意篡改,接收端服务器向同步源服务器发送允许同步的反馈消息,同步源服务器可以通过同步工具执行文件同步。反之,在同步源服务器没有将文件同步至目的存储路径的权限的情况下,接收端服务器向同步源服务器发送拒绝同步的反馈消息。
步骤S303,接收端服务器接收同步源服务器发送的同步文件,并将同步文件发送至中转目录,其中,同步源服务器在接收到允许同步的反馈消息的情况下,通过文件同步请求对应的文件同步任务发送同步文件。
步骤S304,从中转目录中将同步文件发送至目的存储路径。
具体地,同步源服务器通过同步工具将文件同步至接收端服务器,是将同步文件发送至接收端服务器的中转目录,从中转目录再发送至目的路径,可以在中转目录对文件进行检测,避免了同步源服务器直接将文件写入目的路径,导致接收端服务器中存储的文件被恶意篡改的风险,或同步源服务器直接将恶意程序植入接收端服务器的风险。
本申请实施例提供的用于提高同步安全性的文件同步方法,通过接收端服务器接收同步源服务器发送的文件同步信息,从文件同步信息中获取文件的目的存储路径,并判断同步源服务器是否具有将文件同步至目的存储路径的权限,其中,文件同步信息是同步源服务器接收到的文件同步请求中的信息;在同步源服务器具有将文件同步至目的存储路径的权限的情况下,接收端服务器向同步源服务器发送允许同步的反馈消息;接收端服务器接收同步源服务器发送的同步文件,并将同步文件发送至中转目录,其中,同步源服务器在接收到允许同步的反馈消息的情况下,通过文件同步请求对应的文件同步任务发送同步文件;从中转目录中将同步文件发送至目的存储路径,解决了相关技术中通过rsync工具进行文件同步时,由于rsync工具支持向任意地址同步文件,存在安全隐患的问题。通过在同步源服务器具有将文件同步至目的存储路径的权限的情况下,先将文件发送至中转目录,再从中转目录转发至目的路径,进而达到了减少同步工具执行文件同步的安全隐患的效果。
可选地,在本申请实施例提供的用于提高同步安全性的文件同步方法中,接收端服务器接收同步源服务器发送的同步文件,并将同步文件发送至中转目录包括:在备份接收程序接收到备份工具发送的同步文件的情况下,通过接收端服务器中的代理模块控制备份接收程序将同步文件发送至中转目录,其中,备份工具安装在同步源服务器上,用于将文件从同步源服务器同步至接收端服务器,备份接收程序安装在接收端服务器上,用于接收备份工具传输的文件,代理模块用于在接收端服务器控制文件同步任务的执行进程。
具体地,如图4所示,同步源服务器运行并维护同步任务管理器和备份工具,备份工具可以为rsync工具,同步任务管理器控制rsync工具将待同步的文件同步至接收端服务器。接收端服务器102运行并维护代理模块(同步任务接收端代理)和备份工具的接收端程序,备份接收程序可以为rsync工具的接收端程序,接收rsync工具传输的同步文件,代理模块是一个功能应用模块,由代理模块控制同步结果的检查过程,在同步结果完整的情况下,代理模块控制备份接收程序将同步文件临时存放于中转目录,并从中转目录将同步文件从中转目录拷贝到指定路径。
可选地,在本申请实施例提供的用于提高同步安全性的文件同步方法中,判断同步源服务器是否具有将文件同步至目的存储路径的权限包括:判断接收端服务器中是否存在目的存储路径;在接收端服务器中存在目的存储路径的情况下,判断目的存储路径是否开放数据写入权限;在目的存储路径开放数据写入权限的情况下,确定同步源服务器具有将文件同步至目的存储路径的权限。
具体地,判断同步源服务器是否具有将文件同步至目的存储路径的权限,即为判断接收端服务器的文件存储路径是否合法,文件存储路径是否合法的判断包括对该路径是否存在,以及该路径是否对外开放了同步写权限等方面的判断,如果文件路径不存在或未开放同步写权限,则确定文件存储路径不合法,同步源服务器没有将文件同步至目的存储路径的权限,反之,则确定文件存储路径合法,同步源服务器具有将文件同步至目的存储路径的权限。
还可以借助路径的白名单来判断同步源服务器是否具有将文件同步至目的存储路径的权限,可选地,在本申请实施例提供的用于提高同步安全性的文件同步方法中,判断同步源服务器是否具有将文件同步至目的存储路径的权限包括:判断目的存储路径是否位于白名单内,其中,白名单存储在接收端服务器中,白名单内存储有允许同步源服务器写入数据的路径;在目的存储路径位于白名单内的情况下,确定同步源服务器是否具有将文件同步至目的存储路径的权限。
如图5所示,通过接收端服务器的同步任务接收端代理模块来维护和管理白名单、以及对同步源节点服务器发起的同步任务信息进行合法性验证。具体地,同步任务接收端代理模块设置有白名单管理接口,供用户进行白名单管理,用户通过白名单管理接口将白名单保存至接收端服务器,白名单存储有开放同步写权限的路径。同步任务信息进行合法性验证,即为对其中声明的“期望在接收端节点服务器上的存储路径”作校验,跟白名单中的内容作对比,白名单中存在即认为合法,说明同步源服务器是否具有将文件同步至目的存储路径的权限,否则认为不合法。
通过本实施例,借助白名单对待同步的文件的路径进行合法性校验,达到了防止上层应用借助同步任务管理器向接收端服务器越权写文件的效果,保证了接收端服务器的存储安全。
可选地,在本申请实施例提供的用于提高同步安全性的文件同步方法中,白名单为加密白名单,用于解密加密白名单的密钥存储在接收端服务器的代理模块中,代理模块用于控制文件同步任务的执行进程,判断同步源服务器是否在白名单内包括:代理模块通过密钥解密加密白名单,得到解密后的白名单;代理模块判断同步源服务器是否在解密后的白名单内。
具体地,为了防止白名单内容泄露和被篡改、防止攻击者绕过白名单管理接口修改白名单,在本实施例中对白名单中的内容进行加密存储,同时,将密钥存储在接收端服务器,在同步源服务器向接收端服务器发送文件同步信息时,获取秘钥,并解密白名单中的内容,通过白名单对待同步的文件的存储路径的合法性进行验证,如果在白名单中存在待同步的文件的存储路径,则说明同步源服务器是否具有将文件同步至目的存储路径的权限。通过本实施例,使得攻击者无法轻易获知加密白名单中的数据的功能含义,从而降低接收端服务器被攻击可能性。
可选地,在本申请实施例提供的用于提高同步安全性的文件同步方法中,白名单中包含多个同步源服务器,允许同步源服务器写入数据的路径分别作为同步源服务器的关联路径存储在白名单中,判断目的存储路径是否位于白名单内包括:判断同步源服务器是否在白名单内;在同步源服务器在白名单内的情况下,判断目的存储路径是否在同步源服务器的关联路径中;在目的存储路径在同步源服务器的关联路径中的情况下,确定目的存储路径位于白名单内。
具体地,白名单可以为一个文件或者一个数据库表,其中内容指示哪些同步源服务器IP允许写入哪些目录,如无特殊指定同步源服务器IP,则表示允许写入目录对所有的同步源服务器开放。在判断目的存储路径是否位于白名单内时,先判断同步源服务器是否在白名单内,再判断目的存储路径是否在同步源服务器的关联路径中,从而确定目的存储路径是否位于白名单内。
需要说明的是,在将同步文件发送至中转目录之前,存在白名单被绕过的风险,可选地,在本申请实施例提供的用于提高同步安全性的文件同步方法中,在接收端服务器接收同步源服务器发送的同步文件,并将同步文件发送至中转目录之后,方法还包括:判断目的存储路径是否位于白名单内,其中,白名单存储在接收端服务器中,白名单内存储有允许同步源服务器写入数据的路径;在目的存储路径位于白名单内的情况下,执行从中转目录中将同步文件发送至目的存储路径的步骤。
具体地,在将同步文件发送至中转目录之后,将文件从中转目录转发至指定路径之前,再执行依次文件存储路径的合法性校验,从而进一步保证了接收端服务器存储安全,具体的,还可以通过白名单的方式校验文件存储路径的合法性,具体方式和上述实施例相同,本实施例不再赘述。
为了进一步提高接收端服务器安全性,可选地,在本申请实施例提供的用于提高同步安全性的文件同步方法中,接收端服务器接收同步源服务器发送的同步文件包括:接收端服务器接收同步源服务器发送的端口开放指令以及进程启动指令;基于端口开放指令开放接收端服务器与同步源服务器之间的通讯端口,基于进程启动指令启动备份接收程序,并向同步源服务器发送指令完成响应信息,其中,指令完成响应信息用于指示端口开放指令以及进程启动指令均执行完毕;通过备份接收程序接收备份工具发送的同步文件,并在检测到同步源服务器发送的端口关闭指令和进程关闭指令的情况下,关闭备份工具的通讯端口,并关闭备份接收程序。
具体地,同步源服务器向接收端服务器发送端口开放指令以及进程启动指令,端口开放指令指使接收端服务器开放rsync工具同步通讯端口,进程启动指令指使接收端服务器运行rsync接收端程序。在接收到端口开放指令后,接收端服务器检查自身防火墙规则是否已放行rsync工具同步使用的主机端口,如已放行则无需进行操作,如没有放行则配置相关规则放行端口。在接收到进程启动指令后,接收端服务器检查自身是否已启动运行rsync工具的接收端程序的进程,如已开启则无需进行操作,如没有开启则启动rsync工具的接收端程序的进程。在已放行rsync工具同步使用的主机端口,并启动rsync工具的接收端程序的进程的情况下,接收端服务器向同步源服务器返回指令完成响应信息。
处于安全性考虑,同步目标服务器主机端口无需长期开启,相关服务程序也无需长期保持运行,进一步的,在文件同步任务执行完毕之后,同步源服务器向接收端服务器发送端口关闭指令和进程关闭指令,接收端服务器响应端口关闭指令以关闭rsync工具同步使用的主机端口,以保证在没有同步任务时接收端服务器不对外暴露不需要端口,接收端服务器响应进程关闭指令以关闭rsync工具的接收端程序的进程,尽量让接收端服务器不开启非必要进程,从而使得接收端服务器不容易处于一个易被攻击的状态,提高接收端服务器安全性。
通过本实施例,同步任务管理器在执行同步前通知目标服务器开启主机端口并运行相关服务程序,在同步任务结束后,由同步任务接收端代理关闭主机端口和停止运行相关服务程序,为借助rsync工具实现文件同步的场景提供了可靠性和安全性保障。
实施例3
根据本申请的实施例,提供了另一种用于提高同步安全性的文件同步方法。
图6是根据本申请实施例的另一种用于提高同步安全性的文件同步方法的流程图。如图6所示,该方法包括以下步骤:
步骤S601,同步源服务器接收目标应用程序发送的文件同步请求,并向接收端服务器发送文件同步信息,其中,文件同步信息是文件同步请求中的信息。
具体地,上层应用在具有同步文件的需求的情况下,向同步源服务器发起同步请求,请求内容包括同步文件名、同步文件所在路径、接收端服务器IP地址、接收端同步文件存储路径等信息,同步源服务器解析文件同步请求,得到文件同步信息,并向接收端服务器发送文件同步信息。
步骤S602,在接收到接收端服务器基于文件同步信息发送的允许同步的反馈消息的情况下,执行文件同步请求对应的文件同步任务,其中,文件同步任务用于将同步文件发送至接收端服务器。
具体地,接收端服务器接收到文件同步信息后,根据自身配置检查文件同步信息中的接收端文件存储路径是否合法,具体包括对该路径是否存在以及该路径是否对外开放了同步写权限等方面的检查。如果文件存储路径检查合法,则向同步源服务器发送允许同步的反馈消息,同步源服务器通过rsync工具执行文件同步任务,将同步文件发送至接收端服务器。
步骤S603,接收到接收端服务器发送的禁止同步的反馈消息,或在预设时间段内未收到接收端服务器的反馈消息的情况下,向目标应用程序发送同步失败的反馈消息。
具体地,一方面,接收端服务器接收到文件同步信息后,如果检查到文件存储路径不合法,向同步任务管理器返回“拒绝同步”的响应,同步任务管理器给上层应用返回“同步失败”的响应。另一方面,接收端服务器接收到文件同步信息后,长时间没有作出响应,同步任务管理器也给上层应用返回“同步失败”的响应,“同步失败”的响应指示同步任务结束。
可选地,在本申请实施例提供的用于提高同步安全性的文件同步方法中,在向接收端服务器发送文件同步信息之前,方法还包括:判断文件同步请求对应的文件同步任务是否在任务清单内,其中,任务清单内记录有待执行的文件同步任务;在文件同步任务在任务清单内的情况下,向目标应用程序发送文件正在同步的反馈消息;在文件同步任务不在任务清单内的情况下,执行向接收端服务器发送文件同步信息的步骤。
具体地,在同步源服务器接收目标应用程序发送的文件同步请求之后,同步源服务器中的同步任务管理器先检查同步任务清单,判断所请求的文件是否存在相同的同步任务,判断标准为文件名、文件路径、接收端服务器IP地址均相同。如果存在相同的同步任务,表示该文件正在同步中,同步任务管理器给上层应用返回“文件同步中”的响应,同步任务结束。如果不存在相同的同步任务,同步任务管理器向接收端服务器发起同步任务相关消息请求,再由接收端服务器判断文件存储路径是否合法,从而进一步确定是否允许文件同步任务的执行。
本申请实施例提供的用于提高同步安全性的文件同步方法,通过步骤同步源服务器接收目标应用程序发送的文件同步请求,并向接收端服务器发送文件同步信息,其中,文件同步信息是文件同步请求中的信息;在接收到接收端服务器基于文件同步信息发送的允许同步的反馈消息的情况下,执行文件同步请求对应的文件同步任务,其中,文件同步任务用于将同步文件发送至接收端服务器;接收到接收端服务器发送的禁止同步的反馈消息,或在预设时间段内未收到接收端服务器的反馈消息的情况下,向目标应用程序发送同步失败的反馈消息,解决了相关技术中通过rsync工具进行文件同步时,由于rsync工具支持向任意地址同步文件,存在安全隐患的问题。通过在同步源服务器具有将文件同步至目的存储路径的权限的情况下,先将文件发送至中转目录,再从中转目录转发至目的路径,进而达到了减少同步工具执行文件同步的安全隐患的效果。
实施例4
根据本申请的实施例,提供了另一种用于提高同步安全性的文件同步方法。
图7是根据本申请实施例的另一种用于提高同步安全性的文件同步方法的流程图。如图7所示,该方法包括以下步骤:
上层应用向同步源服务器的同步任务管理器发起同步请求,请求内容包括同步文件名、同步文件所在路径、接收端服务器IP地址、接收端同步文件存储路径等信息。
同步任务管理器接受到同步请求后,检查自身的同步任务清单,判断同步请求所请求的文件是否存在相同的同步任务,判断的标准为文件名、文件路径、接收端服务器IP地址等信息是否均相同。
如果同步任务清单存在对应同步任务,表示所请求同步的文件正在同步中,同步任务管理器给上层应用返回“文件同步中”的响应,同步任务结束。如果同步任务清单不存在对应同步任务,同步任务管理器向指定接收端服务器发起同步任务相关消息请求。
如果接收端服务器没有作出响应,同步任务管理器给上层应用返回“同步失败”的响应,同步任务结束。如果接收端服务器进行了响应,是指接收端服务器接收到同步任务相关消息的请求后,根据自身配置检查同步任务相关信息中的接收端文件存储路径是否合法,包括对该路径是否存在以及该路径是否对外开放了同步写权限等方面的检查。如果文件存储路径检查不合法,接收端服务器向同步任务管理器返回“拒绝同步”的响应,如果文件存储路径检查合法,接收端服务器向同步任务管理器返回“可以同步”的响应,同步任务管理器给上层应用返回“文件同步中”的响应,同步任务管理器开始向接收端服务器同步文件,同步任务请求处理结束。
其中,在进行文件同步时,同步源服务器通过端口开放指令指使接收端服务器开放rsync工具同步通讯端口,同步源服务器通过进程启动指令指使接收端服务器运行rsync接收端程序。在端口和进程都开启之后,同步源节点服务器上的同步任务管理器使用rsync工具将文件同步至接收端节点服务器上,接收端节点服务器上的同步任务接收端代理通过rsync工具接收端进程接收同步文件,接收端节点服务器上的同步任务接收端代理将同步文件临时存放于中转目录,接收端节点服务器上的同步任务接收端代理将同步文件从中转目录拷贝到指定路径。同步任务结束后,关闭主机端口和停止运行相关服务程序。
通过本实施例,一方面,同步任务管理器会根据同步任务清单判断是否接受上层应用的同步请求,避免了同步时间过长导致上层应用误以为同步过程出问题而重复发起同步请的情况。另一方面,接收端服务器上同步任务接收端代理会对文件存储路径做合法性验证,避免了上层应用借助同步任务管理器越权写文件,且同步任务管理器保证同步源服务器只能向同步目标服务器的中转目录下同步文件,无法直接向目标目录同步文件。也即,按需开关主机端口,对同步目的地址写入作限制管理,并通过同步文件中转替代直接写入,保护了目标服务器主机安全,提高文件同步安全性,。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例还提供了一种用于提高同步安全性的文件同步装置,需要说明的是,本申请实施例的用于提高同步安全性的文件同步装置可以用于执行本申请实施例所提供的用于用于提高同步安全性的文件同步方法。以下对本申请实施例提供的用于提高同步安全性的文件同步装置进行介绍。
实施例5
图8是根据本申请实施例的用于提高同步安全性的文件同步装置的示意图。如图8所示,该装置包括:第一接收单元801、第一发送单元801、第二接收单元803和第二发送单元804。
具体的,第一接收单元801,用于通过接收端服务器接收同步源服务器发送的文件同步信息,从文件同步信息中获取文件的目的存储路径,并判断同步源服务器是否具有将文件同步至目的存储路径的权限,其中,文件同步信息是同步源服务器接收到的文件同步请求中的信息。
第一发送单元801,用于在同步源服务器具有将文件同步至目的存储路径的权限的情况下,接收端服务器向同步源服务器发送允许同步的反馈消息。
第二接收单元803,用于通过接收端服务器接收同步源服务器发送的同步文件,并将同步文件发送至中转目录,其中,同步源服务器在接收到允许同步的反馈消息的情况下,通过文件同步请求对应的文件同步任务发送同步文件。
第二发送单元804,用于从中转目录中将同步文件发送至目的存储路径。
本申请实施例提供的用于提高同步安全性的文件同步装置,通过第一接收单元801,用于通过接收端服务器接收同步源服务器发送的文件同步信息,从文件同步信息中获取文件的目的存储路径,并判断同步源服务器是否具有将文件同步至目的存储路径的权限,其中,文件同步信息是同步源服务器接收到的文件同步请求中的信息;第一发送单元801,用于在同步源服务器具有将文件同步至目的存储路径的权限的情况下,接收端服务器向同步源服务器发送允许同步的反馈消息;第二接收单元803,用于通过接收端服务器接收同步源服务器发送的同步文件,并将同步文件发送至中转目录,其中,同步源服务器在接收到允许同步的反馈消息的情况下,通过文件同步请求对应的文件同步任务发送同步文件;第二发送单元804,用于从中转目录中将同步文件发送至目的存储路径,解决了相关技术中通过rsync工具进行文件同步时,由于rsync工具支持向任意地址同步文件,存在安全隐患的问题,通过在同步源服务器具有将文件同步至目的存储路径的权限的情况下,先将文件发送至中转目录,再从中转目录转发至目的路径,进而达到了减少同步工具执行文件同步的安全隐患的效果。
可选地,在本申请实施例提供的用于提高同步安全性的文件同步装置中,第一接收单元801包括判断模块,判断模块用于判断同步源服务器是否具有将文件同步至目的存储路径的权限,判断模块包括:第一判断子模块,用于判断接收端服务器中是否存在目的存储路径;第二判断子模块,用于在接收端服务器中存在目的存储路径的情况下,判断目的存储路径是否开放数据写入权限;第一确定子模块,用于在目的存储路径开放数据写入权限的情况下,确定同步源服务器具有将文件同步至目的存储路径的权限。
可选地,在本申请实施例提供的用于提高同步安全性的文件同步装置中,判断模块还包括:第三判断子模块,用于判断目的存储路径是否位于白名单内,其中,白名单存储在接收端服务器中,白名单内存储有允许同步源服务器写入数据的路径;第二确定子模块,用于在目的存储路径位于白名单内的情况下,确定同步源服务器是否具有将文件同步至目的存储路径的权限。
可选地,在本申请实施例提供的用于提高同步安全性的文件同步装置中,装置还包括:第一判断单元,用于在接收端服务器接收同步源服务器发送的同步文件,并将同步文件发送至中转目录之后,判断目的存储路径是否位于白名单内,其中,白名单存储在接收端服务器中,白名单内存储有允许同步源服务器写入数据的路径;第一执行单元,用于在目的存储路径位于白名单内的情况下,执行从中转目录中将同步文件发送至目的存储路径的步骤。
可选地,在本申请实施例提供的用于提高同步安全性的文件同步装置中,白名单中包含多个同步源服务器,允许同步源服务器写入数据的路径分别作为同步源服务器的关联路径存储在白名单中,第一判断单元包括:第四判断子模块,用于判断同步源服务器是否在白名单内;第五判断子模块,用于在同步源服务器在白名单内的情况下,判断目的存储路径是否在同步源服务器的关联路径中;第三确定子模块,用于在目的存储路径在同步源服务器的关联路径中的情况下,确定目的存储路径位于白名单内。
可选地,在本申请实施例提供的用于提高同步安全性的文件同步装置中,白名单为加密白名单,用于解密加密白名单的密钥存储在接收端服务器的代理模块中,代理模块用于控制文件同步任务的执行进程,第一判断单元还包括:解密模块,用于通过代理模块通过密钥解密加密白名单,得到解密后的白名单;判断执行模块,用于通过代理模块判断同步源服务器是否在解密后的白名单内。
可选地,在本申请实施例提供的用于提高同步安全性的文件同步装置中,第二接收单元803包括:控制模块,用于在备份接收程序接收到备份工具发送的同步文件的情况下,通过接收端服务器中的代理模块控制备份接收程序将同步文件发送至中转目录,其中,备份工具安装在同步源服务器上,用于将文件从同步源服务器同步至接收端服务器,备份接收程序安装在接收端服务器上,用于接收备份工具传输的文件,代理模块用于在接收端服务器控制文件同步任务的执行进程。
可选地,在本申请实施例提供的用于提高同步安全性的文件同步装置中,第二接收单元803包括:第一接收模块,用于通过接收端服务器接收同步源服务器发送的端口开放指令以及进程启动指令;开放模块,用于基于端口开放指令开放接收端服务器与同步源服务器之间的通讯端口,基于进程启动指令启动备份接收程序,并向同步源服务器发送指令完成响应信息,其中,指令完成响应信息用于指示端口开放指令以及进程启动指令均执行完毕;第二接收模块,用于通过备份接收程序接收备份工具发送的同步文件,并在检测到同步源服务器发送的端口关闭指令和进程关闭指令的情况下,关闭备份工具的通讯端口,并关闭备份接收程序。
上述用于提高同步安全性的文件同步装置包括处理器和存储器,上述第一接收单元801、第一发送单元801、第二接收单元803和第二发送单元804等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来解决相关技术中通过rsync工具进行文件同步时,由于rsync工具支持向任意地址同步文件,存在安全隐患的问题。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
实施例6
图9是根据本申请实施例的用于提高同步安全性的文件同步装置的示意图。如图9所示,该装置包括:第三接收单元901、第二执行单元902和第三发送单元903。
具体地,第三接收单元901,用于通过同步源服务器接收目标应用程序发送的文件同步请求,并向接收端服务器发送文件同步信息,其中,文件同步信息是文件同步请求中的信息。
第二执行单元902,用于在接收到接收端服务器基于文件同步信息发送的允许同步的反馈消息的情况下,执行文件同步请求对应的文件同步任务,其中,文件同步任务用于将同步文件发送至接收端服务器。
第三发送单元903,用于在接收到接收端服务器发送的禁止同步的反馈消息,或在预设时间段内未收到接收端服务器的反馈消息的情况下,向目标应用程序发送同步失败的反馈消息。
本申请实施例提供的用于提高同步安全性的文件同步装置,通过第三接收单元901,用于通过同步源服务器接收目标应用程序发送的文件同步请求,并向接收端服务器发送文件同步信息,其中,文件同步信息是文件同步请求中的信息;第二执行单元902,用于在接收到接收端服务器基于文件同步信息发送的允许同步的反馈消息的情况下,执行文件同步请求对应的文件同步任务,其中,文件同步任务用于将同步文件发送至接收端服务器;第三发送单元903,用于在接收到接收端服务器发送的禁止同步的反馈消息,或在预设时间段内未收到接收端服务器的反馈消息的情况下,向目标应用程序发送同步失败的反馈消息,解决了相关技术中通过rsync工具进行文件同步时,由于rsync工具支持向任意地址同步文件,存在安全隐患的问题,通过在同步源服务器具有将文件同步至目的存储路径的权限的情况下,先将文件发送至中转目录,再从中转目录转发至目的路径,进而达到了减少同步工具执行文件同步的安全隐患的效果。
可选地,在本申请实施例提供的用于提高同步安全性的文件同步装置中,装置还包括:第二判断单元,用于在向接收端服务器发送文件同步信息之前,判断文件同步请求对应的文件同步任务是否在任务清单内,其中,任务清单内记录有待执行的文件同步任务;第四发送单元,用于在文件同步任务在任务清单内的情况下,向目标应用程序发送文件正在同步的反馈消息;第三执行单元,用于在文件同步任务不在任务清单内的情况下,执行向接收端服务器发送文件同步信息的步骤。
上述用于提高同步安全性的文件同步装置包括处理器和存储器,上述第三接收单元901、第二执行单元902和第三发送单元903等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来解决相关技术中通过rsync工具进行文件同步时,由于rsync工具支持向任意地址同步文件,存在安全隐患的问题。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
实施例7
本申请实施例还提供了一种计算机存储介质,计算机存储介质用于存储程序,其中,程序运行时控制计算机存储介质所在的设备执行一种用于提高同步安全性的文件同步方法。
本申请实施例还提供了一种电子装置,包含处理器和存储器;存储器中存储有计算机可读指令,处理器用于运行计算机可读指令,其中,计算机可读指令运行时执行一种用于提高同步安全性的文件同步方法。本文中的电子装置可以是服务器、PC、PAD、手机等。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种用于提高同步安全性的文件同步方法,其特征在于,包括:
接收端服务器接收同步源服务器发送的文件同步信息,从所述文件同步信息中获取文件的目的存储路径,并判断所述同步源服务器是否具有将文件同步至所述目的存储路径的权限,其中,所述文件同步信息是所述同步源服务器接收到的文件同步请求中的信息;
在所述同步源服务器具有将文件同步至所述目的存储路径的权限的情况下,所述接收端服务器向所述同步源服务器发送允许同步的反馈消息;
所述接收端服务器接收所述同步源服务器发送的同步文件,并将所述同步文件发送至中转目录,其中,所述同步源服务器在接收到所述允许同步的反馈消息的情况下,通过所述文件同步请求对应的文件同步任务发送所述同步文件;
从所述中转目录中将所述同步文件发送至所述目的存储路径。
2.根据权利要求1所述的方法,其特征在于,判断所述同步源服务器是否具有将文件同步至所述目的存储路径的权限包括:
判断所述接收端服务器中是否存在所述目的存储路径;
在所述接收端服务器中存在所述目的存储路径的情况下,判断所述目的存储路径是否开放数据写入权限;
在所述目的存储路径开放所述数据写入权限的情况下,确定所述同步源服务器具有将文件同步至所述目的存储路径的权限。
3.根据权利要求1所述的方法,其特征在于,判断所述同步源服务器是否具有将文件同步至所述目的存储路径的权限包括:
判断所述目的存储路径是否位于白名单内,其中,所述白名单存储在所述接收端服务器中,所述白名单内存储有允许同步源服务器写入数据的路径;
在所述目的存储路径位于所述白名单内的情况下,确定所述同步源服务器是否具有将文件同步至所述目的存储路径的权限。
4.根据权利要求1所述的方法,其特征在于,在所述接收端服务器接收所述同步源服务器发送的同步文件,并将所述同步文件发送至中转目录之后,所述方法还包括:
判断所述目的存储路径是否位于白名单内,其中,所述白名单存储在所述接收端服务器中,所述白名单内存储有允许同步源服务器写入数据的路径;
在所述目的存储路径位于所述白名单内的情况下,执行从所述中转目录中将所述同步文件发送至所述目的存储路径的步骤。
5.根据权利要求3或4所述的方法,其特征在于,所述白名单中包含多个同步源服务器,所述允许同步源服务器写入数据的路径分别作为同步源服务器的关联路径存储在所述白名单中,判断所述目的存储路径是否位于白名单内包括:
判断所述同步源服务器是否在所述白名单内;
在所述同步源服务器在所述白名单内的情况下,判断所述目的存储路径是否在所述同步源服务器的关联路径中;
在所述目的存储路径在所述同步源服务器的关联路径中的情况下,确定所述目的存储路径位于所述白名单内。
6.根据权利要求3或4所述的方法,其特征在于,所述白名单为加密白名单,用于解密所述加密白名单的密钥存储在所述接收端服务器的代理模块中,所述代理模块用于控制所述文件同步任务的执行进程,判断所述同步源服务器是否在白名单内包括:
所述代理模块通过所述密钥解密所述加密白名单,得到解密后的白名单;
所述代理模块判断所述同步源服务器是否在所述解密后的白名单内。
7.根据权利要求1所述的方法,其特征在于,所述接收端服务器接收所述同步源服务器发送的同步文件,并将所述同步文件发送至中转目录包括:
在备份接收程序接收到备份工具发送的所述同步文件的情况下,通过所述接收端服务器中的代理模块控制所述备份接收程序将所述同步文件发送至所述中转目录,其中,所述备份工具安装在所述同步源服务器上,用于将文件从所述同步源服务器同步至所述接收端服务器,所述备份接收程序安装在所述接收端服务器上,用于接收所述备份工具传输的文件,所述代理模块用于在所述接收端服务器控制所述文件同步任务的执行进程。
8.根据权利要求7所述的方法,其特征在于,所述接收端服务器接收所述同步源服务器发送的同步文件包括:
所述接收端服务器接收所述同步源服务器发送的端口开放指令以及进程启动指令;
基于所述端口开放指令开放所述接收端服务器与所述同步源服务器之间的通讯端口,基于所述进程启动指令启动所述备份接收程序,并向所述同步源服务器发送指令完成响应信息,其中,所述指令完成响应信息用于指示所述端口开放指令以及所述进程启动指令均执行完毕;
通过所述备份接收程序接收所述备份工具发送的所述同步文件,并在检测到所述同步源服务器发送的端口关闭指令和进程关闭指令的情况下,关闭所述备份工具的通讯端口,并关闭所述备份接收程序。
9.一种用于提高同步安全性的文件同步方法,其特征在于,包括:
同步源服务器接收目标应用程序发送的文件同步请求,并向接收端服务器发送文件同步信息,其中,所述文件同步信息是所述文件同步请求中的信息;
在接收到所述接收端服务器基于所述文件同步信息发送的允许同步的反馈消息的情况下,执行所述文件同步请求对应的文件同步任务,其中,所述文件同步任务用于将同步文件发送至所述接收端服务器;
接收到所述接收端服务器发送的禁止同步的反馈消息,或在预设时间段内未收到所述接收端服务器的反馈消息的情况下,向所述目标应用程序发送同步失败的反馈消息。
10.根据权利要求9所述的方法,其特征在于,在向接收端服务器发送文件同步信息之前,所述方法还包括:
判断所述文件同步请求对应的文件同步任务是否在任务清单内,其中,所述任务清单内记录有待执行的文件同步任务;
在所述文件同步任务在所述任务清单内的情况下,向所述目标应用程序发送文件正在同步的反馈消息;
在所述文件同步任务不在所述任务清单内的情况下,执行所述向接收端服务器发送文件同步信息的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210911142.8A CN115277680B (zh) | 2022-07-29 | 2022-07-29 | 用于提高同步安全性的文件同步方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210911142.8A CN115277680B (zh) | 2022-07-29 | 2022-07-29 | 用于提高同步安全性的文件同步方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115277680A true CN115277680A (zh) | 2022-11-01 |
CN115277680B CN115277680B (zh) | 2024-04-19 |
Family
ID=83747172
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210911142.8A Active CN115277680B (zh) | 2022-07-29 | 2022-07-29 | 用于提高同步安全性的文件同步方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115277680B (zh) |
Citations (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140053227A1 (en) * | 2012-08-14 | 2014-02-20 | Adi Ruppin | System and Method for Secure Synchronization of Data Across Multiple Computing Devices |
CN104348914A (zh) * | 2014-10-31 | 2015-02-11 | 福建六壬网安股份有限公司 | 一种防篡改系统文件同步系统及其方法 |
WO2015087019A1 (fr) * | 2013-12-12 | 2015-06-18 | Wooxo | Procédé de synchronisation de données entre un ensemble de terminaux |
CN107004094A (zh) * | 2014-12-09 | 2017-08-01 | 佳能株式会社 | 信息处理装置、信息处理装置的控制方法、信息处理系统和计算机程序 |
WO2018076866A1 (zh) * | 2016-10-25 | 2018-05-03 | 广东欧珀移动通信有限公司 | 数据处理方法、装置、存储介质、电子设备及服务器 |
KR20180073003A (ko) * | 2016-12-22 | 2018-07-02 | 주식회사 케이티 | 오브젝트에 대한 동기화 관리 장치 및 방법 |
CN109597716A (zh) * | 2018-12-04 | 2019-04-09 | 郑州云海信息技术有限公司 | 一种异步远程复制方法及系统 |
US20190129893A1 (en) * | 2017-11-01 | 2019-05-02 | Swirlds, Inc. | Methods and apparatus for efficiently implementing a fast-copyable database |
CN109739810A (zh) * | 2018-12-07 | 2019-05-10 | 中山市江波龙电子有限公司 | 文件同步方法、服务器、客户端及具有存储功能的装置 |
WO2019153592A1 (zh) * | 2018-02-06 | 2019-08-15 | 平安科技(深圳)有限公司 | 用户权限数据管理装置、方法及计算机可读存储介质 |
CN110363026A (zh) * | 2019-07-19 | 2019-10-22 | 深圳前海微众银行股份有限公司 | 文件操作方法、装置、设备、系统及计算机可读存储介质 |
US20190332297A1 (en) * | 2018-04-27 | 2019-10-31 | EMC IP Holding Company LLC | Systems and Methods of Synchronizing Configuration Information in a Clustered Storage Environment |
CN111414279A (zh) * | 2020-03-20 | 2020-07-14 | 苏州浪潮智能科技有限公司 | 一种Linux系统下异地增量数据快速备份方法与系统 |
CN111478943A (zh) * | 2020-03-06 | 2020-07-31 | 上海数据交易中心有限公司 | 跨局域网的文件存储方法和系统、存储介质、终端 |
US20210133045A1 (en) * | 2019-10-30 | 2021-05-06 | EMC IP Holding Company LLC | Method, device and computer program product to backup data |
CN113342845A (zh) * | 2021-06-23 | 2021-09-03 | 乐刷科技有限公司 | 数据同步方法、计算机设备及可读存储介质 |
CN113626835A (zh) * | 2021-06-25 | 2021-11-09 | 荣耀终端有限公司 | 一种数据访问方法及电子设备 |
CN113987468A (zh) * | 2021-10-21 | 2022-01-28 | 中国工商银行股份有限公司 | 安全检查方法和安全检查装置 |
CN114186239A (zh) * | 2021-11-09 | 2022-03-15 | 北京威努特技术有限公司 | 一种基于路径信息的程序白名单方法及装置 |
CN114238255A (zh) * | 2021-11-30 | 2022-03-25 | 中国工商银行股份有限公司 | 同步文件的方法、装置、电子设备及计算机可读存储介质 |
-
2022
- 2022-07-29 CN CN202210911142.8A patent/CN115277680B/zh active Active
Patent Citations (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140053227A1 (en) * | 2012-08-14 | 2014-02-20 | Adi Ruppin | System and Method for Secure Synchronization of Data Across Multiple Computing Devices |
WO2015087019A1 (fr) * | 2013-12-12 | 2015-06-18 | Wooxo | Procédé de synchronisation de données entre un ensemble de terminaux |
CN104348914A (zh) * | 2014-10-31 | 2015-02-11 | 福建六壬网安股份有限公司 | 一种防篡改系统文件同步系统及其方法 |
CN107004094A (zh) * | 2014-12-09 | 2017-08-01 | 佳能株式会社 | 信息处理装置、信息处理装置的控制方法、信息处理系统和计算机程序 |
WO2018076866A1 (zh) * | 2016-10-25 | 2018-05-03 | 广东欧珀移动通信有限公司 | 数据处理方法、装置、存储介质、电子设备及服务器 |
KR20180073003A (ko) * | 2016-12-22 | 2018-07-02 | 주식회사 케이티 | 오브젝트에 대한 동기화 관리 장치 및 방법 |
US20190129893A1 (en) * | 2017-11-01 | 2019-05-02 | Swirlds, Inc. | Methods and apparatus for efficiently implementing a fast-copyable database |
WO2019153592A1 (zh) * | 2018-02-06 | 2019-08-15 | 平安科技(深圳)有限公司 | 用户权限数据管理装置、方法及计算机可读存储介质 |
US20190332297A1 (en) * | 2018-04-27 | 2019-10-31 | EMC IP Holding Company LLC | Systems and Methods of Synchronizing Configuration Information in a Clustered Storage Environment |
CN109597716A (zh) * | 2018-12-04 | 2019-04-09 | 郑州云海信息技术有限公司 | 一种异步远程复制方法及系统 |
CN109739810A (zh) * | 2018-12-07 | 2019-05-10 | 中山市江波龙电子有限公司 | 文件同步方法、服务器、客户端及具有存储功能的装置 |
CN110363026A (zh) * | 2019-07-19 | 2019-10-22 | 深圳前海微众银行股份有限公司 | 文件操作方法、装置、设备、系统及计算机可读存储介质 |
US20210133045A1 (en) * | 2019-10-30 | 2021-05-06 | EMC IP Holding Company LLC | Method, device and computer program product to backup data |
CN111478943A (zh) * | 2020-03-06 | 2020-07-31 | 上海数据交易中心有限公司 | 跨局域网的文件存储方法和系统、存储介质、终端 |
CN111414279A (zh) * | 2020-03-20 | 2020-07-14 | 苏州浪潮智能科技有限公司 | 一种Linux系统下异地增量数据快速备份方法与系统 |
CN113342845A (zh) * | 2021-06-23 | 2021-09-03 | 乐刷科技有限公司 | 数据同步方法、计算机设备及可读存储介质 |
CN113626835A (zh) * | 2021-06-25 | 2021-11-09 | 荣耀终端有限公司 | 一种数据访问方法及电子设备 |
CN113987468A (zh) * | 2021-10-21 | 2022-01-28 | 中国工商银行股份有限公司 | 安全检查方法和安全检查装置 |
CN114186239A (zh) * | 2021-11-09 | 2022-03-15 | 北京威努特技术有限公司 | 一种基于路径信息的程序白名单方法及装置 |
CN114238255A (zh) * | 2021-11-30 | 2022-03-25 | 中国工商银行股份有限公司 | 同步文件的方法、装置、电子设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115277680B (zh) | 2024-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9864608B2 (en) | Client authentication during network boot | |
US9281949B2 (en) | Device using secure processing zone to establish trust for digital rights management | |
WO2021164166A1 (zh) | 一种业务数据保护方法、装置、设备及可读存储介质 | |
US11693591B2 (en) | Multi cloud data framework for secure data access and portability | |
JP2021022393A (ja) | フィッシング又はランサムウェア攻撃を遮断する方法及びシステム | |
CN113557703B (zh) | 网络摄像机的认证方法和装置 | |
EP3895043B1 (en) | Timestamp-based authentication with redirection | |
US20200004695A1 (en) | Locally-stored remote block data integrity | |
CN111131216A (zh) | 文件加密、解密方法及装置 | |
EP4135331A1 (en) | Method for processing live broadcast information stream, electronic device | |
CN104104650A (zh) | 数据文件访问方法及终端设备 | |
CN109150811B (zh) | 一种实现可信会话的方法及装置、计算设备 | |
CN110392062A (zh) | 一种基于大数据的多维加密方法及装置 | |
KR101952139B1 (ko) | 사용자 단말과 연동된 게이트웨이 서버에서 drm 기능을 제공하는 방법 | |
CN115277680B (zh) | 用于提高同步安全性的文件同步方法 | |
CN113901507B (zh) | 一种多参与方的资源处理方法及隐私计算系统 | |
US20210097023A1 (en) | Decentralized Data System | |
US11784978B2 (en) | Method for establishing remote work environment to ensure security of remote work user terminal and apparatus using the same | |
CN114244573B (zh) | 数据传输管控方法、装置、计算机设备和存储介质 | |
US20230370455A1 (en) | Process level authentication for client device access to a server system | |
CN113961970B (zh) | 跨网段网盘登录身份验证方法、装置、网盘及存储介质 | |
KR102381575B1 (ko) | 사용자단말 및 사용자단말과 통신을 수행하는 서버시스템에서 수행되는 선택적 캡쳐방지 기능을 구비한 통신 보안방법 | |
CN114329574B (zh) | 基于域管平台的加密分区访问控制方法、系统及计算设备 | |
CN111680309A (zh) | 数据处理方法、装置、终端及存储介质 | |
KR20180043679A (ko) | 게이트웨이 서버와 연동된 클라우드 저장소 서버에서 drm 기능을 제공하는 방법 |
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 |