πŸ–₯️ Lab Builds

Building My First Cybersecurity Home Lab
While Studying for PJPT

πŸ“… Jun 14, 2026 ⏱ 10 min read 🏷️ Proxmox Β· Kali Linux Β· TCM Security Β· PJPT Β· Pentesting Lab


I broke my lab multiple times. I nuked Kali mid-session, I misconfigured Metasploitable so badly it became unreachable, I accidentally exposed a vulnerable VM to my main network. Every time, I reverted to a clean snapshot and started over.

And honestly? That's where most of the learning happened.

This is the real story of how I set up my first cybersecurity home lab when I was studying for the Practical Junior Penetration Tester (PJPT) certification from TCM Security. I still use the same setup today β€” it's evolved, but the core is the same.

Why I Chose PJPT Over Other Certs

Most beginner cybersecurity certs are theory-heavy. You memorise definitions, pass a multiple-choice exam, get a certificate, and still don't know how to actually hack anything. PJPT from TCM Security is different β€” it's a 24-hour practical exam. You have to compromise a target. No multiple choice. No memorisation shortcuts.

Heath Adams (The Cyber Mentor) built TCM Security with the philosophy that you learn by doing. The Practical Ethical Hacking course that comes with PJPT prep is probably the best beginner pentesting course I've seen β€” it's dense, it's hands-on, and it actually teaches you to think like an attacker.

But the course assumes you have a lab to practice in. So I built one.

The Setup: Proxmox as the Foundation

I had been running Proxmox already (more on that in my Proxmox nodes post), so the obvious move was to create a dedicated lab environment as isolated VMs. No risk to my main network, easy snapshots, quick resets when things break.

πŸ‰
Kali Linux
Attack machine Β· Main toolkit
πŸ’€
Metasploitable 2
Intentionally vulnerable target
πŸ•ΈοΈ
DVWA
Web app vuln practice
πŸͺŸ
Windows Server
Active Directory lab (later)
πŸ”’
Isolated VLAN
Lab network Β· No external routing

Network Isolation: Non-Negotiable

Before spinning up any vulnerable VM, I created a completely isolated network in Proxmox β€” a Linux bridge with no uplink. Nothing in the lab VLAN can reach the internet or my main LAN. Metasploitable and DVWA are intentionally vulnerable β€” you do not want those reachable from anywhere except your Kali machine.

Lesson learned the hard way My first attempt, I put the lab VMs on my main network bridge by mistake. Within 10 minutes, Metasploitable's FTP service was showing up in my router's ARP table and had an active session I didn't initiate. Isolated VLANs are not optional β€” they're the first thing you set up.

Kali Linux on Proxmox

I downloaded the Kali Linux QCOW2 image (the pre-built VM version) from the official Kali site. This is faster than installing from ISO β€” it's ready to boot in minutes.

In Proxmox:

  1. Create a new VM with UEFI firmware, 4 vCPUs, 8GB RAM
  2. Import the QCOW2 disk: qm importdisk <vmid> kali.qcow2 local-lvm
  3. Set the imported disk as the boot disk
  4. Attach it to the isolated bridge (not the main one)
  5. Boot, run kali-tweaks, install any missing tools

The first thing I did after booting Kali: take a clean snapshot. This became my "nuclear option" β€” the baseline state I could always revert to if I completely broke something. Which I did. Repeatedly.

Metasploitable 2: The Perfect First Target

Metasploitable 2 is a Linux VM that's deliberately full of vulnerabilities. It's what TCM Security's course uses for practising exploitation. Import the VMDK into Proxmox:

# Convert VMDK to qcow2 first
qemu-img convert -f vmdk -O qcow2 metasploitable.vmdk metasploitable.qcow2

# Import into Proxmox
qm importdisk <vmid> metasploitable.qcow2 local-lvm

Put Metasploitable on the same isolated bridge as Kali. That's the only connection it needs.

What I Practiced on Metasploitable

TCM Security's course walks you through the methodology: reconnaissance β†’ scanning β†’ exploitation β†’ post-exploitation. Here's the actual workflow I ran every session:

# Step 1: Discover the target
netdiscover -r 192.168.100.0/24

# Step 2: Full port scan
nmap -sC -sV -oN metasploitable_scan.txt 192.168.100.x

# Step 3: Identify services β€” Metasploitable has a lot
# vsftpd 2.3.4 (backdoor), Samba, distcc, UnrealIRCd...

# Step 4: Exploit with Metasploit
msfconsole
use exploit/unix/ftp/vsftpd_234_backdoor
set RHOSTS 192.168.100.x
run

The vsftpd backdoor exploit was the first shell I ever got on a target. It felt absurd how easy it was β€” and that's exactly the point. Real systems run old services. Real admins don't patch quickly enough.

DVWA: Web App Practice

DVWA (Damn Vulnerable Web Application) runs as a PHP/MySQL app. Rather than setting it up from scratch, I used the pre-built DVWA Docker container on a simple Ubuntu CT in Proxmox:

docker run -d -p 80:80 vulnerables/web-dvwa

DVWA has difficulty levels (Low, Medium, High). I started on Low to understand how SQL injection, XSS, and command injection work, then moved to Medium to understand how defences can be bypassed. The TCM course covers this systematically.

The Snapshot Habit That Saved Me

The single most valuable habit I built was snapshot before every major session or change. In Proxmox, snapshots are instant and take almost no space if you're using ZFS or thin-provisioned LVM.

Specific situations where snapshots saved me:

# Create snapshot in Proxmox CLI
qm snapshot <vmid> "clean-baseline-kali" --vmstate 1

# List snapshots
qm listsnapshot <vmid>

# Rollback
qm rollback <vmid> clean-baseline-kali
Snapshot naming convention I use clean-baseline for the fresh install snapshot, pre-[thing] before anything risky, working-[date] when things are good and stable. Never delete clean-baseline.

Active Directory Lab (The Hard Mode)

Once I got comfortable with Metasploitable, TCM Security's course moves into Active Directory attacks β€” which is where real enterprise pentesting lives. I set up a mini AD lab:

The AD lab is where I learned about LLMNR poisoning, SMB relay attacks, Pass-the-Hash, and Kerberoasting. This is the material the PJPT exam actually tests. If you're doing PJPT, don't skip the AD section.

Tools I Actually Used (Not Just the Full List)

Every "Kali tools" post lists 100+ tools. Here's what I actually ran regularly while studying PJPT:

Getting the PJPT Cert

The PJPT exam is a real target. You have 48 hours to compromise a network and 48 hours to write the report. The exam tests actual skill β€” can you enumerate, find a foothold, move laterally, and document your findings like a professional pentest report?

Building the home lab was the preparation. The lab gave me a safe space to mess up, learn from it, and develop the muscle memory for the tools and methodology. By the time I sat the exam, the workflow felt natural.

I still use the lab now β€” I just add new targets and scenarios as I learn new techniques. It's never really "done." That's the point.

If you're starting out You don't need expensive hardware. Proxmox on an old PC or a mini PC, Kali QCOW2 image, Metasploitable 2, and the TCM Security Practical Ethical Hacking course. That's the full stack. Everything else comes later.
Tech Used Proxmox VE Β· Kali Linux Β· Metasploitable 2 Β· DVWA Β· Windows Server 2019 Β· Nmap Β· Metasploit Β· Wireshark Β· Responder Β· CrackMapExec Β· Impacket Β· TCM Security PJPT