Software
All software used in this course is free.
All you need to have is a Linux Distribution. Examples in this course are written on a Ubuntu-based distribution, but you can install any Linux Distribution you want. I recommend you to install Linux Mint (if you want a GUI), Ubuntu Desktop or Server, or CentOS. Netfilter and Iptales are the same everywhere!
Some examples need 2 Linux Machines, so ideally you have to set up 2 Linux Machines besides your main Windows or Mac OS. You can clone your Linux VM inside your VirtualBox Software and use it as the second Linux Machine. In this scenario, at least 4GB RAM is required (ideally 8GB RAM).
You can install VirtualBox (free) on Windows or macOS and inside VirtualBox, you can install Linux, or you can install Linux on a dedicated computer/laptop. Network (SSH) access is required between Windows and both Linux Machines.
Root access is needed.
To be easier for you I've exported a custom Linux Mint as an OVA file and all you have to do is to import it (double click on it) in VirtualBox.
Linux Mint 20.3 OVA file (user student and password student). Big file: 6 GB.
https://drive.google.com/file/d/11kpPkycVKChmYRtzIHx-Fb34ESfxr9VW/view?usp=sharing
If you want to enable USB support in your VM you also have to install on your host OS (Windows, Linux, or macOS) Oracle VM VirtualBox Extension Pack:
Download Links:
VirtualBox: https://www.virtualbox.org/wiki/Downloads
Linux Mint: https://linuxmint.com/download.php
UbuntuServer: https://www.ubuntu.com/download/server
CentOS: https://www.centos.org/download/