Syncthing ist ein Open-Source-Tool zum Synchronisieren von Dateien zwischen zwei oder mehr Computern in einem Netzwerk. Es verwendet eine Peer-to-Peer-Architektur und tauscht Ihre Daten direkt zwischen Ihren Geräten aus. Alle zwischen mehreren Geräten übertragenen Daten werden mit TLS verschlüsselt. Wann immer Sie Daten auf einem Syncthing-Computer erstellen, ändern oder löschen, werden diese automatisch auf andere Server repliziert. Es kann auf allen gängigen Betriebssystemen installiert werden, einschließlich Linux, Windows, Mac OS X usw.
In dieser Anleitung zeigen wir Ihnen, wie Sie den Syncthing-Server unter Ubuntu 20.04 installieren und einrichten.
Voraussetzungen
- Zwei Server mit Ubuntu 20.04.
- Ein gültiger Domainname, auf den Ihre Server-IP verweist.
- Ein Root-Passwort ist auf beiden Servern konfiguriert.
Erste Schritte
Aktualisieren Sie zuerst die Systempakete auf die aktualisierte Version, indem Sie den folgenden Befehl ausführen:
apt-get update -y
Sobald alle Pakete aktualisiert sind, können Sie mit dem nächsten Schritt fortfahren.
Installieren Sie Syncthing Server auf beiden Servern
Standardmäßig ist das Syncthing-Paket nicht im Standard-Repository von Ubuntu 20.04 enthalten. Sie müssen also das Syncthing-Repository zum APT hinzufügen.
Installieren Sie zuerst alle erforderlichen Abhängigkeiten auf beiden Servern mit dem folgenden Befehl:
apt-get install gnupg2 curl apt-transport-https -y
Laden Sie als Nächstes den Freigabeschlüssel herunter und fügen Sie ihn mit dem folgenden Befehl hinzu:
curl -s https://syncthing.net/release-key.txt | apt-key add -
Als nächstes fügen Sie das Syncthing-Repository mit dem folgenden Befehl zu APT hinzu:
echo "deb https://apt.syncthing.net/ syncthing release"> /etc/apt/sources.list.d/syncthing.list
Aktualisieren Sie als Nächstes das Repository und installieren Sie den Syncthing-Server mit dem folgenden Befehl:
apt-get update -y
apt-get install syncthing -y
Überprüfen Sie nach Abschluss der Installation die Version von Syncthing mit dem folgenden Befehl:
syncthing --version
Sie sollten die folgende Ausgabe erhalten:
syncthing v1.18.0 „Fermium Flea“ (go1.16.5 linux-amd64) [E-Mail-geschützt] 2021-06-21 20:53:50 UTC [noupgrade]
Zu diesem Zeitpunkt ist Syncthing auf beiden Servern installiert. Sie können jetzt mit dem nächsten Schritt fortfahren.
Erstellen Sie eine Systemd-Unit-Datei auf beiden Servern
Als nächstes müssen Sie eine systemd-Einheitendatei zum Verwalten des Syncthing-Dienstes erstellen. Sie können es mit dem folgenden Befehl auf beiden Servern erstellen:
nano /etc/systemd/system/[email protected]
Fügen Sie die folgenden Zeilen hinzu:
[Unit]Description=Syncthing - Kontinuierliche Open-Source-Dateisynchronisierung für %IDocumentation=man:syncthing(1)After=network.target[Service]User=%iExecStart=/usr/bin/syncthing -no-browser -gui -address="0.0.0.0:8384" -no-restart -logflags=0Restart=on-failureSuccessExitStatus=3 4RestartForceExitStatus=3 4[Install]WantedBy=multi-user.target
Speichern und schließen Sie die Datei, wenn Sie fertig sind. Laden Sie dann den systemd-Daemon neu, um die Konfiguration anzuwenden:
systemctl daemon-reload
Als nächstes starten Sie den Syncthing-Dienst mit dem folgenden Befehl:
systemctl start [email protected]
Führen Sie den folgenden Befehl aus, um den Status des Syncthing-Dienstes zu überprüfen:
Systemctl-Status [E-Mail-geschützt]
Sie sollten die folgende Ausgabe sehen:
An diesem Punkt wird der Syncthing-Dienst gestartet und überwacht Port 8384. Sie können dies mit dem folgenden Befehl überprüfen:
ss -antpl | grep 8384
Sie sollten die folgende Ausgabe sehen:
LISTEN 0 4096 *:8384 *:* Benutzer:(("syncthing",pid=2889,fd=12))
Zugriff auf die Syncthing-Weboberfläche
Öffnen Sie als Nächstes Ihren Webbrowser und greifen Sie über die URLs http://first-server-ip:8384 und http://first-server-ip:8384.
auf die Syncthing-Weboberfläche zuSie sollten den folgenden Bildschirm sehen:
Klicken Sie auf die Einstellungen um den Admin-Benutzer und das Passwort wie unten gezeigt zu definieren:
Geben Sie Ihren Benutzernamen und Ihr Passwort ein und klicken Sie auf Speichern Schaltfläche, um die Änderungen zu übernehmen. Sie werden zur Anmeldeseite von Syncthing weitergeleitet:
Geben Sie Ihren Admin-Benutzernamen und Ihr Passwort ein und klicken Sie auf Anmelden Taste. Sie sollten den folgenden Bildschirm sehen:
Als Nächstes müssen Sie die Geräte-ID jedes Servers zu einem anderen Server hinzufügen, um Dateien zwischen beiden Servern zu synchronisieren. Klicken Sie dazu auf Aktionen> ID anzeigen Schaltfläche auf beiden Servern. Sie sollten den folgenden Bildschirm sehen:
Klicken Sie auf dem ersten Server auf Remote-Gerät hinzufügen . Sie sollten den folgenden Bildschirm sehen:
Geben Sie die Geräte-ID des zweiten Servers ein und klicken Sie auf Speichern Schaltfläche.
Klicken Sie auf dem zweiten Server auf Remote-Gerät hinzufügen . Sie sollten den folgenden Bildschirm sehen:
Geben Sie die Geräte-ID des ersten Servers ein und klicken Sie auf Speichern Taste. Sie sollten den folgenden Bildschirm sehen:
Jetzt müssen Sie den Ordner hinzufügen und freigeben, den Sie mit dem zweiten Server synchronisieren möchten. Klicken Sie auf Ordner hinzufügen Taste. Sie sollten den folgenden Bildschirm sehen:
Geben Sie Ihre Ordnerbezeichnung und den Ordnerpfad an und klicken Sie auf Freigabe Tab. Sie sollten den folgenden Bildschirm sehen:
Kreuzen Sie den zweiten Server an und klicken Sie auf Speichern Taste. Sie sollten den folgenden Bildschirm sehen:
Gehen Sie als Nächstes zum zweiten Server und klicken Sie auf Neu scannen Alle Taste. Sie sollten den folgenden Bildschirm sehen:
Klicken Sie auf Hinzufügen um den auf dem ersten Server freigegebenen Sicherungsordner hinzuzufügen. Sie sollten den folgenden Bildschirm sehen:
Wann immer Sie jetzt Dateien im Backup-Ordner auf dem ersten Server erstellen oder ändern, werden sie automatisch mit dem zweiten Server synchronisiert.
Konfigurieren Sie Nginx als Reverse-Proxy für Syncthing
Sie können Nginx auch als Reverse-Proxy einrichten, um über Port 80 auf den Syncthing-Server zuzugreifen.
Installieren Sie zuerst den Nginx-Server mit dem folgenden Befehl:
apt-get install nginx -y
Erstellen Sie als Nächstes mit dem folgenden Befehl eine Konfigurationsdatei für den virtuellen Nginx-Host:
nano /etc/nginx/conf.d/syncthing.conf
Fügen Sie die folgenden Zeilen hinzu:
server {listen 80; Servername syncthing.example.com; access_log /var/log/nginx/syncthing.access.log; error_log /var/log/nginx/syncthing.error.log; Standort / { 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 $schema; }}
Speichern und schließen Sie die Datei und überprüfen Sie dann Nginx mit dem folgenden Befehl auf Syntaxfehler:
nginx -t
Sie sollten die folgende Ausgabe erhalten:
nginx:Die Syntax der Konfigurationsdatei /etc/nginx/nginx.conf ist oknginx:Der Test der Konfigurationsdatei /etc/nginx/nginx.conf ist erfolgreich
Als nächstes laden Sie Nginx neu, um die Änderungen zu übernehmen.
systemctl nginx neu laden
Sie können den Status von Nginx auch mit dem folgenden Befehl überprüfen:
systemctl status nginx
Sie sollten die folgende Ausgabe sehen:
Nun können Sie über die URL http://syncthing.example.com.
auf den Syncthing-Server zugreifenSchlussfolgerung
Herzliche Glückwünsche! Sie haben Syncthing erfolgreich auf zwei Ubuntu 20.04-Servern installiert und konfiguriert und die Synchronisation zwischen beiden Servern eingerichtet. Ich hoffe, dieses Tutorial hilft Ihnen beim Backup Ihres Servers.