当前位置: 首页>>技术教程>>正文


linux – Vagrant的Ubuntu 16.04 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时,我有一个较小的阻止程序。

该虚拟机中的默认用户名为’ubuntu’,看起来已设置了密码。但是,我根本不知道密码是什么,而且似乎没有文档提供我想要的信息。尝试通过VM中的’passwd’设置密码时要求输入当前密码。有人知道它要去哪里吗?

所以我的最大问题是:是否有其他人部署了相同的Vagrantfile?如果是,是否有人知道默认用户的密码是什么?

最佳回答

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

这不是必需的。您可以:

  • 使用SSH密钥身份验证登录

  • 使用sudo passwd ubuntu更改密码(默认情况下,ubuntu用户的sudo-permissions设置为NOPASSWD)

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

次佳回答

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

这是我的(第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相同的讨论中提到。

第三种回答

新的ubuntu/xenial64映像没有默认的用户名和密码。但是,您可以使用在vagrant文​​件夹中生成的ssh-key ssh。

假设您的Vagrantfile位于/vagrant/vm01/Vagrantfile,ssh-key将位于/vagrant/vm01/.vagrant/machines/..../private_key

您可以使用此private_key登录到无业游民的虚拟机。如果访客计算机要求输入密钥的密码短语,则只需按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。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/9902.html,未经允许,请勿转载。