Raspberry Pi: Unterschied zwischen den Versionen

Aus Wiki Freifunk-3Ländereck
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Zeile 2: Zeile 2:
==Backup==
==Backup==


Damit die auf dem Raspberry Pi hinterlegten Daten auch sicher sind, empfiehlt sich ein regelmäßiges, möglichst automatisiertes Backup. Lösungen gibt es hierzu viele. Eine einfache, jedoch recht komfortable Lösung bietet BackupPC. Neben diversen Verfahren zur eigentlichen Erstellung der Backups bietet es eine einfache Web-Oberfläche, welche einen bequemen Zugriff aus der Ferne ermöglicht. Zum Glück ist backuppc teil der Debian-Distribution und lässt sich mittels apt installieren:


apt-get install backuppc
apt-get install backuppc


Im Zuge der Installation wird automatisch der Benutzer "backuppc" angelegt und ein zufälliges Passwort generiert.
Im Zuge der Installation wird automatisch der Benutzer "backuppc" angelegt und sowie ein zufälliges Passwort generiert. Diese sollte man sich notieren. Prinzipiell werden Passwörter in der Datei ''/etc/backuppc/htpasswd" verwaltet. Das Passwort für den Benutzer ''backuppc'' lässt sich mit dem folgenden Befehl ändern:
Die Konfiguration für den Apache2 Web-Server wird im Verzeichnis "/etc/apache2/conf.d" abgelegt. Benutzerkonten lassen sich in der Datei "/etc/backuppc/htpasswd" anlegen.


 
  sudo htpasswd /etc/backuppc/htpasswd backuppc
Um sichere Verbindungen zu erzwingen, aktivieren wir die Option "SSLRequireSSL" in der Datei "/etc/apache2/conf.d":
Sofern man secure HTTP noch nicht aktiviert hat, sollte man dies jetzt nachholen.
Die Konfiguration für den Apache2 Web-Server ist in der Datei ''/etc/apache2/conf.d/backuppc.conf'' abgelegt. Um sichere Verbindungen via SSL zu erzwingen, aktivieren wir dort die Option "SSLRequireSSL":  


  # Uncomment the line below to ensure that nobody can sniff importanti
  # Uncomment the line below to ensure that nobody can sniff importanti
Zeile 18: Zeile 18:
  SSLRequireSSL
  SSLRequireSSL


SSL aktivieren
Sofern man SSL für den Apache2 noch nicht aktiviert hat, sollte man dies jetzt nachholen:


  sudo a2enmod ssl
  sudo a2enmod ssl


Im Anschluss starten wir den Apache2 neu
Für den Backup-Betrieb genügen die vorinstallieren nichtöffentlichen Zertifikate. Im Anschluss starten wir den Apache2 neu:


  service apache2 restart
  service apache2 restart


Im Anschluss ... aufrufen unter
Sofern der Neustart erfolgreich war, lässt sich die Weboberfläche von BackupPC ab sofort unter dem folgenden URL aufrufen:


   https://box-1719.ff3l/backuppc/
   https://<host>/backuppc/


Anmeldung...
Für die Anmeldung benutzen wir den zuvor notierten Benutzernamen und das zugehörige Passwort.


Der Rechner "localhost" ist bereits vorkonfiguriert. Wir klicken auf "Host Summary" und dort den auf den Link "localhost". Im Anschluss können wir in einem Menu links oben durch Klick auf "Edit Config" die Voreinstellunen anpassen.
Der Rechner "localhost" ist in BackupPC bereits vorkonfiguriert. Wir klicken auf "Host Summary" und danach auf den Link "localhost". Im Anschluss wählen wir im Menü links oben die Option "Edit Config".
Im Reiter "Xfer" im Hauptfenster wählen wir als "Xfer Method" "rsync". Der Rest der Einstellungen kann in der Regel unverändert bleiben.  
Im Reiter "Xfer" im Hauptfenster wählen wir danach als "Xfer Method" die Option "rsync". Der Rest der Einstellungen kann in der Regel unverändert bleiben.  
 
Sollte rsync auf dem Rechner noch nicht isntalliert sein, so holen wir dies in der Konsole mittels apt nach:


Sollte rsync auf dem Rechner noch nicht isntalliert sein, so holen wir dies in der Konsole mit dem folgenden Befehl nach:
   sudo apt-get install rsync
   sudo apt-get install rsync


Backuppc läuft aus Sicherheitsgründen unter dem Linux-Benutzer "backuppc". Der Zugriff auf die zu sichernden Rechner erfolgt via SSH. Dies gilt auch, wenn der lokale Rechner gesichert werden soll. Damit sich backuppc via SSH als Benutzer "root" anmelden kann, aktivieren wir die entsprechende Option in der Datei "/etc/ssh/sshd_config":
Backuppc läuft aus Sicherheitsgründen unter dem Linux-Benutzer "backuppc". Der Zugriff auf die zu sichernden Rechner erfolgt via SSH (zumindest bei der von uns gewählten Sicherungsmethode). Dies gilt auch, wenn der lokale Rechner gesichert werden soll. Damit sich BackupPC via SSH als Benutzer"root" anmelden kann, aktivieren wir die entsprechende Option in der Datei "/etc/ssh/sshd_config":


   PermitRootLogin yes
   PermitRootLogin yes


Weiterhin deaktivieren wir die Authentifizierung mittels Passwörter, welche im Klartext übertragen werden:  
Weiterhin deaktivieren wir die Authentifizierung mittels unverschlüsselter Passwörter:  


  # Change to no to disable tunnelled clear text passwords
  # Change to no to disable tunnelled clear text passwords
  #PasswordAuthentication yes
  #PasswordAuthentication yes


Bevor wir SSH neu starten, sollten wir unbedingt sicherstellen, dass wir uns mittels eines registrierten Schlüssels authentifizieren können! Ansonsten sperren wir uns mit dieser Maßnahme selbst vom Rechner aus
Sofern wir uns via SSH mit dem Raspberry Pi verbunden haben, sollten wir unbedingt sicherstellen, dass die Authentifizierung mittels eines registrierten Schlüssels möglich ist! Ansonsten sperren wir uns mit dieser Maßnahme selbst vom Rechner aus. Im Anschluss startend wir den SSH-Dämonen neu:


  sudo service ssh restart
  sudo service ssh restart


Benutzer backuppc werden:
Als nächstes werden wir zum Benutzer backuppc:


   sudo su backuppc
   sudo su backuppc


SSH Schlüssel generieren
In dieser Identität generieren wir ein SSH Schlüsselpaar:


   ssh-keygen -t rsa -b 4096 -C "<email@example.com>"
   ssh-keygen -t rsa -b 4096 -C "<email@example.com>"


Das Schlüsselpaar wird standardmäßig im Heimatverzeichnis im Versteckten Unterverzeichnis ".ssh" abgelegt. Der öffentliche Schlüssel ist in der Datei "id_rsa.pub" hinterlegt.
Das Schlüsselpaar wird standardmäßig im Heimatverzeichnis im Versteckten Unterverzeichnis ".ssh" abgelegt. Der öffentliche Schlüssel ist in der Datei "id_rsa.pub" gespeichert. Um diesen Schlüssel für den Zugang als Benutzer root zu registrieren führen wir die folgende Befehlszeile aus:


  ssh-copy-id -i ~/.ssh/id_rsa.pub root@localhost
  ssh-copy-id -i ~/.ssh/id_rsa.pub root@localhost


Passowrt eingeben.
Auf die Aufforderung hin geben wir das Passowrt des Benutzers root ein. Ab sofort sollte die Verbindung mittels SSH als Benutzer root auch ohne Passworteingabe möglich sein:
Im Anschluss ... ohne Passworteingabe möglich sein


   ssh root@localhost
   ssh root@localhost
   exit
   exit


Wir werden wieder zu unserem regulären Benutzer
Nachdem dies erledigt ist, werden wieder zu unserem regulären Benutzer:E


   exit
   exit


Die /var/lib/backuppc . Verschieben und verlinken!
Jetzt sind wir fast soweit, dass wir unser erstes Backup durchführen können. Backups werden im Verzeichnis ''/var/lib/backuppc'' gespeicher. Dieses dient dem Linux-Benutzer backuppc gleichzeitig als Heimverzeichnis. Da wir Backups aus Sicherheitsgründen nicht auf dem gleichen Speichermedium ablegen sollten, empfiehlt sich die Einrichtung eines USB-Speichers. Dieser muss unbedingt mit einem Datei-System formattiert sein, welches Linux-Benutzerrechte unterstützt (z.B. ext4fs). Es wird im Folgenden davon ausgegangen, dass der Speicher an der Stelle /mnt/<usb-storage> in das Dateisystem eingebunden ist.
Zuerst stoppen wir den Hintergrundprozess von BackupPC:
 
sudo service backuppc stop
 
Im zweiten Schritt verschieben wir das existierende Heimverzeichnis auf den externen Speicher:
 
sudo mv /var/lib/backuppc /mnt/<usb-storage>
 
Im Anschluss erstell wir an der ursprünglichen Stelle einen symbolischen Link auf den neuen Speicherort:
 
sudo ln -s /mnt/<stick>/backuppc /var/lib/backuppc
 
Zuletzt aktivieren wir wieder den BackupPC-Hintergrundprozess:
 
sudo service backuppc start


Damit sind wir soweit, dass wir unser erstes Backup starten können. Hierzu wechseln wir wieder in die Web-Oberfläche. Unter "User Actions" hat man durch Klick auf die Schaltfläche "Start Full Backup" die Möglichkeit, ein erstes, vollständiges Backup manuell zu starten.
Damit sind wir soweit, dass wir unser erstes Backup starten können. Hierzu wechseln wir wieder in die Web-Oberfläche. In der Ansicht für den Rechner "localhost" hat man unter "User Actions" durch Klick auf die Schaltfläche "Start Full Backup" die Möglichkeit, ein erstes, vollständiges Backup manuell zu starten. Danach heißt es Geduld haben. Sollte es zu einem Fehler kommen, empfiehlt sich ein Studium der Log-Dateien. In Zukunft sollten die Backups automatisch erstellt werden. Wie sich die Intervalle anpassen lassen, entnimmt man am besten der Dokumentation.
Danach heißt es Geduld haben. Sollte es zu einem Fehler kommen, empfiehlt sich ein Studium der Log-Dateien.

Version vom 17. März 2015, 20:33 Uhr

Backup

Damit die auf dem Raspberry Pi hinterlegten Daten auch sicher sind, empfiehlt sich ein regelmäßiges, möglichst automatisiertes Backup. Lösungen gibt es hierzu viele. Eine einfache, jedoch recht komfortable Lösung bietet BackupPC. Neben diversen Verfahren zur eigentlichen Erstellung der Backups bietet es eine einfache Web-Oberfläche, welche einen bequemen Zugriff aus der Ferne ermöglicht. Zum Glück ist backuppc teil der Debian-Distribution und lässt sich mittels apt installieren:

apt-get install backuppc

Im Zuge der Installation wird automatisch der Benutzer "backuppc" angelegt und sowie ein zufälliges Passwort generiert. Diese sollte man sich notieren. Prinzipiell werden Passwörter in der Datei /etc/backuppc/htpasswd" verwaltet. Das Passwort für den Benutzer backuppc lässt sich mit dem folgenden Befehl ändern:

 sudo htpasswd /etc/backuppc/htpasswd backuppc

Die Konfiguration für den Apache2 Web-Server ist in der Datei /etc/apache2/conf.d/backuppc.conf abgelegt. Um sichere Verbindungen via SSL zu erzwingen, aktivieren wir dort die Option "SSLRequireSSL":

# Uncomment the line below to ensure that nobody can sniff importanti
# info from network traffic during editing of the BackupPC config or
# when browsing/restoring backups.
# Requires that you have your webserver set up for SSL (https) access.
SSLRequireSSL

Sofern man SSL für den Apache2 noch nicht aktiviert hat, sollte man dies jetzt nachholen:

sudo a2enmod ssl

Für den Backup-Betrieb genügen die vorinstallieren nichtöffentlichen Zertifikate. Im Anschluss starten wir den Apache2 neu:

service apache2 restart

Sofern der Neustart erfolgreich war, lässt sich die Weboberfläche von BackupPC ab sofort unter dem folgenden URL aufrufen:

 https://<host>/backuppc/

Für die Anmeldung benutzen wir den zuvor notierten Benutzernamen und das zugehörige Passwort.

Der Rechner "localhost" ist in BackupPC bereits vorkonfiguriert. Wir klicken auf "Host Summary" und danach auf den Link "localhost". Im Anschluss wählen wir im Menü links oben die Option "Edit Config". Im Reiter "Xfer" im Hauptfenster wählen wir danach als "Xfer Method" die Option "rsync". Der Rest der Einstellungen kann in der Regel unverändert bleiben.

Sollte rsync auf dem Rechner noch nicht isntalliert sein, so holen wir dies in der Konsole mittels apt nach:

 sudo apt-get install rsync

Backuppc läuft aus Sicherheitsgründen unter dem Linux-Benutzer "backuppc". Der Zugriff auf die zu sichernden Rechner erfolgt via SSH (zumindest bei der von uns gewählten Sicherungsmethode). Dies gilt auch, wenn der lokale Rechner gesichert werden soll. Damit sich BackupPC via SSH als Benutzer"root" anmelden kann, aktivieren wir die entsprechende Option in der Datei "/etc/ssh/sshd_config":

 PermitRootLogin yes

Weiterhin deaktivieren wir die Authentifizierung mittels unverschlüsselter Passwörter:

# Change to no to disable tunnelled clear text passwords
#PasswordAuthentication yes

Sofern wir uns via SSH mit dem Raspberry Pi verbunden haben, sollten wir unbedingt sicherstellen, dass die Authentifizierung mittels eines registrierten Schlüssels möglich ist! Ansonsten sperren wir uns mit dieser Maßnahme selbst vom Rechner aus. Im Anschluss startend wir den SSH-Dämonen neu:

sudo service ssh restart

Als nächstes werden wir zum Benutzer backuppc:

 sudo su backuppc

In dieser Identität generieren wir ein SSH Schlüsselpaar:

 ssh-keygen -t rsa -b 4096 -C "<email@example.com>"

Das Schlüsselpaar wird standardmäßig im Heimatverzeichnis im Versteckten Unterverzeichnis ".ssh" abgelegt. Der öffentliche Schlüssel ist in der Datei "id_rsa.pub" gespeichert. Um diesen Schlüssel für den Zugang als Benutzer root zu registrieren führen wir die folgende Befehlszeile aus:

ssh-copy-id -i ~/.ssh/id_rsa.pub root@localhost

Auf die Aufforderung hin geben wir das Passowrt des Benutzers root ein. Ab sofort sollte die Verbindung mittels SSH als Benutzer root auch ohne Passworteingabe möglich sein:

 ssh root@localhost
 exit

Nachdem dies erledigt ist, werden wieder zu unserem regulären Benutzer:E

 exit

Jetzt sind wir fast soweit, dass wir unser erstes Backup durchführen können. Backups werden im Verzeichnis /var/lib/backuppc gespeicher. Dieses dient dem Linux-Benutzer backuppc gleichzeitig als Heimverzeichnis. Da wir Backups aus Sicherheitsgründen nicht auf dem gleichen Speichermedium ablegen sollten, empfiehlt sich die Einrichtung eines USB-Speichers. Dieser muss unbedingt mit einem Datei-System formattiert sein, welches Linux-Benutzerrechte unterstützt (z.B. ext4fs). Es wird im Folgenden davon ausgegangen, dass der Speicher an der Stelle /mnt/<usb-storage> in das Dateisystem eingebunden ist. Zuerst stoppen wir den Hintergrundprozess von BackupPC:

sudo service backuppc stop

Im zweiten Schritt verschieben wir das existierende Heimverzeichnis auf den externen Speicher:

sudo mv /var/lib/backuppc /mnt/<usb-storage> 

Im Anschluss erstell wir an der ursprünglichen Stelle einen symbolischen Link auf den neuen Speicherort:

sudo ln -s /mnt/<stick>/backuppc /var/lib/backuppc

Zuletzt aktivieren wir wieder den BackupPC-Hintergrundprozess:

sudo service backuppc start

Damit sind wir soweit, dass wir unser erstes Backup starten können. Hierzu wechseln wir wieder in die Web-Oberfläche. In der Ansicht für den Rechner "localhost" hat man unter "User Actions" durch Klick auf die Schaltfläche "Start Full Backup" die Möglichkeit, ein erstes, vollständiges Backup manuell zu starten. Danach heißt es Geduld haben. Sollte es zu einem Fehler kommen, empfiehlt sich ein Studium der Log-Dateien. In Zukunft sollten die Backups automatisch erstellt werden. Wie sich die Intervalle anpassen lassen, entnimmt man am besten der Dokumentation.