I’m considering using this tool to keep files in sync between a live server and a hot-spare, across the iNet. A sync tool should only need to talk to its sync partner. Imagine my horror to see it gleefully telling me its blabbing to a half dozen (approx.) other machines.
Just like malware! Hi CnC what mischief should I do today?. So I’m trying to determine if I can trust this software enough to recommend it as a solution.
I want this software to never talk to any machine other than its sync partner. No updates, bug reports, usage stats, shouting about its location, … dead silence, except to its sync partner.
I already feel violated with its malware like behavior. I’m hoping someone here can lay my fears aside and tell me how to shut it up. I don’t want to spend too much time with it in a sandbox under the inspection of WireShark. Or having to vet its software, which would require learning Go.
To be honest, this isn’t really the best attitude, especially considering that Syncthing is a free and open source piece of software also available at no cost (and with no guarantees, as per the license). This topic, however, has been discussed very thoroughly quite a few times, on the forum as well. As the first step though, please check the Docs if you’re interested why and what kind of connections Syncthing makes (e.g. see https://docs.syncthing.net/users/faq.html#why-does-syncthing-connect-to-this-unknown-suspicious-address and also everything related to “global discovery” and “relaying”).
In short, Syncthing is designed to be usable by average computer users without having to tweak its default settings (e.g. to automatically connect their desktop, laptop, and mobile phone with each other wherever they are located). If you’re that worried about privacy and similar, you will either need to disable global discovery, relaying, etc. and use Syncthing inside LAN only, hard-code IP addresses, or set up and connect through your own discovery and relay services.
Nope. Right attitude. I haven’t been p0wned yet. And if I or my clients get p0wned I have only myself to blame. So due-diligence is an absolute must! In these days an even higher level of suspicion is required. Since only a fool asks the conman if he’s being honest and believes him, I have to question my own wisdom in even bringing this up for discussion here.
BUT I believe that your project is above-board (unless it gets poisoned by cyber-thugs) and so I bring this topic up, as I said, in the hope the feedback will settle my concerns.
Believe me I have and I searched here. But either due to simply missing it and/or not having thought up the right keywords to submit to the forum I have not found what seems to be a complete list or set of instructions on how to keep the silence, or if you prefer go incognito. What @Nummer378 posted seems like a pretty good start if not 100% complete. I won’t know for sure until I test.
Yup, I am. Yes, this starts to answer the question. And yes I will add more counter-measures. But “etc” and vagaries are not helpful to newcomers to your project who want to harden their installs.
Thanks for your time, just the same. And I leave you with a thought:
You can’t trust code that you did not totally create yourself. (Especially code from companies that employ people like me.) No amount of source-level verification or scrutiny will protect you from using untrusted code.
– Ken Thompson @ '83 Turing Award
Yes, I read that.
Good to know. Its my job to make the network perfect.
Frankly, if you are poweruser enough to set up the network in such a way that you do not need the various ways Syncthing provides to create a connection under the even most adverse conditions, it would probably been less of a hassle to set up Unison to do the same thing as Syncthing than writing to this board complaining about all the features syncthing has, which are not to your liking.
Syncthing’s code and documnetation is perfectly open about all that and, as has been mentioned, allows to turn it all off.
And please tell us about how you yourself wrote all the code you run on your machine.