Home Lab Overview

This environment reflects my hands-on experience with deploying, securing, and managing modern infrastructure components. It also provides a controlled space to test updates, troubleshoot issues, and evaluate new technologies before applying them in production environments.

Whether I'm fine-tuning service availability, setting up HA, or exploring integrations between tools, my home lab is where curiosity meets practical implementation.

Description

Welcome to my Home Lab documentation! This book serves as a centralized knowledge base for the design, configuration, and ongoing management of my personal IT infrastructure. It includes detailed notes, guides, troubleshooting steps, and configurations for the various technologies and services I’m running in my lab environment.

The purpose of this home lab is to deepen my understanding of enterprise technologies, experiment with new tools, and simulate real-world IT scenarios. From virtualization and networking to security, automation, and containerization, this space is where I build, break, and learn.

Whether it’s setting up a Proxmox cluster, configuring a pfSense firewall, deploying Docker containers, managing endpoints with Tanium, or monitoring systems with tools like Zabbix and Wazuh, everything I do here helps sharpen my skills and stay current with the latest industry trends.

This book documents the architecture, configuration, and ongoing management of my personal home lab — a self-hosted environment that mirrors real-world enterprise infrastructure. It serves both as a technical reference for myself and as a showcase of my skills and experience for recruiters and industry professionals.

My lab is designed for continuous learning and hands-on experience with systems administration, virtualization, networking, endpoint management, security, and automation.


⚙️ Core Platforms & Services

🪟 Windows Infrastructure:


📦 Productivity, Collaboration & Documentation


This lab reflects my passion for IT, my commitment to self-improvement, and my ability to design, deploy, and manage production-grade infrastructure. It provides a sandbox for testing updates, validating new tools, and simulating enterprise-level scenarios — all while refining best practices in security, automation, and documentation.

Virtualization: Proxmox VE

This page outlines how I installed, configured, and currently use Proxmox VE as the foundation of my home lab virtualization platform. It includes steps for installing Proxmox, setting up storage, creating virtual machines and LXC containers, and using templates for rapid deployment.

📥 1. Proxmox VE Installation

🛠 Requirements:                                                 

🔧 Steps:

  1. Download the latest ISO: https://www.proxmox.com/en/downloads

  2. Create a bootable USB drive with Rufus or the dd command.

  3. Boot from USB and follow the installation wizard:

    • Accept EULA

    • Select target disk (use ZFS if using multiple disks or for snapshots)

    • Set country, time zone, and keyboard

    • Set root password and email

    • Assign a static IP, hostname (e.g., proxmox.local), and gateway

  4. Reboot and access the web GUI:
    https://<proxmox-ip>:8006


⚙️ 2. Initial Configuration

✅ Post-Install Checklist:

apt update && apt full-upgrade -y
sed -i.bak "s|data.status !== 'Active'|false|" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js
systemctl restart pveproxy
deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription

🧱 3. Creating a Virtual Machine (VM)

Steps:

  1. Upload ISO to local or local-lvm storage

  2. Go to Create VM

  3. General:

    • Name: ubuntu-server

  4. OS:

    • Select ISO image

  5. System:

    • Use default (UEFI or BIOS)

  6. Hard Disk:

    • Choose local-lvm, disk size

  7. CPU & Memory:

    • 2 cores, 4GB RAM (example)

  8. Network:

    • Select vmbr0 (bridge to LAN)

  9. Confirm and finish

Post-VM:

apt install qemu-guest-agent
systemctl enable --now qemu-guest-agent

📦 4. Creating LXC Containers

LXC Benefits:

Steps:

  1. Go to Create CT

  2. General:

    • Set hostname and password

  3. Template:

    • Download from Proxmox template library

  4. Root Disk:

    • Choose size and storage

  5. CPU & Memory:

    • Allocate as needed

  6. Network:

    • Assign static IP or DHCP

  7. Confirm and finish

Example Services via LXC:


🧰 5. Using and Creating Templates

VM Templates:

  1. Create and configure a VM (e.g., Ubuntu minimal)

  2. Shutdown VM

  3. Convert to template:

qm template <vmid>

LXC Templates:

  1. Download from CT Templates in Proxmox GUI

  2. Or upload custom .tar.gz template to:

/var/lib/vz/template/cache/

🛡️ 6. Best Practices & Tips

Home Lab Hardware Specifications

This section outlines the physical hardware powering my virtualization environment. It includes both compute and network components that support VM hosting, containerization, and service reliability.

🖥️ Primary Host (Proxmox Node)

pve

Primary Node for all Production VMs and CTs

pve1

Node for Tanium Appliance (TanOS)

pve2

Node for testing endpoints

🌐 Networking Equipment

🗃️ Storage & Backup

📝 Note: This setup is optimized for cost-efficiency, power savings, and scalability, allowing me to run dozens of services simultaneously in a virtualized and containerized environment.