Linux olbackup

Installation und Konfiguration

Für die Datensicherung eines Linux-Rechners wird ein passwortlosen ssh Zugriff vom Backup-Server auf den Client-Rechner benötigt. Hier sind die dafür notwendigen Arbeitsschritte beschrieben:

1) Installation der ssh-Software

Ubuntu: sudo apt-get install openssh-server
CentOS: yum install openssh-server

 

2) Einrichten des Backup-Benutzers rzbackup und der Gruppe rzbackup

groupadd -g 667 rzbackup
useradd -c 'RZ Datensicherung' -g 667 -u 667 -m rzbackup

 

3) Öffnen des ssh-Ports in der Firewall

Der ssh-Port 22 kann folgendermaßen in der Firewall Ihres Rechners für den Backup-Service freigeschaltet werden. z.B. für Ubuntu

sudo ufw allow proto tcp from 134.245.2.34/27 to any port 22

 

4) passwortloser ssh-Zugriff

Für das olbackup-Verfahren wird ein passwortloser ssh-Zugriff auf den Client-Rechner benötigt. Dazu wird die "Public key authentication" von ssh genutzt.

Der Public-Key des Backup-Services muss in die Datei ~rzbackup/.ssh/authorized_keys ( alles von 'ssh-rsa' bis '3w== backup.rz.uni-kiel.de' in eine Zeile mit drei Wörtern) kopiert werden. Damit wird dem Backup-Service erlaubt sich auf dem Client-Rechner als User rzbackup ohne Angabe des Passworts einloggen zu können.


Public-Key:

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCYN7G4Ex3piJzUQo/ZnTV0Lx65QAuMd7s8WdiRmsxvw0Ww8+orn71hmRBqxtAsDvDXgyGDtyfVfRrXemyfDTEV1LlO17tHPMSr8NVOcZCZ6/SVjhhUOPLccZuJEJ7J/MXpOgBkNvc4TmYW276bBtWziNtVdPD9FwBglZowAv4xuh3VCBoKXyhMHwp+hGHuDy6R/snEBr8ofZXh0hczpCg4h2YuUa27vmp/KDZ4OnCzmLIbr4+u5V8f2xYEeqdI/GlKKo0rjRAPp0M41CtQvqRIMyMBQv34A85ItRF9zz80TTWutfYe0D8vVGfwcVdOKq46wZ/r6/BLaWKUpK086XF6sMZa9p5jaSzHQ4LBwIo7UeJ1hDHb/M46JOuQAtwjaYxAu0b6YmDxhfFAAROAbpBmtf7DszHppKdAnfZptB6Jh2QL9tlCXSiOXJl9Ik8DMvgVOWAmU+uVJWBVGqug/Id7fgBsiC4QCAeBRo4MtEkFPgnqndb7xahXcoFLUOKXMt7Ja4ZoxpCjKppEx5jszTHBjZctHZC28G8z0q9CMJYEfBLxOkCeupGho2xpmK70pk2qvZE1iOthVgpWjr3AZn8FSy4I7C6/PJFXF8+m5dWKOJKZdxk1s1xJF8IU6etk20P99xynIuuhHTL1E4GOwXX7DY37TgDHyv7fPiVvy1Wy3w== backup.rz.uni-kiel.de
 
vi /home/rzbackup/.ssh/authorized_keys 
# obigen Public-Key einfügen
chown -R rzbackup:rzbackup /home/rzbackup
chmod -R 700               /home/rzbackup/.ssh

 

5a) rsync mit root-Privilegien für rzbackup

Der User rzbackup benötigt das Recht, den rsync-Befehl als root-Benutzer auszuführen zu dürfen ohne dafür ein Passwort eingeben zu müssen. Dazu müssen mit dem Kommando

sudo visudo oder
sudo vi /etc/sudoers

die Zeilen

rzbackup ALL=(root) NOPASSWD:/usr/bin/rsync
Defaults:rzbackup !requiretty

in die Datei /etc/sudoers eingefügt werden. Alternativ kann das rsync-Programm kopiert werden. Anschließend sind die Datei-Attribute anzupassen:

cp /usr/bin/rsync /home/rzbackup/rsync
chown root        /home/rzbackup/rsync
chgrp rzbackup    /home/rzbackup/rsync
chmod 4750        /home/rzbackup/rsync

 

5b) zfs send mit root-Privilegien für rzbackup

Wenn das zu sicherende Filesystem ein ZFS-Filesystem ist, kann die Sicherung auch über "zfs send/receive" statt über rsync erfolgen. Eine Sicherung über "zfs send/receive" benötigt einen Bruchteil der Zeit einer "rsync"-Sicherung. Der User rzbackup benötigt das Recht,  zfs-Befehle als root-Benutzer auszuführen zu dürfen ohne dafür ein Passwort eingeben zu müssen. Dazu müssen mit dem Kommando

sudo visudo oder
sudo vi /etc/sudoers

die Zeilen

Cmnd_Alias ZFS_RZBACKUP = \
  /sbin/zfs snapshot *@RZBACKUP-????-??-??, \
  /sbin/zfs send *@RZBACKUP-????-??-??, \
  /sbin/zfs send -i RZBACKUP-????-??-?? *@RZBACKUP-????-??-??, \
  /sbin/zfs destroy *@RZBACKUP-????-??-??, \
  /sbin/zfs list -t snapshot

rzbackup ALL=(root) NOPASSWD: ZFS_RZBACKUP
Defaults:rzbackup !requiretty

in die Datei /etc/sudoers eingefügt werden.