我在连接SSH服务时遇到问题,
ssh-agent正在运行:
ps -e | grep ssh
12163? 00:00:00 ssh-agent
并缓存我唯一的身份:
ssh-add -l <br/>
4096 25:56:f4:9c:09:65:fe:39:b3:17:73:bd:3c:76:3f:8d /home/matthias/.ssh/id_rsa(RSA)
一切都应该存在:
ls~ / .ssh /
id_rsa id_rsa.pub known_hosts
和id_rsa.pub上传到Bitbucket.org SSH-Keys部分..
然而,SSH身份验证失败(使用详细模式,可以看到,它以某种方式尝试加载不存在的id_dsa文件)
ssh -v -T hg@bitbucket.org
[...]
debug1:下一个身份验证方法:publickey
debug1:提供RSA公钥:/home/matthias/.ssh/id_rsa
debug1:可以继续的身份验证:publickey
debug1:提供RSA公钥:/home/matthias/.ssh/id_rsa
debug1:Remote:强制命令:conq username:matthias_hueser
debug1:远程:禁用端口转发 debug1:远程:禁用X11转发 debug1:远程:禁用代理转发 debug1:远程:禁用Pty分配 debug1:服务器接受密钥:pkalg ssh-rsa blen 535
debug1:key_parse_private_pem:PEM_read_PrivateKey失败
debug1:读取PEM私钥完成:键入
输入密钥'/home/matthias/.ssh/id_rsa'的密码:
debug1:读取PEM私钥完成:输入RSA
debug1:Remote:强制命令:conq username:matthias_hueser
debug1:远程:禁用端口转发 debug1:远程:禁用X11转发 debug1:远程:禁用代理转发 debug1:远程:禁用Pty分配 debug1:可以继续的身份验证:publickey
debug1:尝试私钥:/home/matthias/.ssh/id_dsa
没有这样的身份:/home/matthias/.ssh/id_dsa:没有这样的文件或目录
debug1:尝试私钥:/home/matthias/.ssh/id_ecdsa
没有这样的身份:/home/matthias/.ssh/id_ecdsa:没有这样的文件或目录
debug1:没有更多的身份验证方法可供尝试 权限被拒绝(公钥)。
是否有其他人遇到同样的问题并且有 一个建议?
[感谢编辑]
答案 0 :(得分:1)
您看到的输出与服务器拒绝您的id_rsa
密钥一致。即使您没有在命令行中指定它们或将它们加载到您的ssh-agent中,ssh也会检查id_rsa
,id_dsa
和id_ecdsa
。
如果我对此进行故障排除,我会从图片中删除ssh-agent并在命令行中指定您的私钥。
在您之后关闭的新shell中运行此功能,这样您就不会丢弃现有环境:
$ bash
$ unset SSH_AGENT_PID SSH_AUTH_SOCK
$ ssh -v -T -i ~/.ssh/id_rsa hg@bitbucket.org
[...]
$ exit
(ssh-keygen应该提示您输入密钥的密码)
如果有效,我会仔细检查你的ssh-agent提供的密钥实际上是否正确。你可以
$ ssh-keygen -y -f ~/.ssh/id_rsa
并检查ssh-agent中的内容:
$ ssh-add -L
如果代理中的身份不同,则应使用ssh-add -D
转储密钥并重新加载。如果它没有什么不同,我不确定是什么。希望有所帮助。