Hi, I’m Simon
I’m passionate about Information Security and Hacking. This write up will focus on how I setup the home research lab that I use to practice and advance my skills. I will start by covering the installation of Ubuntu on a disused Mac Mini 1TB server that I had sitting around. I will then take you through my process for installing Webmin, Docker & Portainer to be able to use the server in a headless setup while conveniently managing it through web a Graphical User Interface or GUI for short.
Lets begin!
Research Lab Infrastructure:
Ubuntu Server 20.04.3
Flash USB drive with image
Install on Mac Mini Server
Webmin 1.981
Install Webmin on Ubuntu server
Setup port for LAN web access
Docker 20.10.7
Install Docker on Ubuntu server
Provision Docker registry to pull images from
Portainer 2.9.1
Install Portainer on Ubuntu server
Setup port for LAN web access
Setting it all up:
Start with the Ubuntu Server
I started by downloading the latest software image from Ubuntu. Make sure you get a version compatible with your hardware.
I used belenaEtcher to flash my USB with a bootable image of the install.
While following the Ubuntu server installation instructions I enable SSH when prompted so I can access the server backend if needed.
Once the installation is complete I setup a static IP address and port forwarding so SSH can be accessed over the internet if needed.
I tested the SSH connection from inside the network and from the internet.
Next install and setup the Webmin GUI
From the command line I used the SSH connection to install Webmin using the APT package manager.
sudo apt install webmin
Confirm Webmin started when the install completed.
sudo systemctl status webmin
From my router I assigned a static IP address to the server
From a web browser I accessed the web GUI by entering the IP Address and port 10000
Using the web GUI I updated all the software packages and set regular scheduled updates going forward.
Third step is to install and setup Docker
From the command line I used the SSH connection to install Docker using the APT package manager.
sudo apt install docker.io
Start Dockerwhen the install completed.
sudo systemctl start docker
Enable Docker to run on startup.
sudo systemctl enable docker
The final step is to install and setup the Portainer GUI
From the command line I again used the SSH connection, creating a volume to save data for the Portainer Docker image.
docker volume create portainer_data
Next I downloaded and installed the Portainer Server.
docker run -d -p 8000:8000 -p 9443:9443 --name portainer \
--restart=always \
-v /var/run/docker.sock:/var/run/docker.sock \
-v portainer_data:/data \
portainer/portainer-ce:latest
Finally I accessed the web GUI on port 9443 and installed some vulnerable Docker images. These can be customized to whatever you want to study and practice.