5

我知道 gpg2 使用 gpg-agent 来获取私钥。默认情况下,它们存储在~/.gnupg/private-keys-v1.d.

现在我在问自己是否可以指示 gpg 在另一台机器上使用另一个代理?该文档不是很有帮助,因为它没有解释如何将您的 gpg 连接到另一个 gpg-agent。但是由于 gpg2 要求您使用 gpg-agent,因此他们没有其他方法可以使用新的密钥环。

我的第二个问题是,是否可以指示 gpg-agent 使用另一个目录而不是默认目录private-keys-v1.d来查找密钥?

gpg2 的文档也没有包含指定新公钥环的选项。尽管文档中不再提及,但它仍然可用吗?

问候 Sebi2020

4

1 回答 1

3

如果您通过 SSH 从机器 A(例如您的 PC)连接到远程机器 B,是的,您可以使用 GnuPG代理转发(链接到 gnupg 手册)指示 B 上的 gpg2 在 A 上使用 gpg2 代理。这就是您通常可以在远程机器上使用本地 gpg 密钥的方式。确保你有合适的 gnupg 和 OpenSSH 版本(参见手册)。

您可能无法仅更改子文件夹名称private-keys-v1.d本身,但您可以将默认的 gpg 主目录替换为~/.gnupg/private-keys-v1.dwhatever_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。

于 2019-02-17T18:46:25.297 回答