Homelab update: bought a TERRAMASTER F4-424 MAX
Homelabs have become increasingly popular as more tech enthusiasts and IT professionals seek to enhance their skills and experiment with advanced setups at home. These small-scale personal data centers are an excellent way to consolidate storage, test various software applications, and gain hands-on experience with server management.
I have used my oldest machines as the basis for my home lab for many years. This option comes with many compromises - machines with small amounts of RAM, older devices for storage nearing their expected end-of-life, no disk redundancy on servers, etc. Many Raspberry xPi's were sacrificed to meet my constant demand for new experiences... :-)
A vital component of any home lab, and mine was no exception, is the NAS (Network Attached Storage), which provides centralized backup storage. Restoring backups was a long and relatively slow process on my old 1Gb network. Every time something broke, it was a royal pain in the behind. It worked; it was a cheap way of doing stuff but had its fair share of shortcomings.
The TERRAMASTER f4-424 MAX is a game-changer! Maxed out with 64 GB of RAM, three 10Tb HDD drives for cheap storage, and three SSDs for speed when running containers and virtual machines, it's a beast! And a much safer beast, with disk redundancy. Dual 10GbE Ports give me a substantial 10x boost in network speed. The Core i5 1235U has 10 cores and 12 threads (4,4 GHz), and the Iris Xe (1,2 GHz) GPU is very serviceable.
Operating System: Unraid
Unraid OS serves as the foundation of my home lab. Unlike traditional RAID setups, Unraid allows the mixing and matching of drives of various sizes, formatted in a mix of XFS (HDDs) and ZFS (SSDs), while providing parity and protection against data loss.
Unraid allows for efficient management of storage, Docker containers, and VMs. It also offers a web-based GUI that simplifies setup and administration, allowing super-easy management of disks, containers, and VMs directly from the browser.
I am a huge ZFS fanboy. Snapshots and replication are essential for experimentation and quickly returning a functioning system from those pesky updates that cause it to totally FUBAR. I have never been so comfortable administrating a system in my life!
After many decades of using BSD-based solutions professionally, namely FreeBSD and FreeNAS, I switched to Linux. Yes, it finally happened.
Docker: The Linux counterpart to FreeBSD jails
One of Unraid's standout features is its excellent community support for Docker. Everything I use is available in a containerized format and ready to use with one-click installations: Cloudflare tunnels, VPN support, Zerotier, MySQL/Postgres, Nginx, etc. And running my standout LAN services could not get any easier:
Jellyfin: An open-source media server, Jellyfin is excellent for managing and streaming media files such as movies, TV shows, and music. In this setup, Jellyfin is configured to utilize HDD storage for media files, taking advantage of the large capacity while offloading docker content processing to the speedy SSDs. In the background, Unmanic provides conversion services to high-efficiency codecs for all media, which I have gathered over the years.
Nextcloud is a powerful, self-hosted alternative to cloud services like Google Drive or Dropbox, offering file storage, sharing, and synchronization. With Nextcloud running on Docker in Unraid, I can store documents, photos, and other personal files, enjoying ransomware-proof ZFS snapshots.
Pi-hole serves as a network-wide ad blocker that can filter out unwanted ads and phishing sites at the DNS level, providing a cleaner and much safer browsing experience on all devices connected to the network. Curated and updated blocklists complement the excellent NextDNS service I subscribe to.
Virtual Machines
Unraid's built-in KVM-based virtualization engine makes it easy to deploy virtual machines. I use VMs primarily for testing and reproducing attack vectors on Windows/Linux targets. I do not have any VMs running permanently. I do spin-up BSD-based OSs from time to time, but it's a nostalgia thing... :-)