防止黑客删除备份的只写远程备份解决方案

Val*_*cev 14 security linux backup

考虑这种情况:我有 linux 服务器,它每天通过 rsync 或类似的东西自动备份到某个远程位置。一切都很好,直到某个坏人获得了服务器的访问权限,找到了我的自动备份脚本并从备份服务器中删除了所有内容。

我试图找到一些远程备份实用程序,它只允许远程添加备份,但不能删除它们。我现在不知道如何制作任何使用 ssh 只写的东西,我试图找到一些不使用 ssh 的东西,但只找到了Box Backup

我现在有可能,但我想知道是否有一些规范的方法来实现这一点。


我得到了很多答案,谢谢大家!

小智 11

最简单的事情可能是对备份采取另一种方式,即。从备份服务器拉。这就是我使用 rdiff-backup 运行备份的方式。


wom*_*ble 9

如果你在做一个简单的备份(单一副本,覆盖所有数据),那么就没有办法实现你想要的——攻击者总是可以“备份”一堆空文件(或一个空文件集),这将导致再见了您的所有数据。因此,我在这里假设您正在执行适当的存档备份,并且您正在很好地监控您的备份,以便在任何永久性损坏发生之前,通过发送空备份集来根除备份的任何尝试都将被检测到。

如果您的 rsync-over-(大概)-SSH 使用强制命令rsync在目标上运行,那么您就可以尽可能地避免删除。由于您只想运行特定rsync命令,因此您可以对所有参数进行硬编码,然后它唯一能做的就是写入新数据。通过每次备份到新树并使用硬链接将未更改的文件与以前的备份相关联,从而节省空间和传输时间,存档非常简单。

另一种方法是使用拉备份,其中备份服务器启动和管理rsync操作——这意味着客户端机器甚至没有能力运行受限的 rsync 命令,这意味着攻击者无权删除文件。

这一切都假设您的备份服务器是安全的。如果攻击者可以通过其他方式访问它,那么无论您做什么,您都会受到影响。


and*_*dol 5

这是我喜欢Tarsnap备份服务的功能之一。它允许我创建具有读取、写入和/或删除功能的子项。

在我的服务器上,我通常保留具有读写功能的子项。有时,当我需要/想要修剪旧的备份档案时,我会使用本地台式计算机上的主密钥来执行此操作。

请注意,Tarsnap 本身就是一种存储服务。您不能使用 Tarsnap 软件针对您自己的存储服务器创建备份。