ssh 没有要求我输入密码

ssh 没有要求我输入密码

SSH 不再要求输入私钥密码。我不明白这是怎么回事。

过去,我曾使用 ksshaskpass 从 KWallet 获取我的 ssh 密钥的密码并解锁我的密钥。每当我需要使用 ssh 时,我都会运行以下脚本:

#!/bin/bash
export SSH_ASKPASS=/usr/bin/ksshaskpass
/usr/bin/ssh-add < /dev/null

(旁注:我曾经在我的 .kde/Autostart/ 中有这个,但是大约一年前它停止工作了 - KWallet 会在登录时挂起)。

从上周开始,这个脚本就停止工作了。Ksshaskpass 似乎弹出一个提示让我输入密码。它似乎没有从 KWallet 获取密码。所以我在对话框中输入了密码,并点击了“每次登录时自动解锁此密钥”复选框来记住密码(以为这会再次将其添加到 KWallet)。自从这样做之后,ssh 再也不会要求我输入密码了。


这个对话框现在出现在我的另一台 Kubuntu 机器上。以下是它的屏幕截图: 在此处输入图片描述

我误以为这是 ksshaskpass 对话框。现在我相信它不是。

  1. 这是什么程序?
  2. 我如何撤消已选中的复选框?
  3. 如何让该程序停止劫持 ksshaskpass?
  4. 谁动了我的奶酪我该踢谁的屁股?

答案1

我找到了这个应用程序。我写了一篇关于它的博客文章:

http://swoogan.blogspot.ca/2015/04/ssh-passphrase-chaos.html

该应用程序是gcr-prompter。我使用以下命令将其从我的计算机中删除:

$ sudo aptitude purge gcr
$ sudo apt-get autoremove
$ rm -rf .local/share/keyrings

答案2

对于 KDE:查看 gnome-keyring-daemon 是否正在您的系统上运行。然后找出它是随哪个应用程序进入您的系统的(可能是运行某些 gnome 应用程序所需的 gnome libs)。

我遇到了同样的问题。我关闭了 gnome-keyring-daemon 并尝试了另一个 ssh 连接,没有出现额外的窗口,并且每次建立新连接时都会要求我输入密码。

我已将有问题的密钥环二进制文件设置为 600 权限。这应该会有所帮助,直到我完全解决这个问题。

答案3

  1. 我们需要在我们的计算机上找到“密码和密钥”应用程序并运行它。
  2. 现在我们需要找到合适的条目。在我的例子中,需要的条目是“密码”->“登录”->“解锁密码:SSH_KEY_USERNAME”。因此,我们可以通过在过滤器中输入“解锁密码”来搜索 SSH 密码。
  3. 要确认这是否是我们要找的内容:右键单击 -> “属性” -> “详细信息”选项卡,这里我们应该有类似这样的内容“unique: ssh-store:/home/USERNAME/.ssh/id_rsa”。我们还可以在“密钥” -> “密码” -> “显示密码”中看到我们的密码。
  4. 删除:右键点击->“删除”。
  5. 此后,我们可能需要重新启动计算机。

相关内容