Today I am starting my #homelab journey on #linux. I have never worked with #linux before but read a lot to prepare. So far my setup will look something like this:

Homelab running Ubuntu server with cockpit, as well as XFCE with xrdp for Remote Desktop to ease myself into using #linux. I am planning on running Plex, Immich, Pihole, and Home Assistant in the beginning, setting up one after another in that order.

Any tips & tricks or thoughts that can help me on this journey?

Wish me luck..

@mettlife Start simple. Don't jump unto everything at once. Otherwise you end up trying "eating an elephant in a single bite". And you'll end up needing to redo everything again.

Decide which features is the most important to you. Align that with what seems to be the simplest feature to setup. Get it running well, test it out for some weeks. Then take the next feature, rinse and repeat.

And no matter the feature you dive into ... get a very good understanding of the security perimeters needed and how to lock it down without breaking its functionality. That means diving into firewalling, security modules (SELinux, apparmor).

Learn the technology behind the various "simpler front-end tools". For example, learn how nftables or iptables works, that will help you understand what firewall-cmd and ufw does and why. Or learn how podman (or docker) works, then you'll find the management tools available on top of that easier to understand.

And remember that containers (docker, podman, lxc, etc) are not a security feature by itself. It's merely an administration tool to ease software maintenance without breaking other running features.

@dazo thank you!

Yes that’s definitely my plan. Simple is my main thought here, don’t want to get overwhelmed. I will be starting with Plex and security. Only after that is done will I move into Immich, Pihole, and Home Assistant (plus whatever else I come across later). It’s a bit scary when it comes to the security part but I figure other people managed to learn it so I can too.

@mettlife Both the Red Hat documentation as well as Arch Linux wiki are great resources, even though you don't have that as your primary distribution.

If I could give a recommendation, I would consider Alma or Rocky Linux over Ubuntu as the bare-metal OS. They are far more long term stable. Inside containers or virtual machines (VMs) you can then run whatever you'd like. The reason is that it's far simpler to redo things inside containers and VMs than on the bare metal installation. You want the bare metal installation to be rock solid and stable for a long time.

@dazo I’ll check those out!

I chose Ubuntu for the simpler transition from windows. I was planning on adding the free ESM for personal use with Ubuntu LTS to get 10 years support. I’ll look into Alma and Rocky today before I start.

@mettlife Alma and Rocky comes from Red Hat Enterprise Linux (RHEL) which also has a 10 year life time for each major release. RHEL-10 (as well as Alma 10 and Rocky 10) was releases in the last month or so.

RHEL is what you'll often find in the telco and banking infrastructure as well. Several stock exchanges are also running on RHEL ... and lots of other large enterprises.

@dazo ah ok, I fell on Ubuntu server to make the transition from windows as easy as possible. I’ll still check those out before I start thought, you made me curious.
@mettlife @dazo pihole or @technitium (Technitium DNS) is a very worthwhile choice and very simple to install.
I use both, one at my gfs house and the other at mine.