Lab Setup

A proper lab is the foundation of security practice
You can’t learn penetration testing on production systems (illegal) and you can’t become skilled without hands-on practice. A well-designed lab provides safe , repeatable environments for every skill level

Why a Lab?

  • Legal testing environment (your playground)
  • Repeatable scenarios (reset and retry)
  • Multiple targets (different OS , services , configurations)
  • Isolated from production (no accidental damage)
  • Document your methodology (progression tracking)

Lab Design Principles

  1. Isolation - Lab network should not touch production
  2. Snapshots - Every VM needs clean-state snapshot
  3. Documentation - Write down IPs, credentials, vulnerabilities
  4. Resource Planning - RAM and disk space manage growth
  5. Segmentation - Different networks for different purposes
  6. Automation - Deploy and reset with scripts

Essential Lab Components

Attack Machine

  • Kali Linux or Parrot OS
  • All testing tools pre-installed
  • Multiple network interfaces

Target Machines

  • Vulnerable BY DESIGN VMs (Metasploitable, DVWA)
  • Real-world OS (Windows 10, Ubuntu Server)
  • Active Directory lab (Domain Controller + Workstations)

Network Infrastructure

  • Router/firewall (pfsense)
  • Network monitoring (Security Onion)
  • Log aggregation (ELK Stack)

Hardware Requirements

ComponentMinimumRecommended
CPU4 cores8+ cores
RAM16 GB32+ GB
Storage256 GB SSD1 TB NVMe
NetworkIntegratedDual NIC

Cloud Lab Options

  • TryHackMe (guided rooms with infrastructure)
  • HackTheBox (machines and challenges)
  • Proving Grounds (PWK-style practice)
  • AWS/Azure (deploy vulnerable infrastructure as code)
  • DigitalOcean (for custom setups)