Live data from Hacker News

Ask HN: How can a total beginner start with self-hosting?

news.ycombinator.com

21–30 of 194 posts

Re: Ask HN: How can a total beginner start with self-hosting?

#22
You could take a look at this course

https://www.reddit.com/r/linuxupskillchallenge?utm_medium=an...

It's a beginner course on Linux administration - not networking. It will give you enough knowledge to understand and manage a server. It's free, and starts on the first Monday of each month (you can also do it self paced if you like).

Re: Ask HN: How can a total beginner start with self-hosting?

#23
To understand networking: read a book. Much of my early networking knowledge came from https://dl.acm.org/doi/book/10.5555/1593414 but you can probably find more modern variants of such a book. Getting a good grasp of networking requires reading and experimentation; luckily, you've got the tools for experimentation already.

Most of application deployment is little more than reading the docs and tuning the configuration to your needs. From what I read, I think you've got enough knowledge to get that stuff running on your servers. You can probably get a lot more out of learning about the underlying concepts.

For your own photos and cloud: I use Seafile, have used Nextcloud, and alternatives exist. Quite easy to set up, but with the ability to go deep into Modern (TM) Cloud (C) backends if you want.

For your Bitwarden setup: Vaultwarden is a lot easier on resources and has pretty much all the features you need. Also quite easy to set up.

For your tailscale setup: there's a guide for the server (https://github.com/juanfont/headscale/blob/main/docs/running...) and you can find more guides for the clients.

For your Git setup: Git works over simple SSH. If you can SSH into your server, you can host a git repository. If you want more (a nice web GUI) then Gitea or Gitlab can also be run on your server.

Things I recommend reading into if your knowledge about them is spotty (find guides or book recommendations):

- Networking (ARP, IPv4, IPv6, TCP, UDP, DNS, mDNS, maybe PPPoE, and other such abbreviations). This is a lot of reading. You can also try to get started with this stuff without reading into it (it's how I learned!) and have a terribly frustrated time by overlooking obvious mistakes and easy solutions, but I don't recommend that.

- SystemD services. People use Docker to solve a lot of daemon problems but good ol' systemd can do a huge part of that! I run most of my services in systemd rather than some kind of container setup because I don't want to have to deal with Docker and its many friends and dependencies whenever I'm trying to resolve a problem and so far it works great.

- Reverse proxies, if you're running multiple services on a single server with subdomains or subpaths; learn about nginx/caddy/apache2/whatever server you prefer and how to set up proxying. Along the way you will break stuff and learn new things with every error message or unexpected routing error you encounter!

- Firewalls; firewalld and ufw are nice ways to get started, nftables/iptables for the underlying stuff. It's not hard, per se, but it can get complicated fast. Maybe mess with the Windows firewall as well just for fun.

- Set up IPv6 if you don't have it already. This would allow you to do some more networking stuff and prepare you better for the future, because corporate networking people seem to be grumpy and annoyed at the thought of one day needing to enable a protocol from the 90s. If your ISP only does IPv4, https://ipv6.he.net/ will get you an IPv6 subnet for free and if you do all of their quizzes they'll even send you a free shirt!

- Along the way, you will (or should, at least) learn to use Wireshark and friends. Incredibly overwhelming at first but with some knowledge about networks you'll get the hang of it by setting up the right filters.

Re: Ask HN: How can a total beginner start with self-hosting?

#25

The term you're looking for is Homelab. There are so many YouTube videos. And a subreddit.

I'd say more like selfhosted. Homelab is more about people building discarded server racks and populating with power hungry and noisy second hand equipment. Its their hobby more power to them but they seldom focus on what's those monsters are running instead of how they put RGB lights on old R710s.

Re: Ask HN: How can a total beginner start with self-hosting?

#26
This is a very good question.

My best answer is: find a mentor.

Someone you can repeatedly ask for detailed pointers from as you get stuck. This could be a colleague, an IRC/Discord friend or even someone on Twitter that you have bonded with.

I have been mentoring people close to me on computers and Linux since I was about 13 years old and am now 39. And it has been a real blessing, since you learn a lot by being forced to explain what you already know.

As a teenager I didn’t think of this as mentoring of course. But I wad very lucky to have had my 3 years older brother as computing mentor, which gave me a great head start compared to my peers.

Not knowing exactly where you or others reading this comment are currently getting stuck, here are a few random pointers:

netstat -a -n -l -p

ls -la /proc

man mdadm

iptables -L -n

rsync -a -e ssh myfolder user@host:

And reading Beij’s (?) tutorial on TCP socket programming if you are an aspiring C programmer.

Re: Ask HN: How can a total beginner start with self-hosting?

#27
Plex is a great product if you want to host your own photos, music, and media such as movies and tv shows. If you aren't a fan of Plex you can try jellyfin.

As others have mentioned, proxmox, Unraid, and/or TrueNAS are great if you have unused/extra hardware sitting around. Personally I have a box for Proxmox VM's, and an Unraid server for storage and several docker containers i use regularly. I'm still very cloud dependant for the convenience factor, but this should help give you some direction.

There are also communities on reddit like /r/selfhosted and /r/DataHoarder/ that you might want to check out.

Re: Ask HN: How can a total beginner start with self-hosting?

#28

This is a very good question. My best answer is: find a mentor. Someone you can repeatedly ask for detailed pointers from as you get stuck. This could be a colleague, an IRC/Discord friend or even someone on Twitter that you have bonded with. I have been mentoring people close to me on computers and Linux since I was about 13 years old and am now 39. And it has been a real blessing, since you learn a lot by being for…

I like this idea. I live in a little college town so I think I can tap into a circle of nerds.

Thanks especially for the concrete list of topics to bork around with.

Re: Ask HN: How can a total beginner start with self-hosting?

#29

You could take a look at this course https://www.reddit.com/r/linuxupskillchallenge?utm_medium=an... It's a beginner course on Linux administration - not networking. It will give you enough knowledge to understand and manage a server. It's free, and starts on the first Monday of each month (you can also do it self paced if you like).

Wow! Thanks!

Re: Ask HN: How can a total beginner start with self-hosting?

#30

It depends on what direction you want take. You could purchase a $5/mo digital ocean server or a $5 raspberry pi and start by installing https://pi-hole.net , https://nextcloud.com , https://syncthing.net , https://www.plex.tv , or some other software to get the first (largest) thing you want resolved. Then move on from there and install the next package you need. Ad blocking for your phone? VPN for work? Self hosted…

Why is the self host advice to always buy a Raspberry Pi, use an old crappy computer you have lying around, etc?

I have a very beefy desktop for the first time in over a decade (maxed out Mac Studio) and I am wondering is there any real downside to having these services run on it?

Post reply on HN