如何在Ubuntu 17.10上修复“ssh-agent拒绝操作”的问题?

我在一台机器上安装了Ubuntu 17.10,并创建了一个SSH密钥。然而,我无法使用Gnome Keyring来解锁这个SSH密钥,每当我尝试通过SSH连接或使用我的SSH密钥与Git时,总是会收到以下错误消息:
sign_and_send_pubkey: signing failed: agent refused operation

我找到了很多关于这个消息的帖子和问题,但是没有一个能解决我的问题... 一些来自我的系统的输出:
$ env | grep -i ssh
    SSH_AUTH_SOCK=/run/user/1000/keyring/ssh
    SSH_AGENT_PID=1139

$ ps aux | grep -i 'agent\|keyring'
    username    997  0.0  0.1 509344  8064 ?        Sl   15:15   0:00 /usr/bin/gnome-keyring-daemon --daemonize --login
    username   1139  0.0  0.0  11240   324 ?        Ss   15:15   0:00 /usr/bin/ssh-agent /usr/bin/im-launch env GNOME_SHELL_SESSION_MODE=ubuntu gnome-session --session=ubuntu

$ ssh-add -l
    4096 SHA256:fingerprintXXX username@machine (RSA)

我在虚拟机中重新安装了Ubuntu,如果尝试使用SSH或带有SSH密钥的Git,图形化的密码对话框会弹出并无缝地要求输入我的密码。
1个回答

代理工作,只是因为它认为你在做一些不安全的事情,所以不合作。
最常见的情况是由于您的ssh密钥文件权限设置错误。例如,如果您从另一台计算机复制了它们,请确保~/.ssh文件夹具有700权限(只能由您访问),同样,其中的文件不应该对其他人可读。
chmod 700 ~/.ssh
chmod 600 ~/.ssh/*