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 -yUna 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 -ySuccessivamente, 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.listSuccessivamente, aggiorna il repository e installa il server Syncthing con il seguente comando:
apt-get update -y
apt-get install syncthing -yUna volta completata l’installazione, verifica la versione di Syncthing con il seguente comando:
syncthing --versionDovresti 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.targetSalva e chiudi il file quando hai finito. Quindi, ricarica il demone systemd per applicare la configurazione:
systemctl daemon-reloadSuccessivamente, avvia il servizio Syncthing con il seguente comando:
systemctl start syncthing@rootPer verificare lo stato del servizio Syncthing, esegui il seguente comando:
systemctl status syncthing@rootDovresti 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 8384Dovresti 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:

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

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

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

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:


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

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:

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

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

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

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

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

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

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 -ySuccessivamente, crea un file di configurazione del virtual host Nginx con il seguente comando:
nano /etc/nginx/conf.d/syncthing.confAggiungi 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 -tDovresti ottenere il seguente output:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successfulSuccessivamente, ricarica l’Nginx per applicare le modifiche.
systemctl reload nginxPuoi anche controllare lo stato dell’Nginx utilizzando il seguente comando:
systemctl status nginxDovresti 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.
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.