mcpField
I
implementing-immutable-backup-with-restic

implementing-immutable-backup-with-restic

github.com/mukul975安全35.2k39 次安装8 周前更新
代码仓库

关于 implementing-immutable-backup-with-restic

这是一份使用 restic 与支持 S3 Object Lock 的存储构建不可变备份方案的技能说明,面向需要防范勒索软件、验证备份完整性并测试恢复流程的运维人员。内容涵盖加密仓库、保留策略、自动校验和定期恢复测试。

主要功能

  1. 01初始化加密的 restic 仓库
  2. 02配置 S3 Object Lock 保留策略
  3. 03执行完整性检查并记录结果
  4. 04定期恢复文件并比较校验和

适用场景

  1. 01构建防勒索软件的备份基础设施
  2. 02落实含不可变副本的 3-2-1-1-0 策略
  3. 03验证备份可恢复并规划恢复时间
  4. 04保护备份免受管理员账户遭入侵后的篡改

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/mukul975/anthropic-cybersecurity-skills --skill implementing-immutable-backup-with-restic

安装后在 Claude Code 中输入/implementing-immutable-backup-with-restic确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

LICENSE
references/
api-reference.md
scripts/
agent.py

详细介绍

使用 Restic 实现不可变备份

何时使用

  • 建立具有加密完整性验证的抗勒索软件备份基础设施
  • 实施 3-2-1-1-0 备份策略,其中额外的 1 是不可变副本
  • 自动化备份验证工作流,按计划测试恢复能力
  • 保护备份仓库免遭被入侵的管理员账户删除或修改
  • 满足具有防篡改存储的数据保留合规要求

不要使用 作为唯一的备份解决方案,除非同时维护离线/气隙副本。对象锁定可防止逻辑删除,但无法防止物理存储故障。

前提条件

  • 已安装 restic 二进制文件(https://restic.readthedocs.io/)
  • 启用了对象锁定的 S3 兼容存储(AWS S3、MinIO、Backblaze B2)
  • Python 3.8+ 及 subprocess 模块
  • 已配置用于存储桶访问的 AWS CLI 或 MinIO 客户端(mc)
  • 为备份仓库提供足够的存储空间(通常为源数据的 2-3 倍,含去重)

工作流

步骤 1:使用加密初始化 Restic 仓库

在启用了对象锁定的 S3 兼容存储上创建加密的 restic 仓库。Restic 使用 AES-256-CTR 加密,并使用 Poly1305-AES 进行认证,确保备份数据既保密又防篡改。

步骤 2:配置对象锁定保留策略

在备份存储桶上以 Compliance 模式启用 S3 对象锁定,防止任何主体(包括 root)在保留期内删除或修改对象。将保留期设置为与你的备份窗口要求相匹配(通常为 30-90 天)。

步骤 3:自动化备份与验证

安排备份操作,并在备份后使用 restic check --read-data 进行完整性验证,该命令会下载每个数据块并根据其存储的校验和进行验证。记录日志,并在任何完整性失败时发出警报。

步骤 4:测试恢复流程

定期从备份快照中随机恢复文件到临时位置,并将校验和与原始文件进行比较,以验证端到端备份完整性。记录恢复时间以供 RTO 规划使用。

关键概念

术语定义
对象锁定S3 功能,可在指定的保留期内防止对象被删除或覆盖
Compliance 模式对象锁定模式,即使 root 账户也无法在保留期到期前删除对象
去重Restic 将数据存储为内容寻址的块,在所有快照之间进行去重
3-2-1-1-03 份副本、2 种介质类型、1 份异地、1 份不可变、验证中 0 错误

工具与系统

  • restic:快速、安全、跨平台的备份工具,内置加密和去重功能
  • resticpy:用于 restic 命令行操作的 Python 封装
  • AWS S3 Object Lock:用于防篡改备份保留的 WORM 存储
  • MinIO:支持对象锁定的可自托管 S3 兼容存储

输出格式

BACKUP VERIFICATION REPORT
===========================
Repository: s3:s3.amazonaws.com/company-backups-immutable
Snapshots: 45
Total Size: 2.3 TiB (deduplicated from 8.7 TiB)
Last Backup: 2026-03-11T02:00:00Z
Integrity Check: PASSED (all packs verified)
Object Lock: Compliance mode, 90-day retention
Restore Test: PASSED (15 files verified)

评论

支持 Markdown