So I’m relatively new to server hosting. (But experienced with remote web hosting from providers.) After about a year of fighting to run Nextcloud on a hosting company and finally losing everything from the cPanel vulnerability a few months ago, I broke down and launched my own home server. I’m looking for advice to maximize security.
CachyOS Linux with ClamAV Docker via Portainer Nextcloud (E2EE), Immich, DocuSeal and NoteTrace Routed through a domain and subdimains via Zero Trust Cloudflare Tunnel and Cloudflare DNS.
I have regular redundant backups both onsite and offsite with Duplicati.
My passwords for OS and all admin dashboards are extremely long, unique, random strings managed by Bitwarden.
I know just enough about this stuff to get into trouble. What else should I setup? I have little to no monitoring going on and don’t know much about that direction.


Use authelia for 2fa
Disable root ssh
Disable password authentication for ssh. Keys only.
Set up Fail2ban
That’s about all that’s left; 2fa and brute force protection. Good job.
Sub fail2ban for wazuh. It does the same but so much more, and does everything with 0 config after fresh install.
And move SSH to a non-default port. Without that, my public-facing servers get thousands of SSH attacks a day, and it basically goes to zero after moving it to a random-looking high port.
Also, totally agree with using public key login and disable password login.
That’s generally good advice but not actually security related.
Removing all the stress on your ressources by using a non-standard port is good for your ressources, But those automated scanners looking for unsecured devices and trying out password like admin/admin are not actually a risk. It’s just a case of security by obscurity and never actually serves its purpose.
Very true. There are only ~65K ports. If someone decides they want to, trying all of them to see which one gives a valid response is trivial.
Literally a single nmap command will tell me where you “hid” your ssh port.
Like the poster you’re responding to said, it is good advice but not for security. It takes you off the hacker spam list, essentially.
Rereading this it sounds like I am disagreeing with you sorry. Just trying to reiterate your point.
OpenSSH rate limits authentication attempts so it isn’t a big deal. My public VPS gets pounded but it doesn’t matter as it doesn’t really use any system resources.