Installazione software · 6 min read · Dec 19, 2025

Come installare Syncthing su Ubuntu 20.04

Syncthing è uno strumento open-source utilizzato per sincronizzare file tra due o più computer su una rete. Utilizza un’architettura peer-to-peer e scambia i tuoi dati direttamente tra i tuoi dispositivi. Tutti i dati trasmessi tra più dispositivi sono crittografati con TLS. Ogni volta che crei, modifichi o elimini dati su una macchina Syncthing, verranno automaticamente replicati su altri server. Può essere installato su tutti i principali sistemi operativi, inclusi Linux, Windows, Mac OS X, ecc.

In questa guida, ti mostreremo come installare e configurare il server Syncthing su Ubuntu 20.04.

Requisiti

  • Due server che eseguono Ubuntu 20.04.
  • Un nome di dominio valido puntato all’IP del tuo server.
  • Una password di root configurata su entrambi i server.

Iniziare

Per prima cosa, aggiorna i pacchetti di sistema alla versione aggiornata eseguendo il seguente comando:

apt-get update -y

Una volta aggiornati tutti i pacchetti, puoi procedere al passaggio successivo.

Installa il server Syncthing su entrambi i server

Per impostazione predefinita, il pacchetto Syncthing non è incluso nel repository predefinito di Ubuntu 20.04. Quindi dovrai aggiungere il repository Syncthing all’APT.

Per prima cosa, installa tutte le dipendenze necessarie su entrambi i server con il seguente comando:

apt-get install gnupg2 curl apt-transport-https -y

Successivamente, scarica e aggiungi la chiave di rilascio con il seguente comando:

curl -s https://syncthing.net/release-key.txt | apt-key add -

Successivamente, aggiungi il repository Syncthing all’APT con il seguente comando:

echo "deb https://apt.syncthing.net/ syncthing release" > /etc/apt/sources.list.d/syncthing.list

Successivamente, aggiorna il repository e installa il server Syncthing con il seguente comando:

apt-get update -y  
apt-get install syncthing -y

Una volta completata l’installazione, verifica la versione di Syncthing con il seguente comando:

syncthing --version

Dovresti ottenere il seguente output:

syncthing v1.18.0 "Fermium Flea" (go1.16.5 linux-amd64) [email protected] 2021-06-21 20:53:50 UTC [noupgrade]

A questo punto, Syncthing è installato su entrambi i server. Puoi ora procedere al passaggio successivo.

Crea un file di unità Systemd su entrambi i server

Successivamente, dovrai creare un file di unità systemd per gestire il servizio Syncthing. Puoi crearlo su entrambi i server con il seguente comando:

nano /etc/systemd/system/[email protected]

Aggiungi le seguenti righe:

[Unit]
Description=Syncthing - Open Source Continuous File Synchronization for %I
Documentation=man:syncthing(1)
After=network.target

[Service]
User=%i
ExecStart=/usr/bin/syncthing -no-browser -gui-address="0.0.0.0:8384" -no-restart -logflags=0
Restart=on-failure
SuccessExitStatus=3 4
RestartForceExitStatus=3 4

[Install]
WantedBy=multi-user.target

Salva e chiudi il file quando hai finito. Quindi, ricarica il demone systemd per applicare la configurazione:

systemctl daemon-reload

Successivamente, avvia il servizio Syncthing con il seguente comando:

systemctl start syncthing@root

Per verificare lo stato del servizio Syncthing, esegui il seguente comando:

systemctl status syncthing@root

Dovresti vedere il seguente output:

? [email protected] - Syncthing - Open Source Continuous File Synchronization for root
     Loaded: loaded (/etc/systemd/system/[email protected]; disabled; vendor preset: enabled)
     Active: active (running) since Fri 2021-07-09 04:40:12 UTC; 5s ago
       Docs: man:syncthing(1)
   Main PID: 2878 (syncthing)
      Tasks: 14 (limit: 2353)
     Memory: 44.2M
     CGroup: /system.slice/system-syncthing.slice/[email protected]
             ??2878 /usr/bin/syncthing -no-browser -gui-address=0.0.0.0:8384 -no-restart -logflags=0
             ??2889 /usr/bin/syncthing -no-browser -gui-address=0.0.0.0:8384 -no-restart -logflags=0

Jul 09 04:40:14 node1 syncthing[2878]: [WPOF6] INFO: QUIC listener ([::]:22000) starting
Jul 09 04:40:14 node1 syncthing[2878]: [WPOF6] INFO: Loading HTTPS certificate: open /root/.config/syncthing/https-cert.pem: no such file or d>
Jul 09 04:40:14 node1 syncthing[2878]: [WPOF6] INFO: Creating new HTTPS certificate
Jul 09 04:40:14 node1 syncthing[2878]: [WPOF6] INFO: Completed initial scan of sendreceive folder "Default Folder" (default)
Jul 09 04:40:14 node1 syncthing[2878]: [WPOF6] INFO: GUI and API listening on [::]:8384
Jul 09 04:40:14 node1 syncthing[2878]: [WPOF6] INFO: Access the GUI via the following URL: http://127.0.0.1:8384/
Jul 09 04:40:14 node1 syncthing[2878]: [WPOF6] INFO: My name is "node1"
Jul 09 04:40:14 node1 syncthing[2878]: [WPOF6] WARNING: Syncthing should not run as a privileged or system user. Please consider using a norma>
Jul 09 04:40:14 node1 syncthing[2878]: [WPOF6] INFO: quic://0.0.0.0:22000 detected NAT type: Not behind a NAT
Jul 09 04:40:14 node1 syncthing[2878]: [WPOF6] INFO: quic://0.0.0.0:22000 resolved external address quic://45.58.35.6:22000 (via stun.syncthin>

A questo punto, il servizio Syncthing è avviato e in ascolto sulla porta 8384. Puoi controllarlo con il seguente comando:

ss -antpl | grep 8384

Dovresti vedere il seguente output:

LISTEN    0         4096                     *:8384                   *:*        users:(("syncthing",pid=2889,fd=12))    

Accedi all’interfaccia web di Syncthing

Successivamente, apri il tuo browser web e accedi all’interfaccia web di Syncthing utilizzando gli URL http://first-server-ip:8384 e http://first-server-ip:8384.

Dovresti vedere la seguente schermata:

Interfaccia di amministrazione di Syncthing

Clicca su Impostazioni per definire l’utente amministratore e la password come mostrato di seguito:

Imposta una password

Fornisci il tuo nome utente, password e clicca sul pulsante Salva per applicare le modifiche. Sarai reindirizzato alla pagina di accesso di Syncthing:

accesso

Fornisci il tuo nome utente amministratore, password e clicca sul pulsante Accedi. Dovresti vedere la seguente schermata:

Cartelle

Successivamente, dovrai aggiungere l’ID del dispositivo di ciascun server all’altro server per sincronizzare i file tra entrambi i server. Per farlo, clicca su Azioni > Mostra ID su entrambi i server. Dovresti vedere la seguente schermata:

Identificazione del dispositivo

identifica nodo 2

Sul primo server, clicca su Aggiungi dispositivo remoto. Dovresti vedere la seguente schermata:

Aggiungi un dispositivo

Fornisci l’ID del dispositivo del secondo server e clicca sul pulsante Salva.

Sul secondo server, clicca su Aggiungi dispositivo remoto. Dovresti vedere la seguente schermata:

ID dispositivo

Fornisci l’ID del dispositivo del primo server e clicca sul pulsante Salva. Dovresti vedere la seguente schermata:

Cartelle e dispositivi

Ora, dovrai aggiungere e condividere la cartella che desideri sincronizzare con il secondo server. Clicca sul pulsante Aggiungi cartella. Dovresti vedere la seguente schermata:

Aggiungi una cartella

Fornisci l’etichetta della tua cartella, il percorso della cartella e clicca sulla scheda Condivisione. Dovresti vedere la seguente schermata:

Condivisione della cartella

Seleziona il secondo server e clicca sul pulsante Salva. Dovresti vedere la seguente schermata:

Cartelle e dispositivi in Syncthing

Successivamente, vai sul secondo server e clicca sul pulsante Scansiona Tutto. Dovresti vedere la seguente schermata:

Scansiona tutto

Clicca su Aggiungi per aggiungere la cartella di Backup condivisa sul primo server. Dovresti vedere la seguente schermata:

Sincronizzazione delle cartelle

Ora, ogni volta che crei o modifichi file nella cartella di Backup sul primo server, verranno sincronizzati automaticamente sul secondo server.

Configura Nginx come Reverse Proxy per Syncthing

Puoi anche configurare Nginx come reverse proxy per accedere al server Syncthing attraverso la porta 80.

Per prima cosa, installa il server Nginx con il seguente comando:

apt-get install nginx -y

Successivamente, crea un file di configurazione del virtual host Nginx con il seguente comando:

nano /etc/nginx/conf.d/syncthing.conf

Aggiungi le seguenti righe:

server {
  listen 80;
  server_name syncthing.example.com;

  access_log /var/log/nginx/syncthing.access.log;
  error_log /var/log/nginx/syncthing.error.log;
  location / {
    proxy_pass http://127.0.0.1:8384;
    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;
  }
}

Salva e chiudi il file, quindi verifica l’Nginx per eventuali errori di sintassi con il seguente comando:

ginx -t

Dovresti ottenere il seguente output:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Successivamente, ricarica l’Nginx per applicare le modifiche.

systemctl reload nginx

Puoi anche controllare lo stato dell’Nginx utilizzando il seguente comando:

systemctl status nginx

Dovresti vedere il seguente output:

? nginx.service - A high performance web server and a reverse proxy server
     Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2021-07-09 05:01:36 UTC; 21s ago
       Docs: man:nginx(8)
   Main PID: 3394 (nginx)
      Tasks: 2 (limit: 2353)
     Memory: 6.2M
     CGroup: /system.slice/nginx.service
             ??3394 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
             ??3395 nginx: worker process

Jul 09 05:01:36 node1 systemd[1]: Starting A high performance web server and a reverse proxy server...
Jul 09 05:01:36 node1 systemd[1]: Started A high performance web server and a reverse proxy server.

Ora, puoi accedere al server Syncthing utilizzando l’URL http://syncthing.example.com.

Conclusione

Congratulazioni! hai installato e configurato con successo Syncthing su due server Ubuntu 20.04 e impostato la sincronizzazione tra entrambi i server. Spero che questo tutorial ti aiuti a eseguire il backup del tuo server.

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.