公众号旧文

终于把 GitHub 备份和加密恢复搞明白了

作者:胖子阅读 —

今天给 JP-IIJ 服务器做维护前备份,顺手把 GitHub 备份和加密恢复的配合方式彻底理顺了。

一开始让 Codex 打包了配置、数据库和证书,用 AES-256-GCM 加密后拆成五个分片传上私有仓库。结果一查历史才发现,自己以前根本不是这么干的——之前只是把普通配置直接提交,能随时看 diff。私有仓库管的是访问权限,文件本身可没端到端加密。

想明白后,我恢复了原来的思路:普通配置直接进 Git,敏感数据单独加密。这次整理了 158 个变更文件,新增 136 个、修改 22 个,还顺手揪出一个硬编码的 BOT_TOKEN,排除了私钥和数据库才推上去。

光存好不算完,真遇到灾难得能解开。我在 Windows 本地演练了一把:先校验五个分片的 SHA256,按顺序二进制合并,再用 OpenSSL 和本地私钥解密。归档里的五个 SQLite 数据库也全过了完整性检查。

折腾到最后发现,加密备份和解密私钥必须分开保存。GitHub 上的文件再完好,丢了本地私钥照样抓瞎。所以以后不再加自动备份了,只在重大维护时手动提交一次。

图片 1