Would Syncthing work?
You tell it a folder and it will sync the contents of the folder between machines.
Icon base by Delapouite under CC BY 3.0 with modifications to add a gradient
Would Syncthing work?
You tell it a folder and it will sync the contents of the folder between machines.
this is the way
Nextcloud is pretty easy to setup. You can use it just like Dropbox/OneDrive. Just drag files you want to sync into either the web interface or a mounted directory.
With your minimal requirements, a Raspberry rumning stock Rasbian or Armbian, and SSH/SCP commands (and an Android/iPhone SSH/SCP client) could do the trick.
The disadvantages to this approach is you'll have to learn the commands you need for every use case. The advantage to this approach is you'll have to learn the commands you need for every use case, and we would learn a lot of useful stuff.
Source: I used a Pi for this need, before I bought a fancy Network Attached Storage (NAS) device.
Edit: Further pro/con:
Honestly, while being the most complicated approach suggested so far, it seems like what's closest to what I'm looking for! The fact that it's not reliant on any corporation staying alive, and keeps everything simple (or "bare-bones") is attractive. Do you have any pointers for setting up an iPhone SSH client so that I could transfer files to it from an iPhone?
You probably wanna take a look at "Nextcloud".
Truenas or Nextcloud or syncthing.
Sibling comments haven't addressed the bit about how you want to protect against fire. A NAS or Pi in your home won't protect against natural catastrophe. You need something remote.
A device that runs in someone else's home (like a family member) with a remote connection could work, but it's likely more hassle to setup than what you'd want. You'd have to punch through firewalls and such. Tailscale offers services that apparently make this easy, however. I haven't used them and couldn't say.
Since you seem to be working with small files, I think you should look into a Virtual Private Server (VPS). You can get an instance for $5-10 / month with someone like Digital Ocean or Linode or others. You would then need to enable FTP and get an FTP client. Depending on your preferred platform, this might be pretty easy or not so easy. On Mac, I'd recommend Transmit, by Panic Software. It's awesome. You can also transfer files via SSH and SCP if you're comfortable on the command line and not use an FTP client.
I actually have office locations in two different cities, and my home in a third, so my initial idea was to set up two drives (at one of the office locations and at home) because of course, a backup server in my home wouldn't protect against a house fire (admittedly, that's probably my most far-fetched concern).
My issue with a VPS is that I would very much prefer to have physical access the the drive myself, otherwise I would just pay for iCloud storage. A part of the point is that I want a system where I'm in control of as much as possible, so that I don't have to rely on some corporation playing ball to keep my stuff safe.
I'm perfectly comfortable working through a CLI, and my initial idea was actually to build a system for this myself, but it seems from the comments like there are some good alternatives out there that I may be able to use.
In that case, Tailscale and Syncthing. Again, I haven't used Tailscale (but I've heard positive comments from a tech podcast host who likes it). Syncthing is something I have used and it's awesome. Good luck!
No need for tailscale...
Encrypt the data and upload it to 0x0.st :)