Syncthing è un'applicazione di sincronizzazione file gratuita e open source utilizzata per sincronizzare file tra più dispositivi remoti su Internet. Funziona su architettura peer-to-peer e scambia i dati automaticamente tra due dispositivi. Ti aiuta a mantenere sincronizzati file e directory in tempo reale. Tutta la trasmissione di dati tra più dispositivi è sicura e crittografata con TLS. Ha client per Linux, Windows e macOS. Ha anche un'app Android per sincronizzare da e verso smartphone!
In questo post, ti mostreremo come installare il software di sincronizzazione dei file Syncthing sul server Debian 11.
Prerequisiti
- Due server che eseguono Debian 11.
- Su ciascun server è configurata una password di root.
Aggiungi repository di sincronizzazione
Per impostazione predefinita, Syncthing non è incluso nel repository predefinito di Debian 11. Quindi dovrai aggiungere il repository Syncthing su entrambi i server.
Innanzitutto, installa le dipendenze richieste utilizzando il comando seguente:
apt-get install gnupg2 curl apt-transport-https -y
Quindi, scarica e aggiungi la chiave GPG con il seguente comando:
curl -s https://syncthing.net/release-key.txt | apt-key add -
Quindi, aggiungi il repository Syncthing ad APT con il seguente comando:
echo "deb https://apt.syncthing.net/ syncthing release" > /etc/apt/sources.list.d/syncthing.list
Quindi, aggiorna il repository con il seguente comando:
apt-get update -y
Installa Syncthing su Debian 11
A questo punto, il repository Syncthing viene aggiunto su entrambi i server. Ora, esegui il seguente comando su entrambi i server per installare Syncthing.
apt-get install syncthing -y
Una volta installato Syncthing, verifica la versione di Syncthing utilizzando il seguente comando:
syncthing --version
Otterrai il seguente output:
syncthing v1.18.6 "Fermium Flea" (go1.17.6 linux-amd64) [email protected] 2021-12-30 12:07:01 UTC [noupgrade]
Crea un file di servizio Systemd per Syncthing
Successivamente, dovrai creare un file di servizio systemd su entrambi i server per gestire Syncthing. Puoi crearlo 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 le modifiche.
systemctl daemon-reload
Quindi, avvia il servizio Syncthing con il seguente comando:
systemctl start [email protected]
Successivamente, verifica lo stato di Syncthing utilizzando il seguente comando:
systemctl status [email protected]
Otterrai 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 Mon 2022-01-31 02:28:35 UTC; 11s ago Docs: man:syncthing(1) Main PID: 2746 (syncthing) Tasks: 14 (limit: 2341) Memory: 56.3M CPU: 1.661s CGroup: /system.slice/system-syncthing.slice/[email protected] ??2746 /usr/bin/syncthing -no-browser -gui-address=0.0.0.0:8384 -no-restart -logflags=0 ??2752 /usr/bin/syncthing -no-browser -gui-address=0.0.0.0:8384 -no-restart -logflags=0 Jan 31 02:28:36 server1 syncthing[2746]: [6F5DY] INFO: QUIC listener ([::]:22000) starting Jan 31 02:28:36 server1 syncthing[2746]: [6F5DY] INFO: Loading HTTPS certificate: open /root/.config/syncthing/https-cert.pem: no such file o> Jan 31 02:28:36 server1 syncthing[2746]: [6F5DY] INFO: Creating new HTTPS certificate Jan 31 02:28:36 server1 syncthing[2746]: [6F5DY] INFO: Completed initial scan of sendreceive folder "Default Folder" (default) Jan 31 02:28:36 server1 syncthing[2746]: [6F5DY] INFO: GUI and API listening on [::]:8384 Jan 31 02:28:36 server1 syncthing[2746]: [6F5DY] INFO: Access the GUI via the following URL: http://127.0.0.1:8384/ Jan 31 02:28:36 server1 syncthing[2746]: [6F5DY] INFO: My name is "server1" Jan 31 02:28:36 server1 syncthing[2746]: [6F5DY] WARNING: Syncthing should not run as a privileged or system user. Please consider using a no> Jan 31 02:28:36 server1 syncthing[2746]: [6F5DY] INFO: quic://0.0.0.0:22000 detected NAT type: Not behind a NAT Jan 31 02:28:36 server1 syncthing[2746]: [6F5DY] INFO: quic://0.0.0.0:22000 resolved external address quic://69.87.219.167:22000 (via stun.sy>
Per impostazione predefinita, Syncthing è in ascolto sulla porta 8384. Puoi verificarlo con il seguente comando:
ss -antpl | grep 8384
Otterrai il seguente output:
LISTEN 0 4096 *:8384 *:* users:(("syncthing",pid=2752,fd=28))
Imposta password amministratore Syncthing
A questo punto, Syncthing è installato e in esecuzione su entrambi i server. Ora dovrai accedere all'interfaccia utente web di Syncthing e impostare una password amministratore.
Per impostare la password amministratore del primo server, apri il tuo browser web e accedi ad esso utilizzando l'URL http://first-server-ip:8384 . Dovresti vedere la seguente schermata:
Fai clic su Impostazioni pulsante. Dovresti vedere la seguente schermata:
Nella GUI scheda, definisci il nome utente e la password dell'amministratore e fai clic su Salva pulsante per applicare le modifiche. Verrai reindirizzato alla pagina di accesso di Syncthing:
Fornisci il nome utente e la password dell'amministratore e fai clic su Accedi pulsante. Dovresti vedere la dashboard di Syncthing nella schermata seguente:
Per impostare la password amministratore del secondo server, apri il tuo browser web e accedi ad esso utilizzando l'URL http://second-server-ip:8384 . Dovresti vedere la seguente schermata:
Fai clic su Impostazioni pulsante. Dovresti vedere la seguente schermata:
Nella GUI scheda, definisci il nome utente e la password dell'amministratore e fai clic su Salva pulsante per applicare le modifiche. Verrai reindirizzato alla pagina di accesso di Syncthing:
Fornisci il nome utente e la password dell'amministratore e fai clic su Accedi pulsante. Dovresti vedere la dashboard di Syncthing nella schermata seguente:
Aggiungi ogni server a un altro server
Successivamente, dovrai individuare l'ID dispositivo di ciascun server e aggiungerlo a un altro server per sincronizzare i file tra entrambi i server.
Nella prima dashboard del server, fai clic su Azioni> Mostra ID per individuare l'ID del dispositivo. Dovresti vedere la seguente schermata:
Nella seconda dashboard del server, fai clic su Azioni> Mostra ID per individuare l'ID del dispositivo. Dovresti vedere la seguente schermata:
Sul primo server, fai clic su chiudi pulsante. Dovresti vedere la seguente schermata:
Ora, fai clic su Aggiungi dispositivo remoto . Dovresti vedere la seguente schermata:
Fornisci l'ID dispositivo e il nome del secondo server e fai clic su Salva pulsante. Una volta aggiunto il dispositivo, dovresti vedere la seguente schermata:
Sul secondo server, fai clic su Aggiungi dispositivo remoto . Dovresti vedere la seguente schermata:
Fornisci l'ID dispositivo e il nome del primo server e fai clic su Salva pulsante. Dovresti vedere la seguente schermata:
Crea e condividi una cartella
Successivamente, dovrai aggiungere e condividere la cartella sul primo server che desideri sincronizzare con il secondo server.
Sul primo server, fai clic su Aggiungi cartella pulsante. Dovresti vedere la seguente schermata:
Fornisci l'etichetta della cartella, il percorso della cartella e fai clic su Condivisione scheda. Dovresti vedere la seguente schermata:
Seleziona il secondo server e fai clic su Salva pulsante. Dovresti vedere la seguente schermata:
Quindi, vai al secondo server e fai clic su Rescan Tutti pulsante. Dovresti vedere la seguente schermata:
Fai clic su Aggiungi per aggiungere la cartella condivisa sul primo server. Dovresti vedere la seguente schermata:
Fai clic su Salva pulsante per applicare le modifiche. Dovresti vedere la seguente schermata:
A questo punto, entrambi i server sono configurati per sincronizzare i file tra loro. Ogni volta che crei o modifichi file nella cartella condivisa sul primo server, questi verranno sincronizzati automaticamente sul secondo server.
Conclusione
Congratulazioni! hai installato e configurato correttamente Syncthing su due server Debian 11 e impostato la sincronizzazione tra entrambi i server. Spero che questo tutorial ti aiuti a eseguire il backup del tuo server. Sentiti libero di chiedermi se hai domande.