题 在家中设置服务器用于备份目的是个坏主意?


我今天被托管服务提供商烧毁了,他们遇到了数据中心问题,他们声称他们做了备份,但他们的备份已损坏,所以我丢失了一个我在他们托管的两台不同服务器上备份的网站。两台服务器都受到影响,因此数据消失了。那个网站遗憾地是一个我没有在本地备份过的网站。

所以,我正在考虑购买一个小型廉价服务器和一些硬盘来通过FTP进行定期备份。

问题是,与连接FTP的服务器在同一网络/路由器上连接的计算机是否存在安全威胁?

在家中安装服务器定期备份所有客户网站是否合理?在这一点上,我觉得我必须自己做所有事情,因为有许多关于第三方解决方案未能按照他们的要求做的事情的故事。


11
2018-01-07 08:55




无论它们存储在何处,或者由谁存储,除非 您 测试备份和恢复然后他们不是真正的备份。 - Iain
让您的家庭服务器访问云服务器并提取备份。 - cornelinux
当我认为有一个好的,核心时,我已经从我认为可能会关闭的问题中删除了一些无关的引用 最佳实践 这里有问题。如果有人不同意,请随时恢复编辑和/或VTC。顺便说一句,我认为Iain的评论如下 测试 备份是您最好的最佳实践建议 曾经 谈谈这个话题。 - MadHatter


答案:


在家中安装服务器定期备份所有客户网站是否合理?

是的,前提是您遵循一些预防措施

连接到与FTP有关的服务器的同一网络/路由器上的计算机是否存在安全威胁?

是的,如果您不遵循一些预防措施

  1. 如果我的云服务器遭到入侵怎么办?然后,我的家庭备份PC可能也会受到攻击,因为云服务器可以连接到它。
  2. 如果我的家庭备份PC受到损害怎么办?它有什么访问权限?

因此,您基本上希望降低任一系统受到危害的风险,同时还要限制攻击者在他们设法妥协的情况下可能具有的访问权限。

注意事项

  1. 不要使用FTP,因为凭据可以未加密传输,在Linux机器上运行SSH服务器,以及使用连接/传输文件 scp。备选方案 - 查找在Linux,Mac或Windows上运行的SFTP或SCP类型的服务器。
  2. 使用仅对备份目录具有scp访问权限的有限SSH帐户,并且只有足够的访问权限才能发送备份。
  3. 使用私钥进行身份验证
  4. 通过上述步骤,如果您的远程云服务器被破坏并且私钥被盗,则攻击者只能访问他们已经访问过的服务器的备份!
  5. 运行具有NAT /端口转发和DMZ功能的防火墙(如果它具有没有已知漏洞的最新固件,甚至可以是您的ISP的WiFi路由器 - 仔细检查一下 - 一些较旧的ISP路由器充满了bug)
  6. 将基于主页的备份计算机放在DMZ中。这样,它就无法轻松访问任何其他计算机,因此如果受到威胁,则会大大降低威胁。您可以将端口22从内部家庭网络转发到DMZ,并以更高的权限登录以管理/ scp。
  7. 使用NAT /端口转发将随机高TCP端口(例如55134)从您的公共IP转发到您的SSH服务 - 这将使服务不易被提取
  8. 限制防火墙上的访问权限,以便转发的端口仅对远程云服务器可见
  9. 请勿在备份计算机上放置任何机密数据,SSH私钥,密码等。这样,如果它被泄露,您可以进一步减少攻击者可以访问的内容。
  10. 使所有系统/服务保持最新 - 尤其是在云服务器和备份PC上。漏洞总是被发现,并且通常很容易被攻击者利用,例如将基本访问转变为根级访问。 (例如。 https://dirtycow.ninja/

此列表是理想的情况,应该可以帮助您考虑风险。如果您的ISP路由器没有DMZ功能,并且您不想投资设置备用防火墙,那么您可能会对妥协感到满意(我个人对它不满意) - 在这种情况下我将确保所有内部网络PC上的基于主机的防火墙处于活动状态,并且强密码需要对所有共享/服务等进行身份验证。

如另一个用户所建议的另一种选择(这里有更多细节)是为您的云服务器编写脚本以生成备份并使其可用,并编写备份PC脚本以通过SFTP或SCP(SSH)进行连接以提取备份。

这可以很好地工作,但锁定SSH / SFTP端口,以便只有您的备份PC可以访问它,使用有限的访问帐户,并考虑一些相同的预防措施。例如。如果您的备份PC受到损害怎么办?然后您的云服务器也会受到攻击等。


12
2018-01-07 09:27



很好的预防措施清单,谢谢。这与我希望听到的一致。将继续前进。 - Darius
别客气。如果我想到其他任何事情,我会编辑答案并在此发表评论以告知您。我是一名专业的渗透测试员,所以如果我忘记了什么,不应该花很长时间才能意识到这一点! - bao7uo