哪些 GnuPG 文件需要备份?

哪些 GnuPG 文件需要备份?

~/.gnupg/我需要哪些 GnuPG 文件(通常在 下)?

我有一个用于备份“私人信息”的脚本,它将所有内容压缩并使用opensslAES256 进行密码保护。这种方法“安全”吗?

现在,它只是抓取了所有内容~/.gnupg。我即将开始全新安装,并且不想丢失任何无法恢复的内容。

答案1

备份 GnuPG

~/.gnupg/我需要哪些 GPG 文件(通常在 下)?

相关文件

对于大多数用户来说, “通常的” GnuPG 主目录(~/.gnupg在 Linux 和其他 unixoid 系统上,在 Windows 上是类似的路径)包含以下信息:

  • 公钥环pubring.gpg,存储你获取的公钥(用于验证其他签名,以及向其他用户加密信息/消息)
  • 私钥环secring.gpg,存储您自己的私钥(从 GnuPG 2.1 开始与公钥环合并)
  • 信任信息trustdb.gpg(与其他密钥上的认证/签名不同,您还必须颁发信任来在整个信任网络中验证密钥)
  • 配置gpg.conf和可能gpg-agent.conf

需要备份什么

虽然通常可以从密钥服务器恢复公钥,但私钥的备份非常重要;还要准备好撤销证书!信任信息也是私密的,不会通过密钥服务器共享。配置的重要性值得商榷,但您可能也不想丢失已配置的首选项(因为重新配置很麻烦)。

最后,我只是将整个~/.gnupg目录以及主目录中的几乎所有其他内容都放在备份中。我在另一个地方存储了一份单独的 QR 编码(未加密)纸质撤销证书副本,因为最糟糕的情况可能是有人使用它来撤销我的主密钥,但我肯定会这样做不是想要在密钥服务器上拥有一个不受我控制的带有认证的 OpenPGP 密钥。

官方建议

man gpg建议备份你的公钥环、私钥环(如果使用 GnuPG pre 2.1)以及最后出口您的信任数据库,而不是备份数据库文件(正在运行gpg --export-ownertrust)。您可能能够使用一些预备份脚本来执行此操作,我决定只备份整个 GnuPG 目录,而不关心单个文件。

加密您的备份

我有一个用于备份“私人信息”的脚本,它将所有内容打包起来,并使用 OpenSSL 和 AES256 对其进行密码保护。这种方法“安全”吗?

AES256 被认为是安全的,也可以与 OpenPGP 一起使用。当然,请确保不要使用仅存储在您的机器上和(加密的)备份中的自己的公钥/私钥对来加密它。使用--symmetric适当参数的 GnuPG 加密可能也适用于此目的,但使用 OpenSSL 可以提供同等的安全性。

重置计算机时备份

现在,它只是抓取了所有内容~/.gnupg。我即将开始全新安装,并且不想丢失任何无法恢复的内容。

使用备份迁移到新安装似乎不是最合理的做法。您正在执行“每日计划”之外的管理任务,这会增加执行过程中发生故障的概率;同时,您放弃了数据的主要副本,并相信第二份副本中的所有内容都没有问题。

如果你没有备用磁盘来存放主要数据(或者更好的是,你保留一段时间的旧设置的完整映像),那么不是备用的,买一个。反正它们很便宜。

答案2

您的方法是正确的,您保存了正确的目录并且采用了安全的方法。

检查openssl version您是否正在使用安全版本。

openssl加密的存储库放在托管密钥环的另一个物理介质上~/.gnupg,例如,您已验证的 USB 密钥,卸载并放入关闭的抽屉中。

答案3

你绝对需要备份您的私钥环。

你可能备份您的公钥环。

其他一切应该,严格来说,是可选的。

尽管如此,这些文件通常都很小(大约几兆字节或更小),以至于现在不备份所有内容确实没有任何好处在 ~/.gnupg 中。这样做可以确保您不会忘记后来发现很重要的东西。

我还要指出的是,OpenSSL 会暴露原始加密原语。如果您不清楚自己在做什么,直接使用它们很可能会无意中引入问题。如果您没有这样做的特定原因,请考虑仅使用 GnuPG 本身来加密档案。类似的东西tar cf - dir | gpg ...应该是一个好的开始(并且还可以避免在磁盘上创建中间文件)。

相关内容