I use restic with a wrapper script to automate it on all of my machines. The backend storage can be anything that speaks S3, so B2, or iDrive would both work. I currently use Storj for my backend. It’s globally distributed storage, so no single point of failure geographically and it’s cheap. Backblaze is also a great company, but I’ve grown a little skeptical since they went public.
I run uptime-kuma on a cheap VPS and have it ping my external ports on the home server. If the house loses internet I still get alerts.