Security: What I Actually Do

No theoretical checklist—this is what’s in place and why.


SSH: keys only, no passwords

On every box that has SSH (Host 1 Windows, TrueNAS, and all five active Ubuntu VMs — Host 2 is permanently offline since 2026-04-11):

So even if something on the LAN is compromised, an attacker still needs the key. And nothing is listening for SSH from the internet.

OpenSSH


Router (MikroTik hEX)

MikroTik security


TLS and nginx

Mozilla SSL Config


Fail2ban on Ubuntu VMs

On all five active Ubuntu VMs (Docker host, nginx primary, Pi-hole 1, Minecraft server, Stoat Chat — secondary nginx and Pi-hole 3 are offline since Host 2 was decommissioned 2026-04-11):

fail2ban


Keepalived

VRRP is authenticated with a shared secret (PASS type) so a random device on the LAN can’t claim the VIP. The secret is in my local values file, not in the repo. Both nodes use the same auth pass and same VRRP ID. (Secondary nginx is offline — Host 2 decommissioned 2026-04-11; keepalived runs in degraded single-node mode.)

keepalived


Secrets and repo


What I don’t do (yet)

← Services | Back to index | Next: Documentation →