如何清除缓存的 gpg 密码?

Tho*_*uit 33 password cache gnupg

我试过了:

  • SIGHUP 方法 --> 没有成功
  • gpg-agent.conf 中的缓存超时 --> 似乎未读取此文件,尽管我在 gpg.conf 中有“use-agent”行

我该怎么办 ?

Mat*_*lis 56

对于那些真正使用 gpg-agent 的人,你可以忘记密码:

echo RELOADAGENT | gpg-connect-agent
Run Code Online (Sandbox Code Playgroud)

  • 谢谢!这对于 `gnome-keyring-daemon` 也很有效(在 14.04 上) - 我到处寻找一个简单的“忘记”! (2认同)

DrB*_*eco 25

GPG:在单个命令中:

gpg-connect-agent reloadagent /bye
Run Code Online (Sandbox Code Playgroud)

SSH:对于 ssh 代理,您可能需要这两个:

ssh-add -D    #delete identities
ssh-agent -k  #kill ssh-agent
Run Code Online (Sandbox Code Playgroud)

  • 我想知道为什么他们不使用 gpg 本身让这变得更容易。示例:`gpg --清除密码缓存` (2认同)

Jon*_*aco 10

首先让我说我有完全相同的问题......


您的 GPG 机密可能正在由 Gnome Keyring 处理,即使它gpg-agent正在运行。此答案提供了有关其可用选项的一些详细信息。

另一种方法是禁用 Gnome Keyring 的 GPG 组件,以便gpg-agent使用:

  • 您可以通过删除(或重命名为 以外的其他名称*.desktop)文件来完成此操作/etc/xdg/autostart/gnome-keyring-gpg.desktop
  • 您可能已经拥有gpg-agent自动启动所需的设置。至少对我来说,运行 Ubuntu 13.04,这是真的。但是,如果需要,请参阅此帖子以获取有关如何配置它的一些信息。
  • 注销并再次登录后,它gpg-agent应该正在运行,它确实对输入的设置~/.gnupg/gpg-agent.confSIGHUP信号做出响应。
  • 最后一点,禁用 Gnome Keyring 的 SSH 组件可能是明智的,因为:
    • 您可能也不希望在整个会话期间解锁 SSH 密钥,并且可能想要使用/配置ssh-agentgpg-agent
    • 您的gpg-agent自动启动配置可能已经包含 SSH 支持(Ubuntu 13.04 中的默认支持)


小智 6

gpgconf --reload gpg-agent
Run Code Online (Sandbox Code Playgroud)

这对我有用......希望这能回答您的问题。