TCDtech.uk

Homelab Project

25th March 2023

Introduction

I wanted to build a Homelab in order to host services that my family and I could use, as well as create an environment where I could learn technical skills that I can use in the workplace. I had been doing research on Homelabs and set out on my plan to set up a Homelab using old hardware that I had. Being relatively new to Homelabs, this project gave me the opportunity to dive in deep and learn a plethora of IT subjects, from VMs and containerization to networking and server maintenance.

Hardware

The Server - Old PC

  • Corsair 32GB 3000Mhz RAM kit
  • Intel i5 10400KF
  • 250GB SSD for Proxmox
  • 1TB Hard disk for ZFS storage

Pfsense Firewall - Lenovo Thinkcentre M72e

  • Intel i3-3220T
  • 8GB RAM
  • 120GB SSD

Wireguard VPN - Racknerd.com KVM VPS

  • Dual Core CPU
  • 512MB RAM

Networking

- Cloudflare Argo Tunnels

Cloudflare allows me to access my services remotely, monitor susipicious activity, restrict access via IP and add authenitcaiton to my homelab services.

- Wireguard VPN

Using my selfhosted Wireguard VPN and Cloudflare I can create a secure tunnel for remote access to my services when I am connected to public networks.

- Pfsense Firewall

I set up a Pfsense Firewall in order to control the network traffic within my home, I am planning to set up VLans on my home network for extra security. Using Pfsense as a firewall will give me the functionality I need to achieve this.

Software and Services

- Server

    My Proxmox hypervisor is running the following VM's:
  • Ubuntu 22.04.2 Server - DockerBuntu
  • Ubuntu 22.04.1 Desktop - MinecraftBuntu

- DockerBuntu

DockerBuntu runs the majority of the services used by my family, I monitor them and run cron jobs using uptime-kuma.

Container list for DockerBuntu

- MinecraftBuntu

MinecraftBuntu is running a minecraft server for me and my girlfriend, gucamole allows my girlfriend to remotely start the server when I am not around.

Container list for MinecraftBuntu