如何禁用 SSH 和 GPG 的密钥环?

如何禁用 SSH 和 GPG 的密钥环?

如何禁用 SSH 和 GPG 的密钥环?

我想保留 wifi 和其他东西的密钥环。我使用的是 Ubuntu 12.04。

答案1

首先将文件复制/etc/xdg/autostart/gnome-keyring-ssh.desktop~/.config/autostart/

然后进行编辑~/.config/autostart/gnome-keyring-ssh.desktop以删除以下行:

NoDisplay=true

并在末尾添加以下行:

X-GNOME-Autostart-enabled=false

这应该会在您重新启动会话时禁用 SSH 管理。要禁用 GPG,请对文件执行相同操作/etc/xdg/autostart/gnome-keyring-gpg.desktop

答案2

在终端会话中(使用Ctrl- Alt- T),您可以使用以下命令停止 gnome-keyring 进程与 ssh 一起工作:

unset SSH_AUTH_SOCK 

--no-use-agentgpg 可以使用该选项来避免将 gnome-keyring 进程与 gpg 一起使用,但这是默认设置。

您可以使用以下命令阻止 nautilus seahorse-tool 使用 gpg-agent:

rm `echo $GPG_AGENT_INFO | sed s/:0:1//`

您可以使用以下命令完全停止 gnome-keyring 进程:

kill $GNOME_KEYRING_PID

上述各个操作均通过再次登录来恢复。


无线网络密码可供所有用户 ID 使用存储在/etc/NetworkManager/system-connections/目录中而不是存储在您的 gnome 密钥环中,因此如果您终止 gnome-keyring 进程,它们仍然可用。

ssh-add命令可用于在密钥环进程运行时从当前 gnome-keyring 中删除(或添加)特定密钥。

可以使用程序(seahorse)Passwords的选项卡从登录或其他密钥环中删除单独的密钥密码。Passwords and Keys

如果不存在 gnome-keyring,ssh-agent 仍将运行,但它不会存储 gpg 密钥。


其中有两行涉及/etc/pam.d/lightdm保存登录密码并使用登录密码解锁的登录密钥环启动 gnome-keyring-daemon。第二行启动守护进程:

session optional        pam_gnome_keyring.so auto_start

仅注释掉这一行就会阻止它使用登录密码解锁登录密钥环的系统所有用户的所有会话启动。

/etc/xdg/autostart/包含 gnome-keyring 可以处理的各种机密类别的启动条目。要阻止守护进程启动这些组件,可以将这些文件移出此目录。您可以移动所有 gnome-keyring-* 文件以阻止守护进程启动,或者只需拒绝再次提供登录密码以禁用登录密钥环,同时让守护进程保持运行。

答案3

要阻止 gnome-keyring 启动其(破碎的)Ubuntu 16.04上的SSH代理:

mkdir ~/.config/upstart || true
echo manual > ~/.config/upstart/gnome-keyring-ssh.override

# This step can be done with the gnome-session-properties tool
mkdir ~/.config/autostart || true
cp /etc/xdg/autostart/gnome-keyring-ssh.desktop ~/.config/autostart
echo 'X-GNOME-Autostart-enabled=false' >> ~/.config/autostart/gnome-keyring-ssh.desktop

答案4

对于当前版本的 Ubuntu,更改.desktop其他答案中提到的文件已经不够了。额外的 upstart 工作加入gnome-keyring-daemon文件位于/usr/share/upstart/sessions/gnome-keyring.conf并包含:

eval "$(gnome-keyring-daemon --start)" >/dev/null
initctl set-env --global SSH_AUTH_SOCK=$SSH_AUTH_SOCK
initctl set-env --global GPG_AGENT_INFO=$GPG_AGENT_INFO

--components=pkcs11,secrets这里需要通过在命令行中添加来限制守护进程仅提供某些服务。initctl也可以删除这些行,结果如下:

eval "$(gnome-keyring-daemon --start --components=pkcs11,secrets)" >/dev/null

相关内容