我有一个受密码保护的 SSH 密钥存储在~/.ssh/id_rsa
.在我的.zshrc
我有这个片段:
if ! ssh-add -l > /dev/null; then
ssh-add
fi
启动后,我通常打开终端,看到密码提示,然后解锁我的 KeePass 2 DB,将密码复制到剪贴板并将其粘贴到终端中以将密钥添加到代理。
几天前,我重新启动了系统,登录并打开了终端。令我惊讶的是,密码提示并没有出现。令我惊讶的是,我输入ssh-add -l
后发现我的密钥已添加。这很奇怪,但我挥手示意它走开,以为我忘记了我已经输入了密码。
刚才跑了一下sudo systemctl kexec
,登录后,key已经又添加了。我的 KeePass 数据库被锁定。密码较长且随机 ( /[a-zA-Z0-9]{20}/
)。这次我怀疑这是特定于 的东西kexec
,但又过了一次sudo systemctl kexec
,出现了密码提示,密钥没有添加到代理中。
- 为什么我的 SSH 密钥有时会在重新启动后添加到代理中?
冷启动后也会出现这种情况吗?(是的)- 我可以做什么来预防它?
我使用的是 Pop!_OS 18.04,使用 UEFI 从 GPT 磁盘启动,并使用 LUKS 加密/
和未加密/boot,
的 LVM(如果有的话)。
编辑:4 天后我刚刚冷启动,密钥已经再次添加到代理中。
答案1
重新安装 Seahorse 发现密钥密码已记住在系统密钥环中。我不知道添加密钥的原因是什么,但我能够使用 Seahorse 删除记住的密码。