[{"data":1,"prerenderedAt":169},["ShallowReactive",2],{"seo-verification":3,"blog-hosting-syncthing-on-your-own-vps-ma-en":6,"promo-bar-likely":168},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"key":7,"data":8},"blog-hosting-syncthing-on-your-own-vps-ma-en",{"id":9,"slug":10,"slugs":11,"title":15,"excerpt":16,"readTime":17,"views":18,"isPinned":19,"noindex":19,"publishedAt":20,"updatedAt":21,"category":22,"categories":28,"featuredImage":30,"bgImage":31,"posterImage":32,"relatedSolution":30,"intro":33,"sections":34,"ctaTitle":108,"ctaBody":109,"ctaButton":110,"ctaUrl":111,"relatedPosts":112},89,"hosting-syncthing-on-your-own-vps",{"fr":12,"en":10,"ar":13,"es":14},"heberger-syncthing","استضافة-syncthing-على-خادم-vps-الخاص-بك","alojar-syncthing-en-un-vps","Hosting Syncthing on your own VPS","Complete guide to deploying Syncthing on a VPS: advanced configuration, multi-device setup with Android and NAS, nginx security, REST API monitoring and troubleshooting",9,2,false,"2026-03-23T00:00:00+00:00","2026-10-05T14:05:27+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},7,"Self-hosting","self-hosting","bg-indigo-500\u002F10 text-indigo-400","cloud",[29],{"id":23,"name":24,"slug":25,"color":26,"icon":27},null,"\u002Fblog\u002Fcovers\u002Fbg.svg","\u002Fblog\u002Fcovers\u002Fheberger-syncthing-poster.svg","Dropbox and Google Drive store your files on servers you don't control. Syncthing synchronizes your devices peer-to-peer, end-to-end encrypted, with no central cloud. By hosting it on a VPS, you get an always-on node that acts as a reliable rendezvous point between all your devices.",[35,39,49,52,74,77,80,83,86,89,92],{"type":36,"title":37,"body":38},"h2","Why self-host Syncthing on a VPS","Syncthing is a decentralized file synchronization tool: each device talks directly to the others, with no central server or copy held by a provider. The problem with pure peer-to-peer is that your machines aren't always on at the same time — your laptop is off when your desktop wants to sync. A VPS solves exactly this: it acts as a permanent node available 24\u002F7, present on the Internet with a stable public IP, toward which all your devices converge. Files transit encrypted (TLS) and the VPS holds a synchronized copy that also serves as an off-site backup. Unlike shared hosting, a VPS allows opening the transfer ports and keeping a Syncthing daemon running permanently.",{"type":40,"title":41,"items":42},"ul","Concrete benefits of Syncthing on a VPS",[43,44,45,46,47,48],"Permanent relay node: your devices no longer need to be on simultaneously to synchronize.","End-to-end encryption (TLS) between all nodes, with no trust granted to any cloud.","Natural off-site backup: the VPS keeps an up-to-date copy of your shared folders.","File versioning (staggered\u002Fsimple), configurable folder by folder, to recover a previous version.","No per-gigabyte storage cost: only the VPS disk space matters.","Discovery by static IP: fast direct connection without depending on public discovery servers.",{"type":36,"title":50,"body":51},"Technical prerequisites","Syncthing is remarkably frugal in CPU and RAM, but it's the disk that sizes the server: you need as much space as the volume of data to synchronize. Plan for 1 vCPU and 1 GB of RAM, plus the storage suited to your folders (20, 50 GB or more depending on your needs). On the network side, two ports must be reachable: 22000 (TCP\u002FUDP, data transfer) and 21027 (UDP, local discovery, optional on a remote VPS). The admin interface runs on port 8384 and must absolutely stay protected. Docker and Docker Compose are enough; a `sync.yourdomain.com` subdomain is useful to access the interface over HTTPS via a reverse proxy.",{"type":53,"title":54,"steps":55},"steps","Deploy Syncthing step by step",[56,59,62,65,68,71],{"title":57,"body":58},"Prepare the container","On the VPS, create `\u002Fopt\u002Fsyncthing` and a `docker-compose.yml` based on the `syncthing\u002Fsyncthing:latest` image. Mount a configuration volume and a data volume, and set the `PUID`\u002F`PGID` variables for file permissions.",{"title":60,"body":61},"Open the transfer ports","Map port 22000 in TCP and UDP to the container and open it in the VPS firewall: `ufw allow 22000`. This is the port through which data transits between nodes. Do not publish port 8384 to the Internet.",{"title":63,"body":64},"Start Syncthing and retrieve the ID","Start with `docker compose up -d`. Retrieve the node identifier (Device ID) from the logs or via the interface: it's the unique fingerprint that will be used to pair your other devices.",{"title":66,"body":67},"Secure the admin interface","Expose port 8384 only behind an HTTPS reverse proxy with authentication. With Caddy: `sync.yourdomain.com { reverse_proxy syncthing:8384 }`. Also set an interface username\u002Fpassword in Syncthing's GUI settings.",{"title":69,"body":70},"Pair your devices","On each device (desktop, laptop, mobile), add the VPS as a new device via its Device ID, then accept the reciprocal request on the server side. Set up a shared folder and choose the mode (send only, receive only, or bidirectional).",{"title":72,"body":73},"Enable versioning","For important folders, enable \"staggered\" versioning on the VPS side: Syncthing keeps the successive versions of modified or deleted files there, turning your node into a safety net against handling mistakes.",{"type":36,"title":75,"body":76},"Advanced configuration of shared folders","Once the basic deployment is working, open the GUI (via `sync.yourdomain.com`) to fine-tune each folder. For each shared folder, set the type: **Send-Receive** (bidirectional), **Send Only** (the VPS cannot modify your files) or **Receive Only** (the VPS archives without overwriting). The `Folder ID` field in the configuration — visible in `config.xml` under `\u002Fopt\u002Fsyncthing\u002Fconfig\u002F` — must be identical on all devices sharing the same folder: it's what ties the nodes together. For storage-side encryption, Syncthing has supported the **Encrypted** mode since version 1.15: the VPS never sees your data in clear text, it only stores encrypted blobs. Enable it in the `Sharing` tab of a folder, `Encrypted` option for the VPS device. Sharing ACLs are managed per device: in each folder, select which devices are allowed to access it — a device not listed receives nothing even if it knows your Device ID.",{"type":36,"title":78,"body":79},"Connecting multiple devices: Android, laptop, NAS","The power of the VPS as a central hub becomes clear when you connect a full ecosystem. On **Android**, install Syncthing via F-Droid (the official app, free, no Google telemetry) — the Play Store version has been deprecated since 2024. Open Syncthing on the phone, copy its Device ID, and add it on the VPS side via \"Add Device\". Reciprocally, add the VPS on the phone with its Device ID and the explicit address `tcp:\u002F\u002FVPS_IP:22000` in the Addresses field. On a **laptop**, the process is identical: install `syncthing` via the package manager (`apt install syncthing` or official binary), start it with `systemctl --user enable --now syncthing`, and pair it to the VPS the same way. For a **Synology or TrueNAS NAS**, Syncthing is available as an official package or Docker container — configure the same Device ID and shared folders. Disable public relay servers in advanced preferences (`relays disabled`) and declare `tcp:\u002F\u002FVPS_IP:22000` as a static address on each node for direct, fast connections without depending on Syncthing Foundation services.",{"type":36,"title":81,"body":82},"Securing the web interface with nginx","Exposing port 8384 directly on the Internet is a critical mistake: anyone can attempt to connect. Best practice is to bind Syncthing to `127.0.0.1:8384` in the config (GUI Settings > GUI Listen Address: `127.0.0.1:8384`) and front it with nginx or Caddy over HTTPS. With nginx, create a vhost in `\u002Fetc\u002Fnginx\u002Fsites-available\u002Fsync`: define a `server` block on port 443 with your Let's Encrypt certificate, a `location \u002F` with `proxy_pass http:\u002F\u002F127.0.0.1:8384` and the `X-Real-IP`, `X-Forwarded-For` headers. Add HTTP basic authentication (`auth_basic`, `htpasswd`) as an additional layer: even if someone finds the URL, they must pass two barriers — nginx and the Syncthing GUI password. In `config.xml`, ensure `\u003CinsecureAdminAccess>false\u003C\u002FinsecureAdminAccess>`. Finally, back up `\u002Fopt\u002Fsyncthing\u002Fconfig\u002F` regularly — this folder contains the node's TLS keys, folder configuration and paired Device IDs: losing it means reconfiguring all devices from scratch.",{"type":36,"title":84,"body":85},"Monitoring health with the REST API","Syncthing exposes a full REST API at `http:\u002F\u002F127.0.0.1:8384\u002Frest\u002F`. The API token is found in the GUI under Settings > GUI > API Key. Some useful queries from the VPS: `curl -H 'X-API-Key: YOUR_KEY' http:\u002F\u002F127.0.0.1:8384\u002Frest\u002Fdb\u002Fstatus?folder=FOLDER_ID` returns the sync state of a folder (keys: `globalFiles`, `localFiles`, `needFiles`, `state`). The `idle` state confirms everything is synced; `syncing` means a sync is in progress; `error` signals a problem to investigate in the logs. For real-time event monitoring: `GET \u002Frest\u002Fevents?since=0` returns the event stream (connections, transfers, errors). For minimal production monitoring, add a cron job or Uptime-Kuma check that polls `\u002Frest\u002Fnoauth\u002Fhealth` — this endpoint requires no API key and returns `{\"status\":\"OK\"}` if Syncthing is running.",{"type":36,"title":87,"body":88},"Troubleshooting common errors","**Port 22000 unreachable.** Remote devices appear as \"Disconnected\" even though Syncthing is running. Verify that `ufw allow 22000\u002Ftcp` and `ufw allow 22000\u002Fudp` were applied (`ufw status`). Also check that the compose maps `22000:22000\u002Ftcp` and `22000:22000\u002Fudp` — missing the UDP mapping blocks discovery. Confirm with `nc -zv VPS_IP 22000` from a remote machine. **Device not found.** If auto-discovery fails, declare the VPS address manually in each client's config: Devices tab > Addresses > `tcp:\u002F\u002FVPS_IP:22000`. **Version conflict.** Two devices modified the same file while offline. Syncthing creates a `.sync-conflict-YYYYMMDD-HHMMSS-DEVICEID` file next to the original — intentional, no data is lost. Review both versions and delete the one you don't need. **Insufficient disk space.** Syncthing stops syncing and enters `error` state if available space drops below the configured threshold (default: 1% of disk). Free up space or expand the VPS disk; also check that staggered versioning isn't keeping years of revisions — limit the retention period in the folder settings.",{"type":90,"body":91},"tip","Configure the VPS node in \"Receive Only\" mode for folders you only want to back up: that way the server will never overwrite your devices, it only archives what is sent to it. And since you have a static IP, disable the global discovery servers and declare the VPS address explicitly (`tcp:\u002F\u002FIP:22000`) in the config of the other nodes: connections establish faster and don't depend on any external service.",{"type":93,"title":94,"rows":95,"headers":105},"comparison","Syncthing, Nextcloud Files or rclone: when to choose which",[96,99,102],[97,98],"Syncthing","Pure peer-to-peer synchronization. Ideal if you just want to sync folders between devices with no web interface or link sharing. Minimal footprint, simple config, no server-side language.",[100,101],"Nextcloud Files","Full suite (link sharing, calendar, contacts, online Office). Choose Nextcloud if you need to collaborate or share files with others. Heavier: PHP, database, Redis.",[103,104],"rclone","Copy\u002Fsync tool supporting 70+ backends (S3, B2, SFTP…). Choose rclone for scheduled backups to object storage or data migration between clouds, not for real-time multi-device sync.",[106,107],"Tool","When to use it","Your file cloud, without the cloud","The ServOrbit Cloud VPS, with its static IP and scalable disk, makes an ideal Syncthing node: always on, encrypted, off-site backup included. Deploy the template and sync all your devices peer-to-peer.","Deploy on Cloud VPS","\u002Fvps-cloud",[113,132,150],{"id":114,"slug":115,"slugs":116,"title":120,"excerpt":121,"readTime":122,"views":123,"isPinned":19,"noindex":19,"publishedAt":124,"updatedAt":125,"category":126,"categories":127,"featuredImage":30,"bgImage":31,"posterImage":129,"relatedSolution":130},71,"hosting-nextcloud-on-your-own-vps",{"fr":117,"en":115,"ar":118,"es":119},"heberger-nextcloud","استضافة-nextcloud-على-خادمك-الـvps-الخاص","alojar-nextcloud-en-su-propio-vps","Self-Host Nextcloud on VPS: NC 35, PHP 8.3 and MariaDB 11 Guide","Host Nextcloud on a VPS: Docker Compose, Redis, MariaDB backup, uploads over 40 GB behind Cloudflare and an alternative to Office 2021.",20,1,"2026-04-10T00:00:00+00:00","2026-11-08T16:32:50+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},[128],{"id":23,"name":24,"slug":25,"color":26,"icon":27},"\u002Fblog\u002Fcovers\u002Fheberger-nextcloud-poster.svg",{"categorySlug":25,"appSlug":131},"nextcloud",{"id":133,"slug":134,"slugs":135,"title":139,"excerpt":140,"readTime":141,"views":123,"isPinned":19,"noindex":19,"publishedAt":142,"updatedAt":143,"category":144,"categories":145,"featuredImage":30,"bgImage":31,"posterImage":147,"relatedSolution":148},72,"hosting-ghost-on-your-own-vps",{"fr":136,"en":134,"ar":137,"es":138},"heberger-ghost","استضافة-ghost-على-خادمك-الـvps-الخاص","alojar-ghost-en-un-vps","Hosting Ghost on your own VPS: complete 2026 guide","Deploy Ghost v6 on your VPS with Caddy, MySQL, Ghost CLI and Stripe Tax: installation, TLS reverse proxy, updates and troubleshooting common startup errors.",10,"2026-04-09T00:00:00+00:00","2026-11-04T16:30:25+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},[146],{"id":23,"name":24,"slug":25,"color":26,"icon":27},"\u002Fblog\u002Fcovers\u002Fheberger-ghost-poster.svg",{"categorySlug":25,"appSlug":149},"ghost",{"id":151,"slug":152,"slugs":153,"title":157,"excerpt":158,"readTime":23,"views":159,"isPinned":19,"noindex":19,"publishedAt":160,"updatedAt":161,"category":162,"categories":163,"featuredImage":30,"bgImage":31,"posterImage":165,"relatedSolution":166},73,"host-wordpress-on-your-own-vps",{"fr":154,"en":152,"ar":155,"es":156},"heberger-wordpress","استضافة-wordpress-على-خادم-vps-الخاص-بك","alojar-wordpress-en-un-vps","Host WordPress on your own VPS","Host WordPress on your VPS for maximum performance and control: Docker, MariaDB, caching, reverse proxy and SSL.",0,"2026-04-08T00:00:00+00:00","2026-11-09T20:55:18+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},[164],{"id":23,"name":24,"slug":25,"color":26,"icon":27},"\u002Fblog\u002Fcovers\u002Fheberger-wordpress-poster.svg",{"categorySlug":25,"appSlug":167},"wordpress",true,1794270421524]