Vagrant.configure("2") do |config| BOX_NAME = "ubuntu/jammy64" BOX_VERSION = "20241002.0.0" DESKTOP_BOX_NAME = "kalilinux/rolling" DESKTOP_BOX_VERSION = "2025.1.0" config.vm.define "sandbox" do |sandbox| sandbox.vm.box = BOX_NAME sandbox.vm.box_version = BOX_VERSION sandbox.vm.hostname = "sandbox.vm" sandbox.vm.network "private_network", ip: "192.168.56.10" sandbox.vbguest.no_install = true sandbox.vm.provider "virtualbox" do |v| v.memory = 2048 v.cpus = 2 v.customize ["modifyvm", :id, "--vram", "128"] v.customize ["modifyvm", :id, "--graphicscontroller", "vmsvga"] end sandbox.vm.synced_folder ".", "/vagrant" sandbox.vm.provision "ansible_local" do |ansible| ansible.playbook = "/vagrant/sandbox/playbook.yml" end sandbox.vm.provision "file", source: "../idle_measurement.sh", destination: "$HOME/idle_measurement.sh" end config.vm.define "client" do |client| client.vm.box = DESKTOP_BOX_NAME client.vm.box_version = DESKTOP_BOX_VERSION client.vm.hostname = "client.vm" client.vm.network "private_network", ip: "192.168.56.20" client.vbguest.installer = :debian client.vm.provider "virtualbox" do |v| v.memory = 4096 v.cpus = 2 v.customize ["modifyvm", :id, "--accelerate3d", "on"] v.customize ["modifyvm", :id, "--vram", "128"] v.customize ["modifyvm", :id, "--graphicscontroller", "vmsvga"] v.customize ["modifyvm", :id, "--clipboard-mode", "bidirectional"] end client.vm.synced_folder ".", "/vagrant" # required, see https://forums.kali.org/t/important-blog-post-a-new-kali-linux-archive-signing-key/6986 client.vm.provision "shell", inline: "sudo wget https://archive.kali.org/archive-keyring.gpg -O /usr/share/keyrings/kali-archive-keyring.gpg" client.vm.provision "ansible_local" do |ansible| ansible.playbook = "/vagrant/client/playbook.yml" end end end