Installation und Verwendung der BackupPC-Backup-Software auf Ubuntu 20.04 LTS

BackupPC ist eine kostenlose, quelloffene und webbasierte Backup-Software-Suite, die für die Sicherung von Linux-, Windows- und MacOS-PCs und -Laptops verwendet werden kann. Es ist in Perl geschrieben und verwendet Rsync, Samba oder tar über das ssh/rsh/nfs-Protokoll. Es bietet eine leistungsstarke Webschnittstelle, über die Sie Protokolldateien, Konfiguration und aktuellen Status einsehen können und die es Benutzern ermöglicht, Backups zu initiieren und abzubrechen und Dateien aus Backups zu durchsuchen und wiederherzustellen. Es handelt sich um ein hochleistungsfähiges Backup-System der Enterprise-Klasse zur Sicherung einer großen Anzahl von Rechnern auf der lokalen Festplatte oder im Netzwerkspeicher eines Servers.

In diesem Tutorial zeigen wir Ihnen, wie Sie BackupPC auf einem Ubuntu 20.04 Server installieren.

Voraussetzungen

  • Zwei Server mit Ubuntu 20.04.
  • Auf jedem Server wird ein Root-Passwort konfiguriert.

BackupPC installieren

Standardmäßig ist BackupPC im Standard-Repository von Ubuntu 20.04 verfügbar. Sie können es installieren, indem Sie einfach den folgenden Befehl ausführen:

apt-get install backuppc -y

Während der Installation werden Sie aufgefordert, die Art der Mailkonfiguration wie unten dargestellt auszuwählen:

Konfigurieren von BackupPC

Wählen Sie Local only und drücken Sie Enter. Sie werden aufgefordert, den System-Mail-Namen wie unten dargestellt anzugeben:

System-Mail-Name

Geben Sie Ihren gewünschten Namen an und drücken Sie Enter. Sie werden aufgefordert, den Webserver auszuwählen, den Sie wie unten dargestellt konfigurieren möchten:

Webserver auswählen

Wählen Sie Apache und drücken Sie Enter, um die Installation zu starten. BackupPC richtet außerdem einen administrativen Benutzer namens backuppc mit einem Kennwort ein, um verschiedene Aufgaben wie den Zugriff auf das BackupPC-Web-Dashboard zu verwalten. Sobald die Installation abgeschlossen ist, sollten Sie den folgenden Bildschirm sehen:

Konfigurieren von BackupPC

Klicken Sie nun auf Enter, um die Installation abzuschließen.

Ändern Sie das BackupPC-Standardpasswort

Wenn Sie das Passwort von backupc ändern möchten, klicken Sie auf Sie können es mit dem folgenden Befehl ändern:

htpasswd /etc/backuppc/htpasswd backuppc

Ausgabe:

New password: 
Re-type new password: 
Updating password for user backuppc

BackupPC-Dienst verwalten

Sie können den BackupPC-Dienst auch mit systemd verwalten.

Beispielsweise können Sie den BackupPC-Dienst mit dem folgenden Befehl starten:

systemctl start backuppc

Um den Status des BackupPC-Dienstes zu überprüfen, führen Sie den folgenden Befehl aus:

systemctl status backuppc

Sie sollten die folgende Ausgabe sehen:

? backuppc.service - LSB: Launch backuppc server
     Loaded: loaded (/etc/init.d/backuppc; generated)
     Active: active (running) since Sat 2020-07-25 13:59:33 UTC; 6min ago
       Docs: man:systemd-sysv-generator(8)
      Tasks: 2 (limit: 2353)
     Memory: 22.0M
     CGroup: /system.slice/backuppc.service
             ??4463 /usr/bin/perl /usr/share/backuppc/bin/BackupPC -d
             ??4464 /usr/bin/perl /usr/share/backuppc/bin/BackupPC_trashClean

Jul 25 13:59:32 backuppcserver systemd[1]: Starting LSB: Launch backuppc server...
Jul 25 13:59:32 backuppcserver backuppc[4442]:  * Starting backuppc...
Jul 25 13:59:33 backuppcserver backuppc[4442]:    ...done.
Jul 25 13:59:33 backuppcserver systemd[1]: Started LSB: Launch backuppc server.

Um den BackupPC-Dienst beim Systemstart zu aktivieren, führen Sie den folgenden Befehl aus:

systemctl enable backuppc

Konfigurieren des SSH-Zugriffs auf Client-Computer

Es gibt mehrere Möglichkeiten, wie Server und Clients kommunizieren können, um sich zu authentifizieren und Daten zu übertragen. In diesem Tutorial werden wir das Rsync-Protokoll als Backup-Methode verwenden. Sie müssen also für jeden Client eine kennwortlose SSH-Authentifizierung konfigurieren, um ohne Kennwort auf das Client-System zugreifen zu können.

Schalten Sie auf dem BackupPC-Server den Benutzer auf backuppc um und erzeugen Sie mit dem folgenden Befehl ein SSH-Schlüsselpaar:

su - backuppc
ssh-keygen

Sie sollten die folgende Ausgabe sehen:

Generating public/private rsa key pair.
Enter file in which to save the key (/var/lib/backuppc/.ssh/id_rsa): 
Created directory '/var/lib/backuppc/.ssh'.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /var/lib/backuppc/.ssh/id_rsa
Your public key has been saved in /var/lib/backuppc/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:kFWEjgktEgzWGFelWdY1B0w4WANvPJxM83X79FJA6GE backuppc@ubuntu2004
The key's randomart image is:
+---[RSA 3072]----+
|.==o.o.=*OB=.=o. |
|..+.o *+B+=.E ...|
|   . =o+ O.+ . .o|
|      o.o . .  oo|
|        S     . o|
|               . |
|                 |
|                 |
|                 |
+----[SHA256]-----+

Als nächstes kopieren Sie den generierten SSH-Schlüssel mit folgendem Befehl auf das Client-System:

ssh-copy-id root@backuppc-client-ip

Sie sollten die folgende Ausgabe sehen:

/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/var/lib/backuppc/.ssh/id_rsa.pub"
The authenticity of host 'backuppc-client-ip (backuppc-client-ip)' can't be established.
ECDSA key fingerprint is SHA256:UMxtsszZC/MuEiAnSgV2q5tdckXnEw7MXTVBhtJCeEE.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@45.58.32.159's password: 

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh 'root@backuppc-client-ip'"
and check to make sure that only the key(s) you wanted were added.

Deaktivieren Sie die Weiterleitung

Als Nächstes müssen Sie auch die ssh-Agent-Weiterleitung, die Port-Weiterleitung oder sogar die pty for backuppc-Benutzeranmeldung beim Client von BackupPC aus deaktivieren.

Bearbeiten Sie auf dem Client-System die ssh-autorisierte Schlüsseldatei mit dem folgenden Befehl:

nano .ssh/authorized_keys

Fügen Sie die folgende Zeile vor dem ssh-rsa-Wort ein:

from="your-server-ip",no-agent-forwarding,no-port-forwarding,no-pty

Konfigurieren von Apache für BackupPC

Standardmäßig ist BackupPC nur über den Localhost zugänglich. Sie müssen also die Apache-Konfigurationsdatei bearbeiten, um BackupPC von der externen IP aus zuzulassen. Sie können dies tun, indem Sie die folgende Datei auf dem Serverrechner bearbeiten:

nano /etc/apache2/conf-available/backuppc.conf

Suchen Sie die folgende Zeile:

Require local

Ersetzen Sie es durch die folgende Zeile:

Require all granted

Speichern und schließen Sie die Datei, wenn Sie fertig sind. Starten Sie dann den Apache-Dienst neu, um die Änderungen zu übernehmen:

systemctl restart apache2

Zu diesem Zeitpunkt ist Ihr BackupPC-Server über die externe IP erreichbar.

Zugriff auf die BackupPC-Webschnittstelle

Öffnen Sie nun Ihren Webbrowser und geben Sie die URL http://backuppc-server-ip/backuppc ein. Sie sollten den Anmeldebildschirm von BackupPC sehen:

BackupPC-Anmeldeformular

Geben Sie Ihren BackupPC-Admin-Benutzernamen und Ihr Passwort ein und klicken Sie auf die Schaltfläche Anmelden. Auf dem folgenden Bildschirm sollten Sie das BackupPC-Dashboard sehen:

Status des BackupPC-Servers

Client-Rechner zu BackupPC hinzufügen

Als nächstes müssen Sie den Client-Computer hinzufügen, den Sie mit BackupPC sichern möchten.

Klicken Sie auf dem Dashboard von BackupPC auf der linken Seite auf „Hosts bearbeiten„. Auf dem folgenden Bildschirm sollten Sie den Editor für die Host-Konfiguration sehen:

Client-Computer zu BackupPC hinzufügen

Sie können sehen, dass localhost bereits als Client hinzugefügt ist. Wir müssen jedoch nur den Remote-Client sichern, also löschen Sie den localhost, indem Sie auf die Schaltfläche Löschen klicken. Klicken Sie dann auf die Schaltfläche Hinzufügen, um den Remote-Client-Rechner wie unten dargestellt hinzuzufügen:

Konfigurieren von Hosts

Geben Sie nun Ihre Remote-Client-IP an und klicken Sie auf die Schaltfläche Speichern, um die Konfiguration zu speichern.

Als nächstes müssen Sie eine Methode zur Übertragung der Backup-Daten einrichten. In diesem Tutorial werden wir das Rsync-Protokoll für die Datenübertragung verwenden. Klicken Sie also auf die Registerkarte Xfer, um die Datenbankübertragungsmethode zu konfigurieren. Sie sollten den folgenden Bildschirm sehen:

Datenübertragungs-Einstellungen

Wählen Sie Rsync unter Xfer-Einstellungen und klicken Sie auf die Schaltfläche Speichern, um die Änderungen zu speichern.

Als nächstes müssen Sie den Verzeichnispfad des Client-Systems definieren, das Sie sichern möchten.

Klicken Sie im linken Fensterbereich unter Hosts auf die Dropdown-Schaltfläche und wählen Sie einen Client-Host aus. Sie sollten den folgenden Bildschirm sehen:

Backup-Zusammenfassung

Klicken Sie nun auf Edit Config und klicken Sie auf die Registerkarte Xfer. Sie sollten den folgenden Bildschirm sehen:

Konfigurations-Editor

Aktivieren Sie unter Xfer-Einstellungen das übergeordnete Kästchen unter RsyncShareName und geben Sie den Pfad des Verzeichnisses ein, das Sie sichern möchten. Wenn Sie fertig sind, klicken Sie auf die Schaltfläche Speichern, um die Änderungen zu übernehmen.

Als nächstes müssen Sie den Sicherungszeitplan konfigurieren.

Klicken Sie auf der linken Seite unter Servereinstellungen auf die Schaltfläche Konfiguration bearbeiten und dann auf die Registerkarte Zeitplan. Sie sollten den folgenden Bildschirm sehen:

Sicherung planen

Geben Sie Ihre gewünschten Backup-Einstellungen ein und klicken Sie auf die Schaltfläche Speichern, um die Änderungen zu übernehmen.

Nun müssen Sie ein manuelles Backup auf Ihrem Client durchführen.

Klicken Sie im linken Fensterbereich unter Hosts auf die Dropdown-Schaltfläche und wählen Sie einen Client-Host aus. Sie sollten den folgenden Bildschirm sehen:

Vollständige Sicherung starten

Klicken Sie unter der Backup-Zusammenfassung > Benutzeraktionen auf Vollständiges Backup starten und wenn alles in Ordnung ist. Sie sollten den folgenden Bildschirm sehen:

Starten Sie die Sicherung des Client-PCs

Sicherung gestartet

Klicken Sie im linken Fensterbereich auf die LOG-Datei, um die Backup-Protokolle zu überprüfen. Im folgenden Bildschirm sollten Sie das vollständige Backup-Protokoll sehen:

Sicherungsprotokoll

Um die Backup-Zusammenfassung zu überprüfen, klicken Sie auf den Link Host-Zusammenfassung im linken Fensterbereich unter Server. Sie sollten den folgenden Bildschirm sehen:

Backup-Zusammenfassung

Um eine Liste aller Backup-Dateien anzuzeigen, klicken Sie auf die Host-IP, wie in der obigen Zusammenfassung gezeigt, und klicken Sie dann auf Backups durchsuchen > Backup-Nummer. Im folgenden Bildschirm sollten Sie alle Ihre Backup-Dateien sehen:

Sicherung durchsuchen

Schlussfolgerung

In diesem Tutorial haben Sie gelernt, wie man BackupPC auf einem Ubuntu 20.04 Server konfiguriert. Sie haben auch gelernt, wie man dem BackupPC über einen Webbrowser einen Client-Computer hinzufügt und ein Backup durchführt. Ich hoffe, dass Ihnen dieses Tool dabei hilft, ein zentralisiertes Backup-System einzurichten. Zögern Sie nicht, mich zu fragen, wenn Sie irgendwelche Fragen haben.

Das könnte dich auch interessieren …