我决定尝试一下 Laravel Forge,但我遇到了 SSH 密钥问题。我使用 digitalocean.com 来管理虚拟机,之前曾多次成功使用 SSH 密钥。
但是当我将公钥粘贴到 Forge(将其添加到服务器)时,我无法连接到它。我使用 Putty 并收到以下错误:
已断开连接:没有可用的受支持的身份验证方法(服务器发送:公钥)
密钥是使用 puttygen 生成的,并已添加到 pageant。
我尝试使用与其他 VM 相同的密钥文件并尝试创建一个新的密钥文件,但都没有成功。
我希望有人能帮助我。
编辑:这是我的腻子日志http://pastebin.com/ZGmm8Mcv
答案1
@alysdal 的回答对我来说非常有效。只需在此网站上查看步骤即可:
您必须修改您的公钥,并从此表单转换生成的密钥
---- BEGIN SSH2 PUBLIC KEY ----
Comment: "rsa-key-20160907"
AAAAB3NzaC1yc2EAAAABJQAAAIEA3nfXA8oSOGcx1OJg0/2dkgH2gDXhN6GX5/QW
KyPif8tHYh/GBvwsnoLyPAUNq9D9wv/g+DxBr1nGpIwIAICxycHNEq7iNGcImhWs
rlEWBWRE8fYG4Qpx0/CKDcNsCZzjiu0exwp4pw5nDcZQOsr321bly3edRgfgmgix
rzLaOCk=
---- END SSH2 PUBLIC KEY ----
变成这种形式
ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEA3nfXA8oSOGcx1OJg0/2dkgH2gDXhN6GX5/QWKyPif8tHYh/GBvwsnoLyPAUNq9D9wv/g+DxBr1nGpIwIAICxycHNEq7iNGcImhWsrlEWBWRE8fYG4Qpx0/CKDcNsCZzjiu0exwp4pw5nDcZQOsr321bly3edRgfgmgixrzLaOCk= user@host
意思是:
- 删除前两行和最后一行。
- 将剩余行合并为一行,不带空格
ssh-rsa
在文件开头插入一个尾随空格- 可选:您可以
<user>@<host>
在文件末尾附加一个空格。
答案2
事实证明 putty 和 openssh 不兼容。我按照以下指南修改了我的 ssh 密钥,现在可以无缝运行。