我知道gpg2使用gpg-agent获取私钥。默认情况下,它们存储在~/.gnupg/private-keys-v1.d
中。
现在,我在问自己是否可以指示gpg在另一台计算机上使用其他代理?该文档不是很有帮助,因为它没有解释如何将您的gpg连接到另一个gpg代理。但是由于gpg2要求您使用gpg-agent,因此没有其他方法可以使用新的密钥环。
我的第二个问题是,是否可以指示gpg-agent使用除默认private-keys-v1.d
以外的其他目录来查找密钥?
gpg2的文档也没有包含指定新公共密钥环的选项。尽管文档中不再提及,它仍然可用吗?
问候Sebi2020
答案 0 :(得分:1)
如果您通过SSH从机器A(例如您的PC)连接到远程机器B,可以,您可以使用GnuPG Agent Forwarding指示B上的gpg2在A上使用gpg2代理(链接到gnupg手册) )。这是通常可以在远程计算机上使用本地gpg密钥的方式。确保具有正确的gnupg和OpenSSH版本(请参见手册)。
您可能无法仅更改子文件夹名称private-keys-v1.d
本身,但可以将默认gpg主目录~/.gnupg/private-keys-v1.d
替换为whatever_directory/private-keys-v1.d
,whatever_directory
您要用作gpg主目录的目录。这样做的2种方法:设置GNUPGHOME
环境变量,或使用gpg --homedir
选项。至少对于gpg 2.2.4仍然有效。例如。使用USB驱动器上的gpg密钥:gpg --homedir /media/usb1/gnupg ...
指定新的公共密钥环的选项为--keyring
和--primary-keyring
(使用--no-default-keyring
完全排除默认密钥环)。适用于gpg 2.2.4。