AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 1000971
Accepted
Antonis Christofides
Antonis Christofides
Asked: 2020-01-30 11:39:06 +0800 CST2020-01-30 11:39:06 +0800 CST 2020-01-30 11:39:06 +0800 CST

如何防止管理员同时删除服务器及其云备份?

  • 772

我有一些(虚拟)服务器。他们使用应用程序密钥在 Backblaze B2 上备份自己。

我想雇一个人来帮助我管理这些服务器。

当该人获得对服务器的 root 访问权限(我想要)时,他还可以访问 B2 应用程序密钥。这意味着他可以删除服务器和备份。

我可以使用什么程序/设置来防范这种极端情况?我确实有离线备份,但这些是每月一次,而 B2 备份是每天一次。

backup
  • 3 3 个回答
  • 190 Views

3 个回答

  • Voted
  1. Florian Heigl
    2020-01-30T15:30:33+08:002020-01-30T15:30:33+08:00

    在某些环境中,您只需将工作分成两个团队 - 一个团队运行/保护服务器,另一个运行/保护备份。

    另一部分更重要的是,imo 更重要的是:如果备份是可写的,尤其是来自正在备份的系统,那么它就不是一个好的备份。

    许多工具(如 borg)中的系统性问题。最好(在云世界中)将备份推送到 AWS Glacier,同时将它们存储到 S3 中,角色只能创建它们。有删除的时间表,没有人需要能够“快速”做到这一点。

    另外,不要忘记有关于这些东西的书籍。

    • 3
  2. Best Answer
    Antonis Christofides
    2020-02-05T05:14:31+08:002020-02-05T05:14:31+08:00

    这是如何做到的:

    1. 在 Backblaze B2 上,创建一个不能删除文件的应用程序密钥:

      b2 create-key --bucket MyBucket MyKeyName listBuckets,listFiles,readFiles,writeFiles
      
    2. 设置备份,以便它使用该密钥并且不尝试删除旧的备份文件。例如,在 中duplicity,不要使用remove-older-than、remove-all-but-n-full或remove-all-inc-of-but-n-full; 在duply,不要使用purge或purgeIncr。

    3. 要删除旧备份,请在存储桶上设置自定义生命周期设置;例如,设置以开头的行duplicity-full360天后隐藏,再360天后删除;duplicity-inc对于以和开头的文件,依此类推duplicity-new。

    更新:

    B2 实际上并没有提供任何“删除文件”的功能。每次您替换同一个文件时,它都会保留其历史记录,因此一个文件可以有“版本”——最新的版本通常就是您需要的版本。B2 提供的是“隐藏”文件的功能。当您隐藏一个文件时,您实际上是在文件的历史记录中记录该文件被“删除”,您可以添加一个新的文件版本,即隐藏或删除的文件。

    除此之外,B2 还提供实际删除文件版本的功能。没有 deleteFiles 权限的用户实际上有隐藏文件的权限,但没有删除文件版本的权限。

    在我看来,duplicity 的remove-...功能应该通过隐藏文件来实现。(然后由存储桶的配置在一段时间后实际删除这些隐藏文件版本。)但是 duplicity 的 B2 的后端不这样做;它的作用是实际删除文件版本。

    • 2
  3. Kevin Buchs
    2020-01-30T14:59:12+08:002020-01-30T14:59:12+08:00

    在大多数公有云上,ssh 访问服务器并不意味着可以删除服务器。在服务器上管理和在云帐户中进行管理是有区别的。因此,您可以将它们分开。您还可以相当多地拆分权限,尤其是在 Amazon AWS 上。例如,您可以授予某人重新启动服务器的权限,但不能将其删除。AWS 在虚拟机上有删除保护选项。

    这些天来,最佳实践是使用像 Chef/Puppet/Salt/Ansible 这样的配置管理来对您的服务器进行任何更改,而不是实际登录服务器。

    此外,对于 AWS,您可以根据需要随时对服务器进行快照,这是备份它们的最有效方式。

    • 0

相关问题

  • 总大小(磁盘)与总大小(媒体)

  • 社区对备份解决方案的意见

  • 无法读取不同 LTO-3 驱动器上的 LTO-3 磁带

  • 使用 TSM 备份时跳过硬链接

  • 使用 rsync 维护名称更改的目录的副本

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve