You’re welcome to use any Linux installation, in a VM or not, provided that it has a reasonably recent kernel (4.x should be fine) and a C++17 compiler.
Please note that the CAs will not be available to help you debug a BYO Linux installation. If you’re in doubt, please consider using the prepared image or following our VM setup instructions.
To run the labs, you’ll need the following software:
Note: there are at least three versions of netcat. You won’t be using it much, but when you do, we will assume you’ve got the OpenBSD variant. Others might also work, though it is possible that they will require different commandline flags.
We’ve tested the labs with recent Debian-derived systems (Ubuntu 18.04 and similar) and Arch Linux. In all likelihood, other modern Linux distributions will also work.
NetworkManager is installed by default on some desktop-focused Linux distributions, including Ubuntu Desktop. In its default configuration it may try to manage the virtual network interfaces that you will be using in the lab exercises. This could cause breakage.
If your preferred Linux setup includes NetworkManager, we recommend that you read about configuring it to ignore the virtual devices that the lab exercises use.