Building a Server for a Homelab

A look at the inside of my server during contruction

As I have started to get further into cybersecurity, various people I spoke to suggested homelabbing as a concrete method to develop practical skills. So once I had a moment, I set out to build my own server. My first server was how many people start homelabbing — an old computer. In my case this was an old dell optiplex tower. However, I didn’t really get to do much homelabbing, as I soon realized that the computer was just incapable of what I wanted to do.

Thankfully, with support from Greenhouse Scholars, I was able to build my own server. One that is much more powerful than that old system, and one that is much more capable for expansion. In this blog, I hope to document the entire process of building this server. From the various iterations I went through, to the building process, and to finally building it.

This process has certainly taught me an incredible amount about computers, hardware and designing a systems. Even now, I am still learning!

What even is a Server?

Foremost, when most people consider a “server” they think of a large rack in a data-center, at least I certainly did. In reality, a server (or any other common device like a router or a switch) is a specialized computer for a specific task or utility. For my server I knew the utility I wanted:

  1. I want to be able to host multiple virtual machines through a hypervisor (proxmox) to simulate security attacks across a broader network.

  2. I wanted to be able to run machine-learning tasks and run small LLMs.

  3. I wanted to have the flexibility to host any of my own services if I wanted, such as a media server, storage or other-wise (Self-hosting is its own deep niche that I won’t get into here. There are plentiful resources on youtube to get started!)

Tackling Hardware and planning

I had never built a computer, or worked with hardware like this. So I certainly needed to familiarize myself with what would be the best for me. I think when building a server, there are a few core considerations:

  1. Your Budget

  2. What you want to do on the server itself

  3. Your Physical Space and environment

Thanks to funding from Greenhouse scholars, I had an incredibly generous budget, and as previously described I knew what I wanted to do on the server!

I mention the third point, as it became something I considered when picking a case. If you go and look at any big creator’s server on youtube, you will be blown away by cool racks, or things that certainly look like how one would imagine how a server would look. As mentioned, my first go at a server was just an old dell optiplex. But, at times I was tempted by the possibility of something with maybe a bit more nerd cred. I especially saw cool videos about a mini server rack from DeskPi and was interested in using it. I soon realized however, that a mini server rack would be impractical for my needs.

First, a rack like this would likely leave a lot of my components exposed to dust. Further, cooling this system would be quite difficult. Considering the minimal airflow and the difficulty in mounting fans. Further, and a big stopping point for me was SOUND. Exposed components like this, even if they were cooled would be much louder than if they were just all encapsulated. So, I needed something standalone, and I gravitated towards a normal PC case as a result (more on that in a bit). Essentially making my server into a glorified gaming PC with much more storage.

Through my research, I decided on the following components for my server, I provide a description and justification for what I chose when needed.

Case – FRACTAL NORTH XL
First, this case is just so cool and matches my room. I’m certainly a person who values aesthetics where possible. I am not really a fan of traditional gaming pc cases and I DESPISE RGB, so I gravitated towards this case. It has a lot of space, cooling capability and considering that the rest of my parts are relatively small, allowed me space to potentially add more future components (like a few Raspberry Pis!)

CPU – Intel Core i9-12900K Alder Lake 3.2GHz Sixteen-Core LGA 1700
I decided to go with an Intel CPU over AMD for two reasons. First, I wasn’t particularly drawn to AMD as this is not a gaming system. And second, this CPU came in a great micro-center deal with my RAM and motherboard for only 400 (although due to tarrifs the price has already increased to 500 dollars). A lot of my products were purchased from microcenter and for good reason. They often offer great bundles and savings on a lot of PC parts, so certainly check them out if you want a server build of totally new components.

RAM – G.Skill Ripjaws S5 32GB (2 x 16GB) DDR5-6000
These simply came with the micro-center deal and work great. DDR5 for the extra speed and bandwidth is also an added bonus.

Motherboard – ASUS Z790-V Prime AX Intel LGA 1700 ATX Motherboard
Came with the previously mentioned microcenter bundle!

Graphics Card – GIGABYTE NVIDIA GeForce RTX 3060 Gaming OC V2 Graphics Card
The 3060 seems like a weird choice. Not only is it two generations old, but the 4060 or 4070 seem like better options at a higher price point. However, the reason I chose the 3060 was for one word (acronym really): VRAM.

Essentially (this is somewhat oversimplified) the more VRAM, the larger models and datasets you can work with. Considering that I want to use the graphics card for machine learning tasks, I decided to focus on picking a system with the highest VRAM at an affordable price. Thereby, I turned towards the 3060.

CPU Cooler – Noctua NH-U9S
Noctua is known for having quiet CPU coolers, and as mentioned I like aesthetics. This may turn out to be too much in terms of what I am running. However, if I add other devices inside of the case in the future, I likely will be grateful for the ability to add extra fans to my CPU cooler.

Hard Drives – Seagate IronWolf 8TB NAS Internal Hard Drive
I purchased two of these drives for a total of 16TB of hard-drive storage. I will likely use these for longer-term storage and other ideas rather than for an initial cyber-lab, but for the time being, it’s good to have them on hand!

NVME SSD – SAMSUNG 990 EVO Plus 1 TB
I picked up two of these to serve as SSD drives for whatever I see fit. Likely one of these will serve as the SSD for the cybersecurity homelab.

SATA SSD – Inland Professional 256GB SSD
This is not entirely needed since I have the NVME SSD. However, I figured it would be good to have these and for one of them to serve as a boot drive. For 20 bucks each, and the available space in my case, why not?

Power Supply Unit (PSU) – CORSAIR RM850e (2025) Fully Modular Low-Noise ATX Power Supply
After some research, I found that Corsair would likely be the best way to go in terms of long term reliability for a PSU. I decided to spend the extra money for a modular power supply (you can pick which cables to plug in), so that I would not have to deal with extra cables and I would be able to use the extra space for any more cabling that I wanted to shove in the future.

Now what?

First, I would like to end this blog with an acknowledgement that this build is not even needed to get your own server and get started! I simply had the generous funding and took it to build a system that will last me a very long time.

Well, now that the server is built, it’s time for me to design my own homelab and start messing around with cybersecurity tools! The entire process of me setting up the server warrants its own article(s), which will be coming soon. Something that I also did not discuss in this article was the process of setting up the network for your homelab. That too will likely warrant its own article, as I have decided to take a (potentially) more painful but worthwhile process to get that set-up!

I will be sure to integrate more photos into the blogs! I got so sidetracked building the server that taking photos for the blog passed my mind.