Internet Independence Instructions
Table of Contents
Depending on when this post comes out, you may think I have gone insane. Two posts in such quick succession, that has got to be some sort of record! I have to disappoint you there. I have not lost my mind, I am just getting in the habit of journaling my life a bit more.
The topic of this day is self-hosting, why I do it, how I got to where I am now and how you can turn from a service peasant into a landchad.
What is self-hosting
If you’re not familiar with the term, I’ll give you a short intro: Programs that you have in your computer (your browser, text editor, etc.) are yours. They run on your infrastructure (computer). Anything you use that you do not own, i.e. what you lease from a company is a service. This is often abbreviated as SaaS (Software as a Service). Someone else runs the servers, the networking, and provides you an interface where you can do what you need. A great example of this is the Google suite of tools (Google Drive, Calc, Docs, etc.) or Microsoft Office 365, with all its online editors you can pay a monthly fee for and use as long as you’re paying.
The Microsoft Office example is great in one aspect: If you buy Office for offline use, you basically own it and can use it permanently. Microsoft sells full versions of its Office suite that you can buy, download and install. After that, it’s yours to keep forever. I know offices which still run on Office 2013, and that is not a bad thing, actually. It is theirs to own, so why not use the product to its full potential?
For services, it’s different. You pay a monthly fee for access to a software running on someone else’s computers. You have no control over the infrastructure or full control of where your data is stored. If a company decides one day that they will cut off all their subscribers, you can only hope they give you some time to move your data elsewhere. In the worst-case scenario, you can find yourself losing all your data when you wake up. Add to this the rift forming between US companies and other countries, and you can see why your data is at risk.
Then vs. Now
In the past, if you wanted to host a website, you would have had to get a server, put your website on it, and make it accessible to the world. If you wanted to send a video to someone, it was the same thing. Services like Netflix, YouTube and Limewire were only starting to gain traction, so your best course of action was to pay for infrastructure and host the service at your own cost.
Nowadays, all you have to do is sacrifice your e-mail address (which you got from a free or paid service) to another service you want to use, and hope your data does not get lost or that you don’t violate their terms of service. This is what I would call the rental system of IT. You depend on a landlord (the service owner) and you must abide by their rules (no pets, no shady stuff, and they will use your data to train their AI.)
This is no way to live. People have forgotten what they can and cannot do with their tech, and the corporations are celebrating this fact. Is this way of living comfortable? Yes, definitely. Is it free? Yes, in monetary value, it can be free. Are you free to make your own choices about your data? Forget it.
Be your own landlord
With this comparison out of the way, what can we as individuals do? The answer is simple: Reuse any old piece of hardware you have at home, lying idle, and try your hand at building, running, and maintaining a server.
The term server may evoke the image of a huge rack of whirring drawer-like monsters, but a server is not the shape or size of a computer, but the way it is used. A server can be as small as a Raspberry Pi Zero, if your service is something that it can handle. This will depend on multiple factors, like the size of your network, the services you wish to run, and the amount of data you have to store/share. Any computer can be a server, I used an X220 laptop as my home server for years. It has its own PSU, can handle hours of power outages at a time, and is powerful enough to run several services at once, but I digress.
What you want is a computer that is unused and that you can install an OS on. Network connection is a must, how else would you serve your users?
The first choice you will face is the OS. I use Proxmox myself and can recommend it, but there are others, like FreeNAS or OpenMediaVault. I used Proxmox, because it allows me to create virtual machines on my host. OpenMediaVault is meant as a NAS replacement (think Synology OS on any computer). FreeNAS is similar, but it has a lot of functions that proprietary systems can’t or don’t want to implement. The installation is simple, you create a boot drive, install your system, and you’re good to go!
Next up, we will look at several replacements to get you thinking (and hopefully tinkering!)
What services can you run?
If you never left the FAANG ecosystem, you may not see what else is possible. This is normal, and learning what you don’t know is the first step to improvement. I will take Google’s offering as an example, as my family and friends are very much dependent on it.
Service 1: DNS
Everything starts at the DNS level. Unless you have all your IP addresses memorized, you use DNS to resolve google.com to an IP address. Your computer resolved my domain to an IP address that you are accessing right now.
Why care about this? Is 8.8.8.8 not good enough? Maybe 1.1.1.1 is better suited for you, but there is a catch with these: These companies do not differentiate between good IP addresses (the ones that give you data you want) and bad IPs (the ones that present ads or send you to malware-ridden hellholes. What if I told you there is a better option? You can run PiHole as your DNS server and block ad-serving domains from ever resolving and sending you data you don’t need. This saves you mental bandwidth, can protect you from malware (to an extent, it’s not a silver bullet) and save your precious metered plan for more productive things!
The link to PiHole setup, for your reading pleasure. The basic setup takes 20 minutes and you can get it done in an afternoon, including installation and setup of your server. If I had to choose one self-hosted service to depend on, it would probably be PiHole.
NOTE: As of late, I tried Knot-resolver and Knot DNS as my DNS. They are good, but I would not recommend it if you’re new to the game. PiHole will serve you well enough.
Service 2: Photos
One thing that my family relies on daily is Google Photos. This service has become the go-to for anyone with a Google account, as it provides you some resilient storage for photos and you can tell yourself that these photos are never going away.
This has been proven wrong several times when Google decided to play parent and locked innocent people out of their accounts. When you sign up for a service like Google Photos, they can delete your data. They scan your data, measure them against flawed AI algorithms, and when they decide they don’t want you on their platform, they will cut you off without a second’s hesitation. Furthermore, in cases like Facebook (which people actually rely on for storing their photos), Meta actually owns the rights to your photos. This means that if a company comes in and says “We need a photo of a young girl for a VD ad in Japan,” Meta will find a fitting photo, collect the paycheck and from then on, that girl is “the VD girl.” Has no one watched Friends? Joey goes through the same thing!
There is a ton of services, the only choice is which functions you want. Do you just want dumb storage that keeps your data in two places? Syncthing is file-agnostic, it just pushes data from point A to all the points you assign. Need a nice UI for your photos, kinda like Google Photos? Immich has got you covered. I use both, and I can tell you that Immich just takes the cake. It’s free, has a lovely UI, and can run on a potato (although I wouldn’t recommend running it on any kind of vegetable.)
Once you store your photos this way, it’s up to you to actually back them up. Google has huge data centers and can afford to replicate your photos in 90 different places at once. Can you? Probably not. There is strength in numbers, though. If you set this up for yourself, your family and maybe a friend, there can be a way to sync all photos across using, hell, syncthing! You can even encrypt the copies, so no one has access to the others’ pics; this way, you have the 3-2-1 strategy down pat.
Service 3: Media
Netflix has a shitty business model, let’s be honest. But they do have good shows! For about 15$ a month or whatever, you can get a ton of movies and rot your brain to your heart’s content. You know what else you can do with 15$ a month? Buy basically any movie that you want on DVD, get a DVD reader and rip the hell out of that thing.
When I was a kid, I loved a movie that was nowhere to be found online. My dad bought the DVD as soon as it came out and I watched it so much it got glitchy and messed up. The disc was 10 years old when it finally refused to play and I thought I’d never see it again. It wasn’t even the movie, it was specifically one audio track that made it all worth it: The audio description track. You can hear all the dialogue, but one guy with a soothing voice would just call out what’s going on on the screen. I knew the whole movie verbatim, including the audio description.
Many years later, I was bored and decided to look for CDs on a media site. Turns out the DVD was still on sale! The price for this amazing mix of laughs, anxiety and horror? 4$. Four bucks for a movie that formed a large part of my childhood? Sign me up. I bought it on the spot, took it home, and as is usual with LP rippers, the first view goes to the rip. It took about an hour to get the DVD into a .mkv file, but it was worth it. I stripped out all that I didn’t need, kept the original audio, the audio description, and dropped all the subtitles. It was my language, and I can still hear just fine, thanks for asking.
After that, I needed a way to get it on all my devices. This is where self-hosting came in: Jellyfin is a service that can check a folder on one PC and publish the movies to web browsers, TVs and mobile devices. A movie can be streamed anywhere in your household, and it does not have to be only Netflix-approved brainrot. You can fill it with things that actually spark joy and watch them as often as you want. I have movies that I bought on DVD in 2001 and re-bought due to the DVD being all played out. I watched that movie maybe 600 times over the course of 5 years.
Seriously, if you do one of the things listed here, it’s getting your own media library and grabbing movies that you enjoy, not movies that are present somewhere.
Other services to host
In order not to make this a book, let me close with a question: What services do you rely on? What is something that you use everyday and if it went away, you’d be lost? Take the time to answer some of these. Chances are, if you put “SERVICENAME self-hosted,” you will find a service lovingly put together by someone who once had the same problem.
In order to make this easier for you, I present two resources: Landchad.net and Awesome SelfHosted. These should show you many optoins for getting into self-hosting. I use it myself often, when looking for alternatives to paid or pay-with-data services.
In closing
The first part of this post was created in April, but I really wanted to put it out here. I hope more people venture on the self-hosting journey, as it’s the only thing we have left that is not polluted by enshittification.