如何通过root访问阻止黑客删除远程备份?

目前我正在研究CentOSnetworking服务器的最佳备份解决scheme,而且我正考虑使用Tarsnap或直接启动的Amazon S3。

我试图找出如何在最糟糕的情况下阻止黑客删除我的服务器内容和远程备份,从而获得对我的服务器的根访问权,从而有权访问远程备份身份validation凭据。 (我完全理解使用强密码和/或只强制执行基于密钥的SSHauthentication以及其他一般的最佳实践安全性的重要性,但有时候会发生,在VPS级别可能存在Linux漏洞或漏洞我的东道主,或其他或多或less的东西我的控制。)

我知道Tarsnap和Amazon S3都具有只写用户权限,但问题是我还需要自动备份修剪/旋转。 是否有可能build立这些服务(或者可能是其他一些服务)来禁止删除比2天更新的备份世代? 这会给我一个两天的缓冲区来注意我被黑客攻击,防止黑客删除我最新的数据。

还是有其他的想法? 非常感谢!

在基本层面上,通过从主机推送备份,而不是将其从备份中解放出来,会使问题部分恶化。

您可以修复该问题,并且除了物理上(或者在逻辑上需要的情况下)拔掉中央备份主机上的备份卷。

我确实有机器将备份推送到S3,但这些S3存储桶使用版本控制,因此攻击者推送不良备份不是问题(并且使用的api密钥无权删除对象,只能添加它们)。 我修剪旧的备份与boto作为版本和存储桶生命周期在同一时间是不允许的)。

没有“激励”是可行的,这些人不关心你的数据。

那么,我最终select了Duplicity,因为它有自己的Amazon S3界面。 我通过IAM创build了一个Amazon S3用户,仅限于GET和PUTTING对象。 我正在使用--full-if-older-than Duplicity选项每7天创build一个新的完整备份。 然后,我有一个自动的S3生命周期策略,可以将超过10天的对象移动到冰川。 然后,一个辅助规则会删除冰河的102天以前的对象(为了确保在90天之前我没有受到Glacier早期删除费用的影响,我添加了一些额外的污物)。 所以这会给我80天以上的Glacier备份(一旦最旧的完整备份被删除,它的子增量仍然会存在几天但不再有效),另外还有10天的S3最新备份。 有了差异化的更新和压缩,我每天的备份都非常小,所以它应该是非常经济的。

感谢大家的帮助和build议。