【Vagrant】初期パスワードとパスワードの変更方法


この記事はプロモーションを含みます。

Vagrantで作成する仮想マシンの初期パスワードと、パスワードを変更する方法を解説します。

初期パスワード

Vagrantで作成した仮想マシンのユーザーの初期パスワードです。

ユーザーパスワード
vagrantvagrant
rootvagrant

パスワードの変更方法

パスワードの変更方法は様々なものがあると思いますが、
ここでは「vagrant up」コマンドの実行時(仮想マシンの起動時)に、
自動でパスワードを変更する方法を説明します。

ちなみによく見かけるvagrantfileの設定に「config.ssh.password」がありますが、これは仮想マシンのパスワードを変更する設定ではなく、Vagrantが仮想マシンへ接続する際のパスワードを設定するパラメーターのようです。

vagrantユーザーのパスワードを変更する

「vagrant」ユーザーのパスワードを変更する場合は、「vagrantfile」に以下を追記します。

こちらの方法で「CentOS」のパスワードを変更すると、仮想マシンが中途半端な状態で起動され、接続出来なくなるので注意して下さい。
仮想マシンの停止や削除は出来ました。
Ubuntuでは、問題ないようです。

config.vm.provision 'shell', inline: 'echo "vagrant:password" | chpasswd'

下記は、vagrantfileの記述例です。

Vagrant.configure("2") do |config|
  config.vm.box = "generic/ubuntu2004"
  config.vm.network "public_network", ip: "192.168.254.200"
  config.vm.provider "vmware_desktop" do |v|
    v.vmx["displayname"] = "VMwareTest01"
    v.allowlist_verified = true
    v.gui = false
    v.memory = 2048
    v.cpus = 2
  end
  config.vm.box_check_update = false
  config.ssh.insert_key = false
  config.vm.provision 'shell', inline: 'echo "vagrant:password" | chpasswd'
end

rootユーザーのパスワードを変更する

「root」ユーザーのパスワードを変更する場合は、「vagrantfile」に以下を追記します。

config.vm.provision "shell", inline: <<-SHELL
  echo "root:password" | sudo chpasswd;
SHELL

下記は、vagrantfileの記述例です。

Vagrant.configure("2") do |config|
  config.vm.box = "centos/7"
  config.vm.network :private_network, ip: "192.168.254.200"
  config.vm.provider "virtualbox" do |vb|
    vb.name = "VBoxTest01"
    vb.gui = false
    vb.memory = "2048"
    vb.cpus = 2
  end
  config.vm.box_check_update = false
  config.ssh.private_key_path = "C:/VM/Vagrant/insecure_private_key"
  config.ssh.insert_key = false
  config.vm.provision "shell", inline: <<-SHELL
    echo "root:password" | sudo chpasswd;
  SHELL
end

記事は以上です。

コメント

タイトルとURLをコピーしました