Hello. I have been tasked with investigating using SyncThing to transfer files to our clients and was hoping to ask some questions. Here are my requirements.
- I need to be able to setup a shared sync for some files and a separate sync per client for files specific to each. The non-shared files are never shared between any group of clients. Also, there must be no way that one client can gain access to another client’s files. They need to be authenticated in some fashion to ensure that no one else can access these files and download them. We don’t even want each client to have any way to detect any other client. They should only be able to sync with us.
- Is this possible to do without some extremely complicated setup such as setting up a separate sync process per client and one for core files?
My understanding is that I would setup some kind of unique certificate to authenticate each client. Is that correct?
- I need for any changes on the client side to be ignored and overwritten by the sync.
- From what I have read, SyncThing is not really designed for one-way sync, so if a client accidentally or on purpose were to change or delete any file that was synchronized, it would cause issues such as failures that are difficult at the least to resolve and would likely require some kind of manual intervention.
- At some point my bosses were thinking that we could also allow clients to send us files via SyncThing. These files can never be shared with other clients. Would enabling that cause issues with #2 or possibly require an additional sync process to allow that?
I appreciate any feedback that anyone can provide on this.