【发布时间】:2016-02-26 15:45:42
【问题描述】:
在我的 Windows 10 上,我遇到了无法通过 ssh 用户使用 git bash 中的公钥身份验证方法连接到 m Vagrant 虚拟机的问题,使用诸如
之类的命令$ ssh -v lauser@127.0.0.1 -p 2222 -i ~/.ssh/id_rsa
系统会提示我输入密码,就好像我在 vm 内的 ~/.ssh/Authorized_keys 文件中复制到的公钥没有看到一样。同时,密码验证方法有效,“vagrant ssh”也有效。 我已经确定了
在本地创建密钥对,在远程创建一个.ssh目录,并将pub密钥字符串添加到远程的.ssh /authorized_keys文件中; .ssh 和 .ssh /authorized_keys 文件都归用户(lauser)所有,设置为 700 和 644
编辑 vm 上的 /etc/ssh/sshd_config 文件以使用 RSA认证是 公钥认证是 并重新启动 sshd 服务器(使用“sudo service ssh restart”)。
验证防火墙已被暂时禁用以消除任何并发症。
验证只有一个虚拟机在运行,所有其他虚拟机都处于“暂停”或“暂停”模式。
通过'file ~/.ssh/authorized_keys'确认文件类型,并得到确认'~/.ssh/authorized_keys: OpenSSH RSA public key'
通过比较 vm 中“sudo cat ~/.ssh/authorized_keys”的输出和本地“cat ~/.ssh/id_rsa.pub”的输出来验证密钥是否匹配。
但在尝试通过公钥身份验证进行连接时,我仍然收到 Permission denied (publickey)。
【问题讨论】:
-
ssh客户端和sshd服务器都可以告诉您更多信息。以详细模式运行客户端以确保它提供密钥。如果是这样,请检查服务器日志以了解它拒绝您的密钥的原因。 -
谢谢!除了“ssh -v”,我如何运行“详细模式下的客户端”?
标签: linux ssh vagrant public-key-encryption