What is Multipass?
Multipass is a lightweight VM manager that lets you create and manage Ubuntu virtual machines on your local machine. It provides a simple CLI to launch, configure, and manage VMs without the overhead of traditional virtualization solutions.Installation
You can install Multipass on Windows in two ways: Manual installer — download from the official Windows download page and run the installer. Microsoft Store — search for Multipass in the Microsoft Store and install directly.Known Issues on Windows
- Unable to launch instances with the default Hyper-V backend — switching to VirtualBox resolves this.
- Cannot shell, SSH, or exec into a VM instance when connected to a VPN (e.g. Cisco GlobalProtect). Routing VPN traffic from host to VM via
route addmay not work without IT team involvement. - Cannot ping the VM instance IP from the host machine while on VPN.
Setting Up a VM Instance
The goal is to create a VM that supports port-forwarding to the host machine, even over a VPN network.Download and install VirtualBox. Make sure to install the VirtualBox driver as Administrator.
Download PsTools and add the
PsTools directory to your system PATH. PsTools is needed to interact with VirtualBox GUI because Multipass runs as the System account.If you see a See Multipass Service Stuck on Windows for full details.
Waiting for Daemon to start error, force-kill the service using PowerShell (as Administrator):A bridged network allows the VM to obtain an IP on the same segment as the host. First, list available network interfaces:
Name Type Description
Ethernet 5 ethernet Lenovo USB Ethernet
Wi-Fi wifi Intel(R) Wi-Fi 6 AX201 160MHz
Copy the public key from
C:\Users\<user>\.ssh\multipass-ssh-key.pub, then create a cloud-init config:users:
- default
- name: karchunt
sudo: ALL=(ALL) NOPASSWD:ALL
ssh_authorized_keys:
- <Your Public Key>
For SSH access over VPN, direct SSH to the VM IP will not work. Instead, use port-forwarding through localhost. To inspect or configure port-forwarding rules, launch the VirtualBox GUI via PsTools (run as Administrator):
ssh karchunt@localhost -i "C:\Users\karchunt\.ssh\multipass-ssh-key" -o StrictHostKeyChecking=no -p 56041
When inside the VM on a VPN network,
curl requests may fail even if VPN traffic is not routed to the VM. Export proxy environment variables as needed:PsExec -s $env:VBOX_MSI_INSTALL_PATH\VBoxManage.exe controlvm "primary" natpf1 "myservice,tcp,,8000,,8000"
For more on VirtualBox port-forwarding, see the VirtualBox NAT documentation.