使用带有私钥的GPG加密的异地备份永远不会在备份服务器上?

@H_502_0@
我有一个备份服务器,它创建要备份的目录树的xz压缩tar档案.这些tar档案可以变得庞大(多个TB),被分成几块(2.5TB),每一块都被写入LTO-6磁带,而磁带也会出现在异地.

现在我想添加加密.我可以在拆分之前使用公钥 – 私钥加密以及一个或多个收件人(管理员公钥)来加密tar存档.

但是,在恢复的情况下,至少有一个管理员需要将他的私钥放到备份服务器上,因为这些文件太大而无法在其他任何地方解压缩.

GPG使用混合加密方案,使用AES等对称密码和会话密钥,只有该会话密钥才能为收件人加密公钥 – 私钥.

有没有办法让管理员提供会话密钥来解密要恢复的文件,而无需将私钥放到备份服务器上?

我当然可以重新发明轮子:

>根据要备份的每个文件在备份服务器上创建随机会话密钥
>使用GPG对称加密来加密文件
>使用GPG非对称加密来加密每个收件人的会话密钥

但是,是否有“标准”或内置或最佳实践方式实现上述目标?

解决方法

使用–show-session-key和–override-session-key选项绝对可以实现.

首先,您需要加密文件的开头.这是存储加密会话密钥的位置.

root @ qwerty:〜/ gpg #head -c 1024k bigfile.gpg> head.gpg

然后将其复制到工作站并检索会话密钥

PS C:\Users\redacted\Downloads> gpg --show-session-key .\head.gpg
gpg: encrypted with 2048-bit RSA key,ID DC21D645,created 2016-02-01
  "admin <[email protected]>"
gpg: session key: '9:926EC16DF1248A1C4401F5AD5D86C63C1BD4BF351ECEFB121C57EC209DE3933D'

现在,您可以使用会话密钥解密文件

root@qwerty:~/gpg# gpg -d -o bigfile --override-session-key 9:926EC16DF1248A1C4401F5AD5D86C63C1BD4BF351ECEFB121C57EC209DE3933D bigfile.gpg
gpg: encrypted with 2048-bit RSA key,created 2016-02-01
  "admin <[email protected]>"

相关文章

/etc/sysctl.conf这个目录主要是配置一些系统信息,/etc/sys...
1.作用 useradd或adduser命令用来建立用户帐号和创建用户的起...
它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅...
不管是我们在安装软件还是监测软件的使用性能,我们都要随时...
装好Tomcat7后,发现除了本机能访问外界访问不了,岂有此理。...
修改防火墙配置需要修改 /etc/sysconfig/iptables 这个文件,...