This is an old revision of the document!
Syncthing
Syncthing is an open-source file synchronization client and server.
Installation
Install the packages and configure Syncthing to run at boot.
sudo pkg install syncthing sudo sysrc syncthing_enable=YES
Create the directory where Syncthing's shares will be kept:
sudo mkdir /var/syncthing/ sudo chown -R syncthing:syncthing /var/syncthing/ sudo chmod -R 750 /var/syncthing/
Create a backup copy of the config file:
If this file doesn't already exist, start the syncthing service to generate it. Stop the service again after a few seconds.
sudo cp /usr/local/etc/syncthing/config.xml{,.orig}
Update the config file and make the following changes:
sudo vim /usr/local/etc/syncthing/config.xml
- Change
<folder path="/Sync" ...to<folder path="/var/syncthing" ... - Change
<defaultFolderPath>to/var/syncthing/
Add a firewall rule to allow incoming traffic on these ports (and then restart your firewall after to load the new rules):
- TCP 22000
- UDP 22000
- (OPTIONAL) TCP 8384 (Syncthing's admin panel, only expose this port if you want to be able to allow remote configuration of this server)
Nginx: Create a server block to serve the admin GUI
server {
listen 80;
server_name syncthing.yourdomain.com;
root /usr/share/nginx/syncthing;
access_log /var/log/nginx/syncthing.log;
error_log /var/log/nginx/syncthing.err;
location / {
proxy_pass http://127.0.0.1:8384;
}
}
Start Syncthing
sudo service syncthing start
Browse to the Syncthing control panel to start using the tool
https://[your-servers-ip-address]:8384