User Tools

Site Tools


You are not allowed to perform this action
syncthing

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/

syncthing.txt · Last modified: by wolfo

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki