VirtualBox is a great piece of virtualization software. It not only allows us to run and test different Operating Systems inside Virtual Machines (VMs) from the comfort of our main desktop computer with point-and-click, but it also enables us to setup and run VMs on remote headless servers from the command line. And we can control these VMs remotely via a plain RDP client. This is great because when you host your VMs on server hardware (usually without any graphical UI) you don’t really need the full fledged GUI of VirtualBox (and its Qt/SDL dependencies) nor to display the VM output locally. Instead you just need some commands to setup and start your VM. Then all you want is to connect to it remotely and install an OS. With VirtualBox, this is accomplished via the commands VBoxManage and VBoxHeadless. This is how it can be done.