Tropic Host

Syncthing: mi ez, és hogyan állítható be a fájlszinkronizálás VPS-en

6 perc olvasás
Tropic
Syncthing: mi ez, és hogyan állítható be a fájlszinkronizálás VPS-en

Language: hu

Syncthing: fájlok szinkronizálása eszközök között más szolgáltató felhője nélkül

Reggel szerkeszt egy dokumentumot a laptopján, majd kikapcsolja. Este megnyitja az otthoni számítógépét, és a legújabb verzió már ott van. A fájl soha nem került át a Google Drive-on vagy a Dropboxon: a saját Syncthing-csomópontja fogadta.

A Syncthing közvetlenül szinkronizálja a kijelölt mappákat a megbízható eszközök között, miközben Ön szabályozza, hol tárolódnak az adatok. Központi szerver használata opcionális.

Ha azonban két számítógép ritkán van egyszerre online, a módosítások cseréje nehézzé válik. Egy folyamatosan bekapcsolt VPS megoldja ezt a problémát: fogadja a fájlokat az egyik eszköztől, majd később továbbítja őket a másiknak.

Fontos megérteni, mire tervezték a Syncthinget. Nem hálózati meghajtó és nem böngészőből használható fájlkezelő, hanem a kijelölt mappák automatikus replikálására szolgáló eszköz.

A Syncthing öt lépésben

A minimális beállítás így néz ki:

  1. Telepítse a Syncthinget a szükséges számítógépekre.
  2. Futtasson egy további Syncthing-példányt egy VPS-en.
  3. Nyissa meg a szerver kezelőfelületét SSH-alagúton keresztül.
  4. Cserélje ki az eszközazonosítókat, és hagyja jóvá a kapcsolatot.
  5. Adjon hozzá egy megosztott mappát, válasszon szinkronizálási módot, és engedélyezze a fájlverziózást.

Mi a Syncthing, és hogyan működik?

A Syncthing ingyenes, nyílt forráskódú szoftver a folyamatos fájlszinkronizáláshoz. Windows, macOS, Linux és más asztali, illetve szerver operációs rendszereken fut.

Minden telepítés egyedi Device ID-t — kriptográfiai azonosítót — kap. Mielőtt két csomópont adatot cserélhetne, fel kell vennie őket egymáshoz, és kifejezetten engedélyeznie kell egy adott mappa hozzáférését. Nincs egyetlen Syncthing-fiók, amely a készülékeit és fájljait tárolná.

Amikor egy fájl megváltozik, a Syncthing blokkokra osztja, összehasonlítja az ellenőrző összegeket, és csak a hiányzó részeket továbbítja. Így egy nagy fájlban végzett kisebb módosítás miatt nem mindig kell újra elküldeni az egész fájlt.

A felderítési szolgáltatások segítenek az eszközöknek megtalálni egymást, de nem tárolnak fájlokat. Ha a közvetlen kapcsolat nem lehetséges, a titkosított forgalom egy lassabb relén keresztül haladhat.

Mit változtat a VPS?

Szerver nélkül a laptop közvetlenül is szinkronizálhat az otthoni számítógéppel, de a két eszköznek — akár csak rövid időre — egyszerre online kell lennie. A VPS így mindig elérhető csereponttá válik.

Például a laptop reggel feltölt egy projektet a szerverre, majd kikapcsol. Este az otthoni számítógép letölti az új verziót a VPS-ről.

A Syncthing jól használható dokumentumokhoz, Obsidian-jegyzetekhez, forráskódhoz, fényképekhez és családi mappákhoz. A gyorsítótárakat, a node_modules mappát és a build kimenetét érdemes a .stignore segítségével kizárni. Aktív adatbázisokat és virtuálisgép-lemezképeket nem szabad szinkronizálni.

A VPS az otthonán kívül is létrehoz egy másolatot az adatairól. Ez a másolat azonban csak verziózással és külön biztonsági mentési archívummal együtt számít valódi mentésnek: egy véletlen törlés minden eszközre továbbterjedhet.

Syncthing vagy Nextcloud: melyiket válassza?

A két eszközt gyakran hasonlítják össze, noha eltérő problémákat oldanak meg.

SzempontSyncthingNextcloud
ModellA mappák az eszközök között másolódnakA fájlok központi szerveren tárolódnak
Szükséges szerverNem, a VPS opcionálisIgen
Böngészőalapú fájlhozzáférésNincs teljes értékű webes meghajtóIgen
Nyilvános linkekNemIgen
Közös szerkesztésNem biztosítjaHozzáadható
Legjobb felhasználásAzonos mappák megtartása a saját eszközökönSzemélyes vagy csapatszintű felhő

Válassza a Syncthinget, ha észrevétlenül, a háttérben futó szinkronizálásra van szüksége. A Nextcloud a jobb választás, ha webes hozzáférésre, megosztható linkekre, felhasználói fiókokra, naptárra és együttműködési funkciókra van szüksége.

A Syncthing telepítése VPS-re Docker Compose-szal

Az alábbi lépések Ubuntu 24.04-et futtató VPS-re vonatkoznak. A kezelőfelület a szerver helyi címéhez kötve marad, Ön pedig SSH-alagúton keresztül csatlakozik hozzá.

1. A Docker telepítése

sudo apt update
sudo apt install -y docker.io docker-compose-v2
sudo systemctl enable --now docker

2. A könyvtár és a Compose-fájl létrehozása

sudo mkdir -p /opt/syncthing/data
sudo chown -R 1000:1000 /opt/syncthing/data
cd /opt/syncthing
sudo nano compose.yaml

Illessze be a következőket:

services:
  syncthing:
    image: syncthing/syncthing:latest
    container_name: syncthing
    hostname: syncthing-vps
    environment:
      - PUID=1000
      - PGID=1000
      - STGUIADDRESS=
    volumes:
      - ./data:/var/syncthing
    network_mode: host
    restart: unless-stopped

Ez a konfiguráció a hivatalos Syncthing-lemezképet használja. A host hálózati mód megkönnyíti a közvetlen kapcsolatokat, az üres STGUIADDRESS érték pedig a kezelőfelületet a 127.0.0.1:8384 címen tartja.

Indítsa el a konténert:

sudo docker compose up -d
sudo docker compose ps

3. A szinkronizálási kapcsolatok engedélyezése

Először engedélyezze az SSH-t, hogy ne zárja ki saját magát a szerverről:

sudo ufw allow OpenSSH
sudo ufw allow 22000/tcp
sudo ufw allow 22000/udp
sudo ufw enable

A fő szinkronizálási protokoll a 22000/TCP portot használja, a QUIC pedig a 22000/UDP portot. A kezelőfelület 8384 portját nem kell megnyitni. A helyi felderítéshez használt 21027/UDP port nyilvános VPS-en általában szükségtelen.

4. A kezelőfelület megnyitása SSH-n keresztül

Futtassa a következő parancsot a számítógépén:

ssh -L 9999:127.0.0.1:8384 root@SERVER_IP

Hagyja nyitva a terminált, és nyissa meg ezt a címet:

http://127.0.0.1:9999

A kezelőfelület megnyitása után válassza az Actions → Settings → GUI menüpontot, és állítson be felhasználónevet és jelszót. Ha később domainen keresztül szeretné elérni a kezelőfelületet, tegye HTTPS-t használó fordított proxy mögé, és hagyja bekapcsolva a hitelesítést.

5. Eszköz és mappa hozzáadása

Telepítse a Syncthinget a számítógépére, majd:

  1. A számítógépen és a VPS-en is válassza az Actions → Show ID lehetőséget.
  2. Adja hozzá mindkét csomópont Device ID-ját a másik eszközhöz.
  3. A számítógépen kattintson az Add Folder elemre, válasszon ki egy könyvtárat, és ossza meg a szerverrel.
  4. A VPS-en fogadja el a mappát, és válasszon például /var/syncthing/Files elérési utat.

A kétirányú szinkronizáláshoz a számítógépeken hagyja bekapcsolva a Send & Receive módot. A VPS-en gyakran kényelmesebb a Receive Only: a szerver továbbra is fogadja és továbbítja a módosításokat a csomópontok között, de a VPS-en közvetlenül végzett véletlen helyi szerkesztések nem terjednek el az egész hálózaton.

Miért nem helyettesíti a Syncthing a biztonsági mentést?

Ha egy fájlt törölnek vagy titkosítanak az egyik eszközön, a módosítás továbbterjedhet a többire. Ezért nyissa meg a VPS-en a mappa beállításait, és engedélyezze a File Versioning lehetőséget.

Gyakorlati választás a 30–90 napos megőrzési idővel beállított Staggered File Versioning. Amikor egy távoli csomópont lecserél vagy töröl egy fájlt, az előző verzió a .stversions mappába kerül. A régebbi másolatok lemezterületet fogyasztanak, ezért állítson be megőrzési korlátot.

Egy megbízható beállításnak három rétege van:

  1. A Syncthing naprakészen tartja a munkapéldányokat.
  2. A verziózás segít visszavonni néhány hibát.
  3. A Syncthingtől független, külön ütemezett biztonsági mentést tárol.

Tárolhat-e a VPS fájlokat úgy, hogy nem látja a tartalmukat?

A Syncthing tartalmaz megbízhatatlan eszköz módot. Állítson be jelszót a mappához a fő számítógépen, majd válassza a VPS-en a Receive Encrypted lehetőséget. A szerver titkosított adatokat tárol, és továbbadhatja azokat egy másik megbízható eszköznek, amely ugyanazt a jelszót használja.

A tartalom, a fájlnevek, az időbélyegek és a könyvtárstruktúra rejtve marad. A megosztott mappára és a hozzávetőleges fájlméretekre vonatkozó információk láthatók maradnak.

A fejlesztők ezt a funkciót továbbra is kísérleti jellegűnek tekintik. A jelszót és a Folder ID-t külön-külön tárolja: nélkülük lehet, hogy a titkosított mappa helyreállítása nem lehetséges.

Milyen VPS-re van szüksége a Syncthingnek?

Az erőforrásigény nemcsak az adatok mennyiségétől, hanem a fájlok számától, a módosítások gyakoriságától és a kezdeti indexelési folyamattól is függ. Dokumentumokat és néhány tucat gigabájt adatot tartalmazó személyes csomópontnál általában elegendő a következő kezdő konfiguráció:

  • 1 vCPU;
  • 1 GB RAM;
  • SSD vagy NVMe-tárhely;
  • elegendő lemezterület a fájlok és a .stversions számára;
  • stabil hálózati kapcsolat.

Nagy fotókönyvtár vagy több százezer fájl több erőforrást igényel. A legnagyobb terhelés általában az első vizsgálat és az ellenőrzőösszeg-számítás során jelentkezik.

Ehhez a feladathoz megfelelő egy alap Ubuntu VPS a tropic.host kínálatából. Kezdhet kis konfigurációval, majd a gyűjtemény növekedésével növelheti az erőforrásokat. A lemezkapacitás kiválasztásakor ne csak a jelenlegi mappákkal, hanem a jövőbeli fájlokkal, az ideiglenes adatokkal és a verzióelőzményekkel is számoljon.

Öt hiba, amelyet érdemes elkerülni

  • A 8384-es port megnyitása az egész internet számára. A beállításhoz használjon SSH-alagutat. Állandó webes hozzáféréshez használjon HTTPS-t, jelszót és fordított proxyt.
  • A szerver másolatának teljes biztonsági mentésként kezelése. Engedélyezze a verziózást, és készítsen külön mentési archívumokat.
  • Gyorsítótárak és függőségek szinkronizálása. A felesleges könyvtárakat zárja ki a .stignore segítségével.
  • A lemezhasználat figyelmen kívül hagyása. A .stversions mappa idővel jelentősen megnőhet.
  • Egy elveszett eszköz megbízhatóként hagyása. Távolítsa el a többi csomópontból, és védje a Syncthing konfigurációját, amely az eszközkulcsokat tartalmazza.

Amit az okostelefonokról tudni érdemes

A hivatalos Android-alkalmazást 2024 végén megszüntették, de közösségi kliensek elérhetők. Hivatalos iOS-kliens sincs: a háttérben történő futtatás korlátozásai megnehezítik a folyamatos szinkronizálást. Mielőtt a fő fotókönyvtárát csatlakoztatná, tesztelje a kiválasztott mobilalkalmazást egy kis mappával.

Összegzés

A Syncthing azoknak megfelelő, akik ugyanazokat a mappákat több eszközön szeretnék megtartani, kötelező felhőközvetítő használata nélkül. A VPS kényelmesebbé teszi a rendszert: a számítógépeknek nem kell egyszerre online lenniük, és egy otthonon kívüli, mindig elérhető másolatot is kap.

Biztonságos beállításhoz ne tegye közvetlenül elérhetővé az adminisztrációs kezelőfelületet, engedélyezze a verziózást, és egészítse ki a szinkronizálást független biztonsági mentéssel.

FAQ

Szükségem van VPS-re a Syncthinghez?

Nem. Az eszközök közvetlenül is szinkronizálhatnak. A VPS mindig bekapcsolt csomópontként lehetővé teszi, hogy az eszközök különböző időpontokban cseréljék ki a módosításokat.

Megnyithatom a Syncthing fájljait böngészőben?

A webes kezelőfelület konfigurációra szolgál, nem a Google Drive-hoz hasonló dokumentumböngészésre. Ha webes meghajtóra van szüksége, a Nextcloud jobb választás.

Biztonsági mentési megoldás a Syncthing?

Nem. A törlések és a sérülések továbbterjedhetnek más eszközökre. A verziózás segít, de nem helyettesíti a független biztonsági mentést.

Meg kell nyitnom a 8384-es portot?

Nem. Tartsa a kezelőfelületet a 127.0.0.1:8384 címen, és SSH-alagúton keresztül csatlakozzon. A szinkronizáláshoz nyissa meg a 22000/TCP és a 22000/UDP portokat.

Elolvashatja a VPS tulajdonosa a fájlokat?

Hagyományos beállításnál potenciálisan igen. A Receive Encrypted titkosított formában tárolja őket, de a funkció továbbra is kísérleti, és a jelszót, valamint a Folder ID-t biztonságban kell tartania.