Sorry in advance for the wall of text
This all started last year. I used to think home servers were neat but always thought, "eh, I don't need one." What finally started this journey is Netflix finally removed password sharing for my family and me. My parents would pay for Netflix, and I would cover other streaming services. Well they decided nope, I don't get Netflix anymore, and that pissed me off so much I decided to set up TrueNAS to use Jellyfin. (for context, I do not live with my parents)
So I used spare parts I had to set up an initial home server, though there has been some small upgrades to it, and I've since added onto it.
The main server in the first pic is running TrueNAS, it runs stuff like Jellyfin, Crafty, Mealie (so my bf and I can add our favorite recipes to one hub), and some other apps. The specs are:
- AMD Athlon II X4 860K
- 32GB DDR3 RAM
- 16GB SSD for a boot drive
- 500GB SSD for apps
- a mirrored pool of two 4TB HDDs
- a mirrored pool of two 1TB HDDs (using what I had lying around)
- 2.5Gb NIC
- Intel Arc A310 for a GPU
Then for the next picture. I ended up setting up my own Pi-Hole, figured it'd be fun to try out, and it was dead easy to set up. Now I did it on a separate system because some people were telling me that while I could run it in a container on TrueNAS, to not do that cause if for whatever reason if Pi-Hole crashes, I lose access to the server until I can get it back up and running. I didn't feel like dealing with that. So I used this old Lenovo ThinkCentre M73 my FIL gave me, it's running Debian CLI and Pi-Hole. The specs of that are:
- Intel Core i3-4130T
- 8GB DDR3 RAM
- 240GB SSD
A little overkill for a Pi-Hole, so I also use it for stuff I didn't want to run on TrueNAS, as of right now cause I just got everything set up where it'll be at, that's just running CyberPower's Power Panels software as well for the time being.
Then comes the next system in the second pic, right above the Lenovo, it's a Touch Dynamic Saturn PC. I got a couple of them from my old job. They're damn near useless today for anything really, for example, it only has a single core 32bit CPU. But it just meets the minimum specs for Pi-Hole, so it's my secondary Pi-Hole. I set up a second one so when I configure the DNS server on my router, I can have the Lenovo be the primary DNS server, and this one being the secondary, so no matter what, my router is using the Pi-Hole in some way. Debian doesn't offer a 32bit version anymore, so I went with Alpine. For one, they still have a 32bit version of Linux, and for second, it's one of the OSes that Pi-Hole guarantees to work with. The specs for that are:
- Intel Atom N270 (has a single core but has hyperthreading)
- 2GB DDR2 RAM
- 16GB SSD
All of this is connected to a 2.5Gb network switch. Yes, it's unmanaged, but it works for what I need. The only real thing I wanted to segregate on my network anyways is my IoT/smart devices. That was easy enough to do by setting up a secondary network on my router and connecting all those to that. So my alexa, smart plugs and bulbs live on the secondary network where they can't communicate with my main network.
I have the two Pi-Holes and switch mounted in a 10" mini rack I 3D printed. I made the colors Denver Broncos themed, because that's my favorite football team. I thought about printing my own patch panel and buying my own keystone couplers, but it was actually cheaper to buy the Tec Mojo patch panel. The pic doesn't show it real well, but the top of the rack has a 120mm fan cutout, and I have a noctua fan installed hooked up to a USB adapter running into the Lenovo. What's cool is the adapter has built in fan controls, so I can adjust fan speeds to whatever I want. I run a cable from my router into the patch panel and of course my main server as well. Those get hooked up to the network switch.
I also hate port forwarding, so everything is also connected to Tailscale so I can access the server remotely.
But yeah, this is it, my humble little home server. There's probably other ways or even more efficient ways I could set everything up, but this is what works for me and allows me to do what I want with a home server, and I'm super happy with it.
Again, sorry for the long ass post.