Syncstorage-rs is the open source sync storage server behind the Sync feature of the Firefox web browser, so bookmarks, history, open tabs and saved logins sync through a server you run rather than a hosted service.
Syncstorage-rs is the open source server, maintained by Mozilla Services, that stores the data the Firefox web browser synchronises between a person's devices: bookmarks, browsing history, open tabs, saved logins, add-ons and preferences. It is the production backend for that service, written in Rust, and it exposes two halves from a single process: a storage API that holds the synchronised records, and a token service that tells each browser which storage node to use.
Running it yourself changes who holds the data. Firefox encrypts every record on the device before it is uploaded, using a key derived from the account passphrase and never sent to the server, so the server only ever holds ciphertext and cannot read a saved login or a browsing history. That is equally true of the hosted service; what self hosting changes is that the encrypted copy lives on infrastructure you control, in a region you choose, under your own retention and backup policy. Signing in still uses a Mozilla account, because identity and storage are deliberately separate concerns, and only the storage moves to your server.
It suits privacy conscious individuals, families and small teams, and organisations with data residency obligations that want browser sync to stay inside their own estate.
Firefox is a trademark of the Mozilla Foundation in the U.S. and other countries. cloudimg is not affiliated with or endorsed by the Mozilla Foundation.
cloudimg compiles Syncstorage-rs from upstream source into a ready to run appliance, so the service answers as soon as the instance finishes its first boot with nothing to build or configure. Security is the whole point of this product, and it is enforced from first boot: every client of a sync server authenticates with a token derived from one shared master secret, so a secret baked into a published image would let anyone mint valid tokens against every other deployment of it. This image therefore ships with no master secret, no database password and no server address at all, and mints all of them uniquely on each instance before the service is allowed to start. The database is bound to the loopback interface and the application listens only on loopback behind the web front end. A built in self test proves the running server really stores and returns a record, so an operator can verify the appliance without connecting a browser. The base is fully patched with unattended security upgrades enabled, every deployment is paired with a step by step deploy guide, and every subscription includes 24/7 cloudimg support.
Real screenshots taken while testing this image against its deployment guide.