====== Syncthing ====== ==== Server-side (Linux) ==== 1. Create systemd service file: ''/etc/systemd/system/syncthing.service'' [Unit] Description=Syncthing - Open Source Continuous File Synchronization for %I Documentation=man:syncthing(1) After=network.target [Service] User=wolfo ExecStart=/usr/bin/syncthing -no-browser -gui-address="127.0.0.1:8384" -no-restart -logflags=0 Restart=on-failure SuccessExitStatus=3 4 RestartForceExitStatus=3 4 [Install] WantedBy=multi-user.target ''systemctl daemon-reload'' ''systemctl start syncthing'' ''systemctl enable syncthing'' 2. nginx reverse proxy setup: location /syncthing/ { proxy_pass http://localhost:8384/; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_read_timeout 600s; proxy_send_timeout 600s; } 3. Settings (in the web interface) * Actions -> Settings -> GUI * **IMPORTANT**: //GUI Authentication User/password// * //Default Folder Path// * Actions -> Settings -> Connections * //Sync Protocol Listen Addresses//: ''tcp:%%/%%/$EXTERNALHOST:22000'' * Don't forget to set up port forwarding on the NAT accordingly 4. //Add Remote Device// (use Device ID or wait for automatic discovery) 5. //Add Folder// to sync and share with other remote devices ==== macOS client setup ==== 1. ''brew install syncthing'' 2. ''brew services start syncthing'' 3. Access interface at http://localhost:8384/