多年来,我一直使用vagrant ssh
进入VirtualBox / Ubuntu 16.04设置。我最近在默认设置和权限方面遇到了问题,这个问题在网上广泛讨论,因此开始使用自定义键。我已将公共密钥粘贴到我的Ubuntu盒VM中的/ home / ubuntu / authorized_keys中,并将我的Vagrantfile指向〜/ .ssh / id_ecdsa上的私有密钥。
问题是当我vagrant ssh
时出现错误:
vagrant@127.0.0.1: Permission denied (publickey)
我可以与ssh vagrant@127.0.0.1 -p 2222
建立联系,但我想再次使用vagrant ssh
。
在启动过程中:SSH address: 127.0.0.1:2222
,我可以使用Webstorm和“ OpenSSH and authentication agent”配置连接到它。
§ vagrant ssh-config
Host pfbox
HostName 127.0.0.1
User vagrant
Port 2222
如果我ssh vagrant@127.0.0.1
收到消息ssh: connect to host 127.0.0.1 port 22: Connection refused
也许vagrant ssh
正在呼叫端口22而不是2222?我的自定义键设置可能有问题吗?在网上进行了大量研究后,我迷失了。
我使用ssh-keygen -t ecdsa -b 521
创建了OpenSSH在其站点上推荐的密钥。我也尝试过使用rsa。
MBP Mojave,Vagrant 2.2.3 / VirtualBox 6.0.2。
答案 0 :(得分:1)
由于vagrant ssh
答复身份验证错误,因此端口仍在端口2222上侦听。
我建议检查默认私钥是否仍然存在并且可读(例如,VirtualBox提供程序的默认私钥是.vagrant/machines/default/virtualbox/private_key
)。
如果是,请检查详细登录(vagrant ssh -- -vv
)。
无论如何,如果本地ssh有效,则意味着您的~/.ssh/
文件夹中有一个有效的pkey,因此vagrant ssh -- -i ~/.ssh/id_rsa
应该有效。