设置ssh密钥后,无法使用vagrant up登录到vagrant

时间:2015-07-06 04:48:06

标签: ssh vagrant ssh-keys vagrantfile

我在我的流浪者盒子里有一个新用户(trusty64),我正试着ssh到它。我想登录我的用户名,而不是在vagrant之后登录vagrant up用户。

到目前为止我做了什么

  1. 在我的来宾计算机中创建了一个用户。
  2. 使用ssh-keygen
  3. 在我的主机中创建了ssh密钥
  4. 使用ssh-copy-id -p 2222 -i shash@127.0.0.1
  5. 将ssh密钥复制给访客

    和Vagrantfile的部分看起来像这样

      config.vm.box = "ubuntu/trusty64"
      config.ssh.username = "shash"
      config.ssh.forward_agent = true
      config.ssh.private_key_path = "~/.ssh/authorized_keys"
    

    我可以使用ssh -p '2222' 'shash@127.0.0.1'直接登录,但是当我提供vagrant up时,我一直收到以下错误

    default: Warning: Connection timeout. Retrying...
    default: Warning: Authentication failure. Retrying...
    default: Warning: Authentication failure. Retrying...
    

    任何帮助整理出来的确非常感谢。谢谢!

    完整的设置指南非常有帮助

2 个答案:

答案 0 :(得分:1)

当您指定'〜'时,vagrant文​​件将访问该用户的主目录。

config.ssh.private_key_path =" /home/shash/.ssh/authorized_keys"

放手一搏!

答案 1 :(得分:1)

将其添加到Vagrantfile:

Vagrant.configure("2") do |config|
  config.ssh.private_key_path = "~/.ssh/id_rsa"
  config.ssh.forward_agent = true
end
  1. config.ssh.private_key_path是您的本地私钥
  2. 您的私钥必须可供本地ssh-agent使用。您可以使用ssh-add -L进行检查,如果未列出,请添加ssh-add~ / .ssh / id_rsa
  3. 别忘了在Vagrant VM上为〜/ .ssh / authorized_keys添加公钥。您可以复制粘贴或使用ssh-copy-id
  4. 之类的工具

    https://stackoverflow.com/a/23554973/3563993

相关问题