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 Great decision, I wish you much success.
Just a tip: skip the desktop interface entirely and start directly via SSH. Nearly all tutorials you'll find online always refer to SSH. Having a desktop GUI won't give you any advantage. The system will also be significantly leaner, faster, and more secure this way. Always remember: the fewer packages you install on Linux, the lower the risk of installing security vulnerabilities.
@ae3 thanks for that.
Since I never worked with SSH beyond just trying some basics the desktop surface is my minds safety blanket. Ease me in and once I get used to it remove desktop surface again completely. Maybe I’ll just try without right aways..
@mettlife No tips, I don’t have much experience with the server side of Linux yet myself, but great luck on your journey into the world of Linux.

@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.

@mettlife I second what others have said about skipping remote desktop and just using SSH.

Regardless, I would go with pure Debian instead of Ubuntu. For starters, Debian allows you to select Xfce during installation, whereas Ubuntu forces Gnome on you, unless you download the Xubuntu ISO.

I recommend Ubuntu for learning Linux for daily computing, but for beginner home server setups, I recommend Debian. Since Ubuntu is based on Debian, most tutorials written for Ubuntu work well on Debian.

@jakeRaccoon thanks. I realize I should’ve been more specific. I’m planning on using Ubuntu Server LTS. If I researched correctly that should not come with Gnome. I’ll make sure to double check.
@mettlife Oh, right. I didn't remember there's a server flavor of Ubuntu too. Makes total sense it won't have any DE by default. I must say tho, in that case it makes even less sense to spend time and system resources in a GUI that you most likely won't need, imo.
@jakeRaccoon haha yea it’s a bit counterintuitive. It’s really only born out of fear since I’ve only ever used a GUI. If I realize I am not using it, it will just get binned. For now my goal is ease of mind when starting the journey.
@mettlife
1. Good, up to date documentation of your setup will save you a lot of time and worry.
2. Make sure you have (tested) backups and a disaster recovery plan (how to restore / rebuild when things inevitably go wrong) as they will be required, but you won't know when.
2a. RAID is not Backup.
3. https://awesome-selfhosted.net/
4. https://selfh.st/apps/
5. The rabbit hole goes deep.
awesome-selfhosted

A list of Free Software network services and web applications which can be hosted on your own servers

@rune thank you, appreciate the additional resources!

@mettlife follow @selfhst for news about self-hostable software etc. The reddit channel https://www.reddit.com/r/selfhosted/ is useful too, as well as a lemmy channel https://selfhosted.forum/c/homelab

What kinds of things do you want to host?

Self-Hosted Alternatives to Popular Services • r/selfhosted

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't...

reddit