应用程序想要访问私钥,但私钥已被锁定 - SSH

应用程序想要访问私钥,但私钥已被锁定 - SSH

为了使用 ssh 登录我的共享托管服务器,我生成了公钥/私钥,授权了公钥,然后下载了公钥和私钥,最后将这些密钥移动到运行 ubuntu 的桌面上的 .ssh 文件夹中。

以下是我的密钥的权限:

-rw-rw-r-- id_rsa

复制代码

当我尝试通过 ssh 进入我的服务器时,系统要求我输入密码,并提示“应用程序想要访问私钥,但私钥已被锁定”。

我试过登录密码,但不起作用。我遗漏了什么?

(转自 stackoverflow)

答案1

根据Gnome Keyring SSH 代理wiki,有三种方法可以实现这一点:

  • 使用“启动应用程序”capplet(即:gnome-session-properties)并禁用“SSH 密钥代理”启动程序。
  • 使用此配置选项构建不支持 SSH 的 gnome-keyring:./configure --disable-ssh-agent
  • 如果您手动或从脚本启动 gnome-keyring,则可以使用 --components 选项来排除启动 SSH 支持:gnome-keyring-daemon --components keyring,pkcs11

答案2

我认为这种情况发生是因为gnome-keyring守护进程正在管理 ssh 密钥(它不应该这样做,因为 ssh 已经有代理了)。您可以通过发出以下命令告诉守护进程停止执行此操作:

sudo gconftool-2 --set -t bool /apps/gnome-keyring/daemon-components/ssh false

我也见过这个版本的命令(来源):

sudo gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type bool --set /apps/gnome-keyring/daemon-components/ssh FALSE

答案3

对我来说,以下解决方案有效,将私钥添加到 ssh-agent

$ eval "$(ssh-agent -s)"
> Agent pid 59566

$ ssh-add ~/.ssh/id_rsa

答案4

对我来说,这不是密码主机或服务器,但密码这是我生成密钥时提供的。

相关内容