I finally come around and started the journey of self-hosting and decided to get a VPS. After securing it, by making login via public-key default, I installed CasaOS and instantly regretted it since it now can be reached freely from the internet.
A while ago, I read that you can limit the incoming connection to only VPN and ssh. And configured a Wireguard-VPN on the server via pivpn. But the server can still be reached from the internet. So what do I have to do now?
Is it even the right choice, or am I missing something?
How do you guys secure your VPS?
You can set up firewall rules that limit connections to certain ports. For example, you can disallow connections to everything but port 22 (which ssh runs on) to only allow access to the ssh server from outside. Same with VPN.
Read up on ufw (or iptables if you want to do it lower level and have a drink on hand).
You can, but you should configure your server in a way that this shouldn't be a security feature of your setup (e.g. key-auth as OP did). It does help to cut back on uninvited guests a lot tho.