Vagrant的Ubuntu 16.04 vagrantfile默认密码

vecaoik1  于 2023-04-20  发布在  其他
关注(0)|答案(6)|浏览(323)

我尝试通过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中。但是,当尝试从外部ssh时,我有一个小的阻塞。
此VM中的默认用户名为'ubuntu',并且看起来设置了密码。但是,我根本不知道密码是什么,并且似乎没有文档包含我要查找的信息。尝试在VM中通过'passwd'设置密码要求输入当前密码。有人看到这是怎么回事吗?
所以我的大问题是:是否有其他人部署了相同的Vagrantfile,如果有,是否有人知道默认用户的密码是什么?

oipij1gg

oipij1gg1#

在写下这个答案时:没有人公开分享ubuntu/xenial64 Vagrant box上的用户ubuntu的密码(参见#1569237)。
不需要。您可以:

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

事实上,你不仅可以,而且你应该修改密码。

bq9c1y66

bq9c1y662#

密码位于~/.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到ubuntu和到目前为止no [...] decision has been made yet关于它。

pcrecxhr

pcrecxhr3#

默认用户名和密码为:
用户:vagrant
密码:vagrant

wgmfuz8q

wgmfuz8q4#

新的ubuntu/xenial64镜像没有默认的用户名和密码,但是你可以使用在你的vagrant文件夹中生成的ssh-key进行ssh。
假设您的Vagrantfile位于/vagrant/vm01/Vagrantfile,则ssh-key将位于/vagrant/vm01/.vagrant/machines/..../private_key
您可以使用此private_key登录到您的vagrant 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。

vlju58qv

vlju58qv5#

当你通过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`
qoefvg9y

qoefvg9y6#

如果这可以帮助:
我通过创建一个普通的虚拟机(在我的例子中是ubuntu/xenial)解决了自定义打包问题,然后复制在vagrant ssh-config中找到的Identify文件并将该文件用于config.sshprivate_key_path,另外还将config.ssh.username设置为ubuntu。(另见https://github.com/hashicorp/vagrant/issues/5186#issuecomment-355012068)

相关问题