我在 Ubuntu 服务器上。我正在尝试启用 ssh 隧道,以便在我的项目中添加 git 远程。
- 在我的本地 win7 机器上,我使用 PuTTYgen 生成了密钥对。
- 我将公钥粘贴到
authorized_keys
文件中 - 我将私有 PuTTY ppk 文件路径设置为 putty Auth 配置
当我尝试打开远程 shell 时出现错误Server refused our key
。
检查日志: Connection closed by <ip> [preauth]
在/var/log/auth.log
。
更多信息:
~/.ssh/authorized-keys
具有权限 664。
该文件的名称authorized-keys
不是,authorized_keys
这会是个问题吗?
我错过了什么?
答案1
名称应~/.ssh/authorized_keys
改为authorized-keys
。可能是有人在设置这个(对于另一个键)时错误地命名了文件,并且同样想知道为什么它不起作用。
此外,该文件不应由除所有者之外的任何人写入。因此权限应为 644。您可以使用以下方法修复此问题
chmod go-w ~/.ssh/authorized_keys
答案2
这个答案可能有点晚了,但对于那些寻求类似问题的人来说,我建议对远程服务器的copy
文件最好的方法是使用以下命令:public key
authorized_key
ssh-copy-id remoteuser@remotehost
这会将当前用户的公钥复制到远程服务器,并避免输入错误。
此外,-i
标志可用于指向不同的身份文件。
答案3
如果消息中的 IP 地址是客户端的 IP 地址,则可能表明客户端正在尝试使用其私钥的错误密码进行身份验证。