从原则上来说,backuppc(或者类似的备份架构)的方法是否安全?

从原则上来说,backuppc(或者类似的备份架构)的方法是否安全?

我正在查看一台运行 VMware 和 4-6 台虚拟机(主要是 Linux,但也包括 Windows10/11)的物理服务器。目前,我仅备份 2 台 Linux 虚拟机(其他虚拟机并不重要),方法是从我们的本地 NAS 安装 NFS 共享并使用 rsync 将所有内容转储到那里。

我需要优化和自动化。目前它只是转储所有文件。我想管理(例如)每周完整备份,每日差异/增量备份和每月完整备份到远程服务器。这里需要一个管理界面。我想到的是 BackupPC。我需要的是:

  1. 跨平台(Linux/Win 客户端)
  2. 增量/差异备份
  3. 备份文件可访问且易于阅读(例如,当恢复备份时,我可以通过 SSH 查看文件 - 这一点很重要,以防管理备份的界面/应用程序也出现故障)

以上不是我的问题的核心(尽管我愿意接受解决方案的建议),但我发现了一些令人担忧的事情。如果我理解正确的话,像 backuppc 这样的系统使用 rsync 和 smb 通过 SSH/keys 连接到客户端计算机并下载所有文件。这是否意味着 backuppc 拥有所有计算机和所有备份的 root 访问权限?这意味着如果运行 backuppc 的服务器受到攻击,则存在丢失所有内容的风险 - 包括正在运行的虚拟机和备份。获得对运行 backuppc 的服务器的访问权限的攻击者可以擦除所有正在运行的虚拟机和所有备份(本地或远程),因为服务器拥有访问它们所有内容的密钥。

我认为更安全的系统是链式方法:客户端 -> 备份服务器(非 root 访问权限)-> NAS。在这种方法中,受感染的 VM 将无法销毁其他 VM 的备份,并且它只能在服务器上看到自己的备份(甚至可能看不到这些备份)。此外,受感染的备份服务器无法销毁正在运行的 VM,因为它只能看到存储的备份。

这真的值得担心吗?我是不是漏掉了什么?backuppc 使用的方法安全吗?刚才描述的情况是不是没有我想象的那么严重?在这种情况下,灾难恢复是什么?

答案1

备份方法pull(NAS/存储登录到虚拟机并复制更改的文件)通常比push客户端登录到目标备份箱更安全。这是因为如果虚拟机受到攻击,它无法登录 NAS 并销毁自己的备份。当然,你可以争辩说备份箱成为新的“薄弱环节”,并且这是必须的确保此类系统免受互联网和其他威胁。但作为需要保护的单一系统,并且不应暴露任何服务,因此确保其安全更为简单。

为了增加保护,您可以将客户端计算机配置rsync为以只读权限启动其进程。如果rsync在守护进程模式下使用,您可以read only在其配置文件中设置。如果rsync通过 SSH 使用,您可以使用rrsync包装器拒绝/丢弃任何写入请求。

我大量使用rrsync虚拟机,再加上rsnapshot(以及相应的 SSH 身份验证密钥)在备份主机上。与 相比backuppc,它的配置和调试更简单,但它失去了跨客户端文件级重复数据删除功能(这在我的环境中不是问题)。

相关内容