It is possible to run virtual machines (VMs) inside other VMs. That is called nested virtualization: 
Nested virtualization refers to virtualization that runs inside an already virtualized environment. In other words, it's the ability to run a hypervisor inside of a virtual machine (VM), which itself runs on a hypervisor.
With nested virtualization, you're effectively nesting a hypervisor within a hypervisor. The hypervisor running the main virtual machine is considered a level 0, or LO hypervisor, and the initial hypervisor running inside the virtual machine is referred to as a level 1 or L1 hypervisor. Further nested virtualization would result in a level 2 (L2) hypervisor inside the nested VM, then a level 3 (L3) hypervisor within that nested VM, and so forth.
Not all hypervisors and operating systems support nested virtualization. Hypervisors that do support nested virtualization include KVM and VMware ESXi hypervisors (called Nested ESXi). Nested ESXi also supports Hyper-V, Xen and KVM guest hypervisors as of ESXi version 6.0.
Nested virtualization isn't a by-product of developing a virtualizer. Just by developing a functional virtualizer there is not automatically offerthe possibility to run nested virtualization of its own or third party virtualizers. For example while the virtualizer VirtualBox existed for years, the ability to run VirtualBox inside VirtualBox using Intel CPUs was only released in VirtualBox 6.1 in 2020.  This demonstrates that extra code is required for this functionality and extra code means more attack surface.
By mixing virtualizers, for example by running the virtualizer VirtualBox inside another virtualizer VMware the attack surface increases as both virtualizer code gets involved.
Running VirtualBox, KVM or Qubes inside Qubes is difficult and is not offically supported by the Qubes developers; this is unrelated to Whonix ™. To learn more about the current state of support, search the qubes-devel [archive] and qubes-users [archive] mailing lists for terms such as VirtualBox, KVM and/or nested virtualization.
VirtualBox inside VirtualBox
First change your host key:
Host Key. The "outside" and the "inside" Host Key must differ, otherwise you can not leave the "inside" VM anymore.
VirtualBox only partially supports VT-in-VT -- nested AMD-V is functional (although not feature complete), while nested VT-x for Intel CPUs is still a work-in-progress.  Therefore the "inside" VM might be slow depending on your host's make and performance. For Intel CPUs, in the "inside" VM, disable VT:
right-click on VM →
uncheck "Enable VT-x/AMD-V"
Running Whonix ™ in a Nested Virtual Machine
Only Whonix ™ 64-bit builds are available for download. See Dev/64bit for why. Some virtualizers have no or limited support running nested VMs that require 64-bit. This might be an issue when trying to run Whonix ™ in a nested virtual machine.
- https://www.webopedia.com/TERM/N/nested-virtualization.html [archive]
Hardware-assisted Nested virtualization on Intel CPUs has been available starting with VirtualBox 6.1.0
vboxmanage "Whonix-Workstation" modifyvm --acpi on
right-click on VM→
uncheck "Enable IO APIC"
vboxmanage "Whonix-Workstation" modifyvm --ioapic on
- https://www.virtualbox.org/ticket/4032 [archive]
This is a wiki. Want to improve this page? Help is welcome and volunteer contributions are happily considered! Read, understand and agree to Conditions for Contributions to Whonix ™, then Edit! Edits are held for moderation.
Copyright (C) 2012 - 2019 ENCRYPTED SUPPORT LP. Whonix ™ is a trademark. Whonix ™ is a licensee [archive] of the Open Invention Network [archive]. Unless otherwise noted, the content of this page is copyrighted and licensed under the same Freedom Software license as Whonix ™ itself. (Why?)