How would or do you backup your home server? I don’t have enough physical storage (for now) at home to store some backups, so I want to upload it to the cloud. Of course I want the backup to be encrypted, but I don’t want to enter the password every time by server does a backup. I am currently using borg on my PC and do it manually. How do I create a encrypted backup without entering the key manually? Do I hardcode it somewhere? Don’t really like that. I am also fine with trying other backup software.
I use Borgbackup, with borgmatic to configure and periodically run it. I have two storage VPSes “in the cloud”, and back up to both of them. My main storage VPS is a HostHatch one with 10TB space for $10/month. I got it during Black Friday sales in 2021.
If you do back up to multiple destinations, Borgbackup’s devs recommend configuring two separate backups, rather than doing a backup to one server then syncing it to the second one. This is to handle the case where one of the backups becomes corrupted.
Hetzner have decent deals on their “storage boxes”. You don’t get root access, but they support Borgbackup, restic and rclone in addition to the regular protocols (SFTP, FTPS, WebDAV, SMB).
Make sure you configure the SSH key to only allow it to run borgbackup in “append only” mode, so that malware/ransomware on the client system can’t delete the backups. This is a common issue with other backup solutions like rsync - the client has full access to the server, so a malicious user/code could delete the whole backup.
In terms of pricing, I find Hetzner is best for under 1TB, Backblaze for over 1TB. Both have great documentation for setting up any number of backup methods (SFTP, SSH, Rsync, Rclone, Borg, etc).
Rsync, Rclone, and Borg are all good options and some may be built into your choice of OS if you use a dedicated NAS system. Choose whatever is easiest for you.
The backups are gonna be encrypted in transit regardless of method, and Im pretty sure most backup providers encrypt data on their servers so you dont have to manage that I dont think.
When you commit to backups, IMO you should do them daily - Most backup clients have options for “sync” options which will ignore unchanged files and only upload changes, so a daily backup is not only more up-to-date but also more efficient once the first backup completes.
most backup providers encrypt data on their servers so you dont have to manage that I dont think.
That’s something you should manage yourself, so the provider isn’t the one with the keys, by encrypting the backup locally before sending it. Most solutions you mention let you do that.
Good point!