Menü Schließen

Windows 10 mittels Cygwin und RSyncd automatisch und zuverlässig mit BackupPC sichern

BackupPC Logo

Ich habe die Open-Source Backuplösung BackupPC unter Debian als Server laufen. Es werden einige Linux Systeme gesichert, zu denen sich nun auch ein Windows 10 Client gesellen soll. Die nachfolgende Anleitung beschreibt die Installation und Konfiguration in Windows 10 für das Backup per BackupPC.

weitere Themen zu BackupPC:

Download und Installation Cygwin mit RSyncd

Für Windows wird Cygwin benötigt, wo auch RSyncd enthalten ist. Der Download der aktuellen Version 3.2.3.1, ist vom vom Feb 2021: https://github.com/backuppc/cygwin-rsyncd

Wenn der Installer cygwin-rsyncd-3.2.3.0_installer.exe ausgeführt wird, wird Cygwin und Rsync in das Verzeichnis unter C:\rsyncd installiert.

Windows Cygwin Rsync Installationsverzeichnis
Windows Cygwin Rsync Installationsverzeichnis

Außerdem wird ein neuer Dienst / Service mit dem Namen RsyncServer erstellt und aktiviert.

Windows Dienst Rsync
Windows Dienst Rsync

Konfiguration Rsyncd unter Windows

Für die Konfiguration des Backupclients sind folgende zwei Dateien wichtig:

  • C:\rsyncd\rsyncd.conf (Einstellungen und Backupverzeichnisse)
  • C:\rsyncd\rsyncd.secrets (Zugriff mit User und Passwort)

In diesen beiden Dateien werden die Verzeichnisse die gesichert werden angegeben und der Backup User und Passwort. Nach einer Änderung muss der RsyncServer Dienst oder gleich Windows neugestartet werden.

Beispiel rsyncd.conf

Die Hauptkonfiguration ist recht einfach und kann grundlegend wie nachfolgend bleiben. Interessant ist der Abschnitt mit den zu sichernden Verzeichnissen und Dateien. Hier sind je nach Vorhaben mindestens zwei Parameter anzupassen, diese sind:

  • auth users – Benutzer für den Zugriff vom BackupPC, dies ist kein Windows oder BackupPC User
  • hosts allow – die IP-Adresse (n) von denen der Zugriff erlaubt ist, üblicherweise der BackupPC Server
# Limit the simultaneous rsync connections to 4. Changing
# this to '1' should be sufficient for BackupPC.
max connections = 2

# Path to log rsync messages
log file = c:/rsyncd/rsyncd.log

# The locations of the rsync lock file
lock file = c:/rsyncd/rsyncd.lock

# Example of how to share the entire C: drive.  For BackupPC "cDrive"
# is the share name (ie: the value of $Conf{RsyncShareName} on the
# BackupPC server settings for this client).
#
[cDrive]
    path = /cygdrive/c/
    comment = Entire C Drive
    strict modes = false
    # Limit this share to just these users (needs to match $Conf{RsyncdUserName}
    # and the c:/rsyncd/rsyncd.secrets files)
    auth users = WinShareUser
    # Password to match $Conf(RsyncdPasswd)
    secrets file = c:/rsyncd/rsyncd.secrets
    # List the IP address(es) of your BackupPC server(s), so only connections from these hosts will be allowed.
    hosts allow = 192.1.1.100, 192.1.1.101
    # Allows restores to write to this share
    read only = false
    list = false
    # git issue : https://github.com/backuppc/backuppc/issues/116
    charset=utf-8

Beispeil rsyncd.secrets

Die rsyncd.secrets Datei beinhaltet einen oder mehrere Benutzer und das Passwort. Der Benutzer hat nichts mit den Windowsusern oder den von BackupPC oder sonstigen Systemen zu tun. Sie sind lediglich zur Authentifizierung vom BackupPC an den Windowsclient bei der Anmeldung an dem Rsyncd des Windows für das Backup. Zudem muss der bzw. die Benutzer gleich der obigen rsyncd.conf sein.

....
# Also: make sure this file ends in a newline.  Otherwise the last
# username/password pair will be ignored.
#
#UUU:PPP
# Beispiel - bitte eigene Daten verwenden
WinShareUser:WinSharePass

Windows Firewall – Erweiterte Einstellungen

Die Windows Firewall wird aufgerufen und dort werden zwei neue Regeln über die Erweiterte Einstellung konfiguriert.

Windows Firewall Regel Erweiterte Einstellungen
Windows Firewall Regel Erweiterte Einstellungen

Windows Firewall ICMP Ping erlauben

Da BackupPC die Verbindung zum Client mittels PING (ICMP – Internet Control Message Protocol) prüft, muss dies in der Firewall von Windows erlaubt werden. Ich habe die Firewall wie nachfolend für IPv4 freigeschaltet. Dabei expliziet PING nur für den BackupPC Server erlaubt.

Ein Test vom BackupPC Server sollte nun erfolgreich sein:

backuppc@backuppcserver:winclient
PING winclient (192.168.0.114) 56(84) bytes of data.
64 bytes from win10cli01.plab.net (192.168.0.114): icmp_seq=1 ttl=128 time=0.320 ms
64 bytes from win10cli01.plab.net (192.168.0.114): icmp_seq=2 ttl=128 time=0.665 ms
...

Windows Firewall TCP 873 RSync Server

Für die Kommunikation von rsync auf dem Windows Client wird der TCP Port 873 benötigt. Dieser wird nachfolgend per Windowsfirewall nur für den BackupPC freigegeben.

BackupPC Verbindungstest

Da nun die Firewallregeln eingerichtet sind, kann ein Test vom BackupPC Serverauf den Windowsclient durchgeführt werden. Hierfür den BackpPC User anmelden:

# su -s /bin/bash backuppc

backuppc@backuppcserver:/root$ rsync WinShareUser@winclient::cDrive

Als nächsts wird nach dem Passwort gefragt, dass aus der rsyncd.secrets. Dann werden die Dateien aus dem zu sichernden Verzeichnis aufgelistet. Somit ist der Zugriff erfolgreich.

Windows Backup in BackupPC einrichten

Nachdem obige Einstellungen vorgenommen wurden und erfolgreich getestet, kann nun der eigentliche Job für das Backup des Windowsclient eingerichtet werden.Zunächst wird wie üblich der Host für den Windowsclient hinterlegt. Hierfür im Menü in BackupPC unter Edit Hosts den Windows Client hinzufügen:

BackupPC Edit Hosts
BackupPC Edit Hosts
BackupPC Edit neuer Windows Hosts
BackupPC Edit neuer Windows Hosts

Als nächstes kann die Konfiguration erfolgen. Nachfolgend die wesentlichen Punkte, damit das Backup startet.

Die Methode für das Backup ist rsyncd:

backuppc host method rsyncd

Als Sharename wird der aus der Konfiguration verwendet:

backuppc host share name

Nun noch den Benutzer und das Passwort aus der Secrets Datei eintragen:

backuppc host user pass

Nun kann das Backup mit einemVollbackup gestartet werden. Diese Anleitung hat gezeigt, wie man mit einfachen, kostenlosen und Open-Source Tools einen Windows Client mittels BackupPC sichern kann. Einem Datenverlust ist somit vorgebeugt.

Thats it … Have Fun!

BackupPC Rsync Fehler code 10

Folgenden Fehler hatte ich bei der Einrichtung von BackupPC und dem Backup eines Windows Clients.

backuppc@server:/root$ rsync BackupPCUser@win10client::Dokumente
rsync: failed to connect to win10cli01 (192.168.0.114): Connection timed out (110)
rsync error: error in socket IO (code 10) at clientserver.c(127) [Receiver=3.1.3]

Die Lösung war, nach Kontrolle aller obigen Einstellungen, ein Fehler bei der Konfiguration der Windowsfirewall. Wenn diese wie oben beschrieben gesetzt ist, dann klappt auch die rsync Verbindung vom BackupPC zum Windows Client.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert