Whonix ™ for VirtualBox with Xfce

From Whonix
Jump to navigation Jump to search

Whonix ™ Xfce in VirtualBox

Please follow these steps to install Whonix ™ Xfce

1. Download Whonix ™ Xfce for Windows, MacOS and Linux

Optional: Verify the Whonix ™ Images cryptographically

Version: 16.0.4.2

notice Digital software signatures can increase security but this requires knowledge. Learn more about digital software signature verification.

How to verify the Whonix ™ Images : Whonix ™ virtual machine images are cryptographically signed by Whonix ™ developer Patrick Schleizer using OpenPGP and signify.

Do you already how to perform digital software verification using an OpenPGP and/or signify key?

2. Install VirtualBox

Logo-linux.png Linux instructions and further install directions

  • Use the recommended VirtualBox version : latest (click for more information)
  • For Windows and Mac: Just download and install.
  • For Linux follow instructions below:

info Recommendations for Linux users:

  • The recommended host Linux kernel version is the same version that Debian bullseye is using, see linux-image-amd64.
  • Linux users only: use the recommended Linux distribution as a host for Whonix ™ VirtualBox is Debian Linux version bullseye.

Hosts using a non-Debian OS: Logo-linux-500x500.png

Install VirtualBox as per the normal mechanism for your Linux distribution. Whonix ™ has has been tested with, expects VirtualBox version latest

For example VirtualBox version 5.2.18 has been reported to not be compatible.

Ubuntu hosts: Logo-ubuntusvg.png

Ubuntu bionic (18.04LTS) APT repository ships only VirtualBox version 5.2.18 and Whonix ™ will probably not work.

You might want to release-upgrade to Ubuntu hirsute (21.04) and install the virtualbox package from the hirsute-updates backports repository which provides at time of writing VirtualBox version 6.1.26.

Debian hosts: Logo-debian-500x500.png

Notes:

  • These instructions are for host operating systems running Debian bullseye, which is recommended.
  • Other Debian releases might work, but this is untested.
  • To acquire the Recommended VirtualBox version tested with Whonix ™, package virtualbox should be installed from Debian fasttrack repository according to the following instructions. [1]

1. On the host.

Open a terminal.

2. Add Debian the fasttrack repository.

Update the package lists.

sudo apt update

Install the Debian fasttrack signing key.

sudo apt install fasttrack-archive-keyring

Add the Debian fasttrack repository.

echo 'deb https://fasttrack.debian.net/debian/ bullseye-fasttrack main contrib non-free' | sudo tee /etc/apt/sources.list.d/fasttrack.list

3. Update the package lists again. [2]

sudo apt update

4. Install VirtualBox and Linux kernel headers.

sudo apt install virtualbox linux-headers-$(dpkg --print-architecture)

5. Add your current user to group vboxusers. [3]

sudo adduser $(whoami) vboxusers

6. Done.

The procedure of installing the VirtualBox host software is complete.

3. Import Whonix ™ into VirtualBox

For Whonix ™ VirtualBox import instructions, please press on expand on the right.

Start VirtualBox
OpenVirtualbox1.png

Click on File then choose Import Appliance...
Select Import2.png

Navigate and select Whonix ™ image and press next
Select whonix ova image3.png

Do NOT change anything! Just click on Import
Click import4.png

Then press Agree
Agree5.png

Wait until Whonix ™ .ova has been imported
Wait6.png

Now start both Whonix-Gateway ™ and Whonix-Workstation ™
Start both of them7.png

Miscellaneous

There are also Video Tutorials.

If you still need help, please check the Support page.


For command line import instructions, see footnote. [4]

4. Start Whonix ™

Starting Whonix ™ is simple:

  1. Start VirtualBox
  2. Double-click the Whonix-Gateway ™ and Whonix-Workstation ™

First time users and more[edit]

First time users information

Whonix / Kicksecure ™ default admin password is: changeme default username: user
default password: changeme

Whonix first time users warning Warning:

  • If you do not know what metadata or a man-in-the-middle attack is.
  • If you think nobody can eavesdrop on your communications because you are using Tor.
  • If you have no idea how Whonix ™ works.

Then read the Design and Goals, Whonix ™ and Tor Limitations and Tips on Remaining Anonymous pages to decide whether Whonix ™ is the right tool for you based on its limitations.

Footnotes and Experimental Spectre / Meltdown Defenses → press Expand

VirtualBox Stable Version | VirtualBox Testers Only Version

Testers only! For more information please press on expand on the right.

These experimental Spectre/Meltdown defenses are related to issues outlined in Firmware Security and Updates. Due to the huge performance penalty and unclear security benefits of applying these changes, it may not be worth the effort. The reason is VirtualBox is still likely vulnerable, even after:

  1. A host microcode upgrade.
  2. A host kernel upgrade.
  3. A VM kernel upgrade.
  4. A "not vulnerable" result from spectre-meltdown-checker run on the host.
  5. Installation of the latest VirtualBox version. [5]
  6. All Spectre/Meltdown-related VirtualBox settings are tuned for better security as documented below.

To learn more, see: VirtualBox 5.2.18 vulnerable to spectre/meltdown despite microcode being installed and the associated VirtualBox forum discussion. [6] Users must patiently wait for VirtualBox developers to fix this bug.

On the host. [7] [8] [9] [10] [11] [12] [13]

VBoxManage modifyvm "Whonix-Gateway" --ibpb-on-vm-entry on VBoxManage modifyvm "Whonix-Gateway" --ibpb-on-vm-exit on VBoxManage modifyvm "Whonix-Gateway" --l1d-flush-on-vm-entry on VBoxManage modifyvm "Whonix-Gateway" --l1d-flush-on-sched on VBoxManage modifyvm "Whonix-Gateway" --spec-ctrl on VBoxManage modifyvm "Whonix-Gateway" --nestedpaging off VBoxManage modifyvm "Whonix-Gateway" --mds-clear-on-vm-entry on VBoxManage modifyvm "Whonix-Gateway" --mds-clear-on-sched on

VBoxManage modifyvm "Whonix-Workstation" --ibpb-on-vm-entry on VBoxManage modifyvm "Whonix-Workstation" --ibpb-on-vm-exit on VBoxManage modifyvm "Whonix-Workstation" --l1d-flush-on-vm-entry on VBoxManage modifyvm "Whonix-Workstation" --l1d-flush-on-sched on VBoxManage modifyvm "Whonix-Workstation" --spec-ctrl on VBoxManage modifyvm "Whonix-Workstation" --nestedpaging off VBoxManage modifyvm "Whonix-Workstation" --mds-clear-on-vm-entry on VBoxManage modifyvm "Whonix-Workstation" --mds-clear-on-sched on

Info These steps must be repeated for every Whonix ™ or non-Whonix VirtualBox VM, including multiple and custom VMs.

The above instructions only apply to the default VM names Whonix-Gateway ™ and Whonix-Workstation ™. Therefore, if Multiple Whonix-Workstation ™ and/or Multiple Whonix-Gateway ™ are configured, then repeat these instructions using the relevant name/s.

Footnotes[edit]

  1. This is non-ideal but required since VirtualBox in unavailable in official Debian bullseye repository and difficult to install due to VirtualBox Installation Challenges. Alternatively you could install VirtualBox from the Oracle (virtualbox.org) Repository, but this comes with different risks. VirtualBox might be updated by VirtualBox developers before being tested with Whonix ™ which could then lead to issues. (Described in footnote here.)
  2. This is to acquire the Debian fasttrack repository package sources.
  3. Optional: See: https://www.virtualbox.org/manual/ch02.html#install-linux-vboxusers Also spams ~/.config/VirtualBox/VBoxSVC.log log if not done.
  4. On the Linux platform.
    1. Read License Agreement:
    vboxmanage import Whonix-XFCE-16.0.4.2.ova --vsys 0 --eula show --vsys 1 --eula show
    2. Import Whonix-Gateway and Whonix-Workstation ™.
    vboxmanage import Whonix-XFCE-16.0.4.2.ova --vsys 0 --eula accept --vsys 1 --eula accept
  5. VirtualBox version 5.2.18 or above is required since only that version comes with Spectre/Meltdown defenses. See https://forums.whonix.org/t/whonix-vulerable-due-to-missing-processor-microcode-packages/5739/22.
  6. Also see the following Whonix ™ forum discussion: Whonix ™ vulerable due to missing processor microcode packages? spectre / meltdown / retpoline / L1 Terminal Fault (L1TF)
  7. --ibpb-on-vm-[enter|exit] on|off: Enables flushing of the indirect branch prediction buffers on every VM enter or exit respectively. This could be enabled by users overly worried about possible spectre attacks by the VM. Please note that these options may have sever impact on performance.
    https://www.virtualbox.org/manual/ch08.html

    There is a mistake in the VirtualBox manual stating enter which does not work. It is actually entry.

  8. https://www.virtualbox.org/manual/ch08.html

    --l1d-flush-on-vm-enter on|off: Enables flushing of the level 1 data cache on VM enter. See Section 13.4.1, “CVE-2018-3646”.

  9. --l1d-flush-on-sched on|off: Enables flushing of the level 1 data cache on scheduling EMT for guest execution. See Section 13.4.1, “CVE-2018-3646”.
    https://www.virtualbox.org/manual/ch08.html

  10. https://www.virtualbox.org/manual/ch13.html#sec-rec-cve-2018-3646

    For users not concerned by this security issue, the default mitigation can be disabled using

    VBoxManage modifyvm name --l1d-flush-on-sched off

    Since we want to enable the security feature we set --l1d-flush-on-sched on.

  11. --spec-ctrl on|off: This setting enables/disables exposing speculation control interfaces to the guest, provided they are available on the host. Depending on the host CPU and workload, enabling speculation control may significantly reduce performance.
    https://www.virtualbox.org/manual/ch08.html

  12. According to this VirtualBox ticket --spec-ctrl should be set to on.
  13. --nestedpaging on|off: If hardware virtualization is enabled, this additional setting enables or disables the use of the nested paging feature in the processor of your host system; see Section 10.7, “Nested paging and VPIDs” and Section 13.4.1, “CVE-2018-3646”.