Hello, how do you document your home lab? Whether it’s a small server or a big one with firewall and more nodes. I have a small pc with Proxmox and there I have a VM with OpnSense. After I’ve entered my VPN as a interface in OpenSense, I noticed that I slowly lose the overview with the different rules that I have built in my firewall. And I know that my setup is relatively easy in comparison to others here in this community. I want to have a quick Overview at the various VMs, like the Lxc container, Docker containers that I have in this and the IP addresses that I have assigned to them. I search for a simple an intuitiv way for beginners.
I download the YouTube tutorials I followed, upload them to my UAT Jellyfin server, and then when my server is having issues I can’t get to the videos!
A flawless system really
95% of my homelab lives on a single server, and everything I do is within containers. So, my documentation is just keeping all my compose files in a git repo and writing in comments when necessary. It’s fairly self-documenting, and I haven’t found the need to break out of just using containers for everything, besides a couple things like setting up mergerfs or cockpit, but that’s all plug and play nowadays with stuff like https://projectucore.io/
Of course, I don’t have any other things set up in my physical layout or network stack… but all that stuff would probably just go into an entry in my notes (obsidian/wiki.vim).
I am fortunate enough to only manage a homelab and not an enterprise sized network. So I don’t document anything just like at work.
Jokes aside, I do keep some harder to remember stuff written down in a README.md in my repo, but mainly most things are undocumented
My wife was mentioning the other day that if something happened to me she’d have absolutely no idea how to work any of this shit and that convinced me to actually start documenting it LMAO
Good time to start doing it too. Aside from setting up a NAS this weekend and figuring out an audiobook solution (not something I’ve ever dabbled with but I really should start reading some communist theory), I’ve got this project right where I want it for a long while.
I operate on the philosophy that it is better for me to relearn things than lean on old documentation that may no longer be accurate/relevant.
The best way to implement a safe connection to my home lab today might not be the safest way tomorrow.
Old dog, new tricks, etc.
Also! Your documentation is an attackers wet dream.
NB: this philosophy doesn’t scale.
while security might be compromised if an attacker found your documentation, it could equally be compromised by having zero documentation
the easier it is for you to get things back up and running in the event of a data loss / corrupted hard drive / new machine / etc, the less likely you are to forget any crucial steps (eg setting up iptables or ufw)
I just created a note in Obsidian with the Excalidraw plugin.
I use obsidian and ezcalidraw also, I didn’t realize we can put one in the other
Trillium notes
But what about the documentation to host the note server?