2018-02-19: We are currently testing an app, which will replace the manual steps below. Please see: http://wikisuite.org/How-to-install-Syncthing-on-ClearOS
Syncthing
“Syncthing replaces proprietary sync and cloud services with something open, trustworthy and decentralized. Your data is your data alone and you deserve to choose where it is stored, if it is shared with some third party and how it's transmitted over the Internet.” Source: http://syncthing.net/
Install Syncthing on ClearOS
Big picture steps
- Install Syncthing
- Open firewall ports for 1- management and 2- data sync
- Set password for remote management
- Connect to another device
Step by step
- Get epel-release repo
rpm -ivh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm?
- Get ok-release repo
rpm -ivh http://repo.okay.com.mx/centos/6/x86_64/release/okay-release-1-1.noarch.rpm?
- Install Syncthing
yum install syncthing
- Open up firewall ports 8384/TCP (or 8080/TCP for older versions), 22000/TCP, and 21025/UDP at https://example.org:81/app/incoming_firewall as per https://github.com/syncthing/syncthing/wiki/Firewalls-and-Port-Forwards
- Start Syncthing
syncthing
- Permit remote management (ClearOS is a server, and designed to be managed remotely via the GUI, but by default, Syncthing only accepts connections for localhost which makes sense for a desktop or mobile device): replace the gui address (default: 127.0.0.1) with your IP in the config file
nano ~/.config/syncthing/config.xml
- Access Syncthing via https://example.org:8384 (or 8080 for older versions)
- Set a username and password
- To start automatically on boot
chkconfig syncthing on
- Follow Syncthing documentation at https://github.com/syncthing/syncthing/wiki/Getting-Started#configuring
Todo
- Check how to get in services list
- Document how to use Firewall to restrict access to certain IPs for management
- Document for a Flexshare directory
- Make an official app for ClearOS
- The GUI should be at https://example.org:81/app/syncthing and replace what is normally done at http://localhost:8384/ (or 8080 for older versions)
Questions
- Will Syncthing be ported to ChromeOS and iOS one day?
- To manage ClearOS locally, could this work?: "The default graphical console that comes with ClearOS is a simplified xWindows session with a very simple browser"
Long term
Multi-user Syncthing roadmap
Syncthing has no concept of username or groups. It is mostly designed to be installed on diverse client devices for P2P sync.
- Each user should have access to their Syncthing management panel via https://example.org:81/app/syncthing (like they do for OpenVPN). This would replace what they do locally at http://localhost:8384/ or 8080
- Each user has their own running instance of Syncthing
- Device IDs running in ClearOS could be in ClearOS user directory (OpenLDAP) to make it easier to share
- Users sharing data should use the ClearOS instance for availability and performance
- To investigate
- Setting up own discovery server https://github.com/syncthing/discosrv
- So all devices “phone home”
- interop with FlexShare
- Use nice and ionice
-
- Lost device procedure (remove from all sync)
- Team / group devices / folders perhaps stored in OpenLDAP or wiki pages
Radar
- Allow file & file versions browsing over WebUI, hopefully easy interop with Tiki File Gallery
- Conflict resolution (more likely in a disconnected usage scenario)
Related links
- Cross-platform GUI: https://github.com/syncthing/syncthing-gtk
content/en_us/kb_syncthing.txt · Last modified: 2018/02/19 15:59 by marclaporte