设置偏执远程备份服务器所需的工具

信息安全 网络 备份
2021-08-28 22:29:48

我是一名系统管理员,几乎没有安全经验。我想安排我们备份的复制,以在发生火灾时保护我们的数据。最好的解决方案是将数据复制到新硬盘上并将其锁定在保险箱中。然而,实际上,有人经常这样做的机会很小。因此,我想将副本自动复制到远离建筑物的计算机/硬盘上。

数据非常敏感,复杂攻击的可能性被认为是相当高的。因此,我正在寻找功能非常有限的解决方案。这主要是为了防止我自己(或将来的系统管理员)在无知中错误配置解决方案。简而言之,我希望我的服务器能够与定义明确的外部计算机进行通信,并且只能与这台计算机通信。这是可以保证的吗?

该公司负担不起租用的电话线,这是我目前想到的实现这一目标的唯一方法。(例如,我担心 VPN 的功能太强大,导致我成为安全风险。)

目前,办公服务器(进行备份)与互联网隔离。桌面用户(拥有互联网)只能访问服务器上的低权限帐户。我想让服务器和备份服务器尽可能与互联网隔离 - 只允许将预定的副本与外界通信。有什么替代VPN的方法吗?

最后,由于远程位置的服务器只需要将备份复制到硬盘上 - 有没有办法锁定这个系统,以便只将传输的文档保存到硬盘上(防止恶意软件意外安装) .

目前,我发现的所有解决方案似乎都涉及 VPN 或租用的电话线。我认为第一个远非万无一失,我买不起第二个。欢迎任何建议。

编辑:我不会打折使用 VPN,但我需要说服自己(和我的主管)这种方法几乎是白痴证明。这是因为我以前没有使用过这项技术。

3个回答

您只需要最新的数据副本,还是历史备份,例如版本控制?

假设您有两台运行 linux(更简单)的计算机,甚至任何其他已实现所需工具的操作系统,并且您只需要最新的备份:

  • 安装 SSH 并在两台计算机之间创建隧道。您可以选择使用您需要的最强密钥
  • 将防火墙配置为仅接受两台计算机之间的通信
  • 配置 Rsync 以在服务器之间以所需的频率进行备份(例如:每天晚上运行的每日备份)
  • 目标计算机(远程计算机)可以加密磁盘。他可以从源服务器获取密钥。

并确保目标服务器上的物理访问受到限制。

这条路:

  • 在特定时间,备份服务器安装加密磁盘,请求源服务器中的密钥
  • 几分钟后,rsync 开始更新目标驱动器中的文件
  • 完成后,您将拥有处于最近状态的文件。
  • 卸载驱动器,你就完成了。

Rsync 很好,因为它只复制文件之间的不同之处,因此使用它进行备份非常快。

也可以使用 rsync 进行增量备份:看看这个站点

Woliveirajr 涵盖了很多优点。SSH 提供了一个非常好的、简单的、难以搞砸的备份隧道。

此外,您可以让 SSH 进程仅在备份进程之前上线 - 无需在当天剩余时间暴露该攻击向量。

您还没有提到要备份的数据的大小。如果数据不是太大,我不会做增量备份。相反,我会使用一个密钥进行加密,并将解密密钥保密。如上所述,您可以将其堆叠在整个磁盘加密之上。

并澄清一些希望显而易见的观点:

  • 不要使用 DNS - 使用硬编码的 IP 地址(实际上防止 dns、ntp、更新等)
  • 不要在备份服务器上运行任何服务——它应该打电话回家
  • 使用 SSH 密钥进行身份验证
  • 锁定物理访问

拿起 O'Reilly 关于 SSH 的好书。

您最可靠的解决方案将是客户端大小的加密如果您在将备份数据通过 Internet 发布之前对其进行加密,那么无论发生什么情况,您都可以确定其安全性。无论是连接配置错误,备份发送到错误的主机,还是备份目的地受到威胁——如果您的备份是加密的不透明 blob,您就可以高枕无忧了。

有很多方法可以实现这一目标。最简单的方法是使用 7-zip 或 PGP 等工具加密备份。或者,您可以创建一个加密容器,例如TrueCrypt。不过,我最喜欢的解决方案是使用--reverse选项encfs来创建文件系统的加密视图;那么您可以rsync通过网络直接查看它,而不必担心谁会看到它。

这是一个相当普遍的问题,并且有许多现成的解决方案可以解决您正在尝试做的事情。通常这涉及使用 Amazon S3 或类似的云存储产品进行安全备份。选项列表会不时更改,因此只需 Googleencrypted s3 backup即可获得一些想法。