现在我每天使用 rsync 和 cron 备份我的网站/服务器。我担心有人入侵我的服务器,然后获得我的 rsync 帐户的访问权限并删除所有内容。我该如何保护自己免受这种攻击?
答案1
据我了解,主要问题是您将 rsync 进程配置为从“错误的一侧”启动。您的备份服务器应该是启动连接并在您的生产服务器上拥有帐户的服务器,而不是相反。
这样,您就不需要在备份服务器上拥有一个可以从更暴露的生产服务器访问的帐户(并且该生产服务器存储了凭据或访问令牌)。
当然,这引发了备份服务器被破坏可能造成的影响的问题,但您可以限制备份用户破坏事物的能力 - 在生产服务器上使用 rsync 守护程序并对要备份的内容进行只读共享是一个简单的选择。
答案2
您可以构建几层安全措施。
不允许易受攻击的服务器访问安全服务器
Web 服务器应被视为易受攻击的,因此您应限制从 Web 服务器到备份服务器的出站访问的可能性。应使用只读、受限的帐户从备份服务器启动数据检索。
限制攻击面
您希望 Web 服务器上的服务和访问点尽可能少。一种方法是创建一个暂存点:将数据从 Web 服务器推送到暂存服务器(也应视为易受攻击),然后将该数据拉到备份服务器以保护其安全。
答案3
我不知道您有哪些硬件可用,但有几种选择。第一种是将数据放在磁带或其他可以离线放置的媒体上。它可能无法始终让您恢复最新的修订版本,但在受到攻击的情况下,您可以将数据离线保存在某个地方。第二种选择是使用辅助“备份”系统来保留数据的副本。您可以远程将数据“同步”到该框中,这样如果有人进入,他们就无法轻易获取您的备份(在两个系统上保持不同的密码、密钥等并及时修补)。这两种方法都假设您可以获得更多硬件(或者在选项 2 中甚至可以使用虚拟服务器)。如果同一系统上的任何东西受到攻击,则必须将其视为可疑。