Vagrant的Ubuntu 16.04 vagrantfile默认密码

时间:2016-12-27 01:05:40

标签: linux ubuntu ssh vagrant vagrantfile

我尝试通过Vagrant 1.9.1部署和运行Ubuntu 16.04 VM。 我使用的Vagrantfile来自Atlas:

Ubuntu Xenial 16.04 Vagrantfile

我使用Debian Stretch作为主机操作系统。 Vagrant是通过Vagrant网站提供的.deb安装的。

Vagrantfile可以正确运行和部署。我可以通过我的主机操作系统和使用'vagrant ssh'进入虚拟机。但是,当我试图从外面进入ssh时,我有一个小阻挡者。

此VM中的默认用户名为' ubuntu',并且看起来设置了密码。但是,我根本不知道密码是什么,没有文档似乎有我正在寻找的信息。试图通过' passwd'设置密码VM中要求输入当前密码。有谁知道这是怎么回事?

所以我的大问题是:有没有其他人部署过同样的Vagrant文​​件,如果是这样,有人知道默认用户的密码是什么吗?

6 个答案:

答案 0 :(得分:28)

在此启动板讨论#1569237中,用户@prometee提及密码位于~/.vagrant.d/ubuntu-VAGRANTSLASH-xenial64/20161221.0.0/virtualbox/Vagrantfile

这是我的(第8行):

# Front load the includes
include_vagrantfile = File.expand_path("../include/_Vagrantfile", __FILE__)
load include_vagrantfile if File.exist?(include_vagrantfile)

Vagrant.configure("2") do |config|
  config.vm.base_mac = "022999D56C03"
  config.ssh.username = "ubuntu"
  config.ssh.password = "fbcd1ed4fe8c83b157dc6e0f"

  config.vm.provider "virtualbox" do |vb|
     vb.customize [ "modifyvm", :id, "--uart1", "0x3F8", "4" ]
     vb.customize [ "modifyvm", :id, "--uartmode1", "file", File.join(Dir.pwd, "ubuntu-xenial-16.04-cloudimg-console.log") ]
  end
end

仅供参考,用户@racb在this bug report having been filed to ubuntu和迄今为止no [...] decision has been made yet的同一个讨论中提及它。

答案 1 :(得分:23)

在撰写此答案时:没有人公开分享ubuntu Vagrant框中用户ubuntu/xenial64的密码(请参阅#1569237)。

没有必要。你可以:

  • 使用SSH密钥身份验证登录
  • 使用sudo passwd ubuntu更改密码(默认情况下ubuntu用户具有设置为NOPASSWD的sudo权限)

实际上,您不仅可以,而且更改密码。

答案 2 :(得分:6)

默认用户名和密码为:

用户:无业游民 密码:无业游民

答案 3 :(得分:3)

新的ubuntu/xenial64图片没有默认用户名和密码。但是,您可以使用在vagrant文​​件夹中生成的ssh密钥进行ssh。

我们假设您的Vagrant文​​件位于/vagrant/vm01/Vagrantfile,ssh-key位于/vagrant/vm01/.vagrant/machines/..../private_key

您可以使用此private_key登录您的流浪者vm。如果客人机要求密钥的密码短语,只需点击ENTER(指定空白密码短语)即可。例如,在我的Mac上:

ssh -i /vagrant/vm01/.vagrant/..../private_key <your vm user>@<your vm ip>:<your vm port>

如果您仍想使用用户名和密码登录,使用private_key登录后,您可以添加自己的用户以便日后登录:

# create a user for log in
sudo useradd yourusername

# specify a password
sudo passwd yourusername
# then type your password when prompted

# add the user to sudo group
sudo adduser yourusername sudo    

# create a home folder for your user
sudo mkdir /home/yourusername

# add a shell command for your user (normally /bin/bash)
sudo vim /etc/passwd
# find yourusername line, and add /bin/bash to the end.
# the end result would look like this:
yourusername:x:1020:1021::/home/yourusername:/bin/bash

现在您可以使用新的用户名和密码进行ssh。

答案 4 :(得分:0)

不确定通过vagrant安装时的ubuntu 16.X密码,但是您可以按照以下步骤自行更改-

[~/from-vagrant-project]vagrant ssh
[ubuntu@hostname]sudo -i
root@hostname:~# passwd ubuntu
Enter new UNIX password:XXXXX
Retype new UNIX password:XXXXX
passwd: password updated successfully`

答案 5 :(得分:-1)

如果这可以提供帮助:

我通过创建普通VM(在我的情况下是ubuntu / xenial)解决了自定义打包问题,然后复制了使用vagrant ssh-config找到的识别文件并将该文件用于config.sshprivate_key_path,另外还设置了{ {1}}到config.ssh.username。 (另见https://github.com/hashicorp/vagrant/issues/5186#issuecomment-355012068