Good to Know Database

CentOS 5: Rsync


1. Einleitung

Rsync dient zur Synchronisation von einzelnen Dateien und kompletten Verzeichnissen über ein Netzwerk. Der Vorteil von Rsync ist, dass nicht alle Dateien komplett übertragen werden, sondern nur die geänderten Teile von bestehenden Dateien und neu erstellte Dateien. Ich möchte hier kurz beschreiben wie Sie einen Rsync-Server einrichten können.

2. Installation und Konfiguration

Bevor wir mit der Konfiguration beginnen können, müssen Sie das Paket rsync installieren.

[root@centos5 ~]# yum install rsync

Nach der Installation erstellen Sie die Konfigurationsdatei um die benötigten Einstellungen vorzunehmen.

[root@centos5 ~]# vi /etc/rsyncd.conf

Kommen wir zuerst zu den Optionen für den Benutzer und die Gruppe als welche man später auf den Rsync-Server zugreifen wird.

uid = nobody
gid = users

Mit der Option uid können Sie einen existierenden Benutzernamen einstellen, der dann bei einem Zugriff über Rsync verwendet wird. Die Option gid gibt die Gruppe an welche ebenfalls auf dem System vorhanden sein muss. Wenn Sie die Option uid nicht angeben (default) wird der User nobody verwendet.

Mit der nächsten Option können Sie einstellen ob die Clients Dateien hoch laden dürfen oder nicht. Standardmäßig steht diese Option auf true.

read only = true

Das Gegenteil zu read only ist write only. Diese Option wird in dieser Beispielkonfiguration nicht aufgelistet, da sie dadurch auf false gesetzt wird. Wollen Sie keine Downloads zulassen, müssen Sie die Option write only auf true setzen.

use chroot = true

Die Option use chroot sollten Sie auf true setzen. Dadurch wird verhindert, dass sich eventuell ein Benutzer Zugang zu anderen Verzeichnissen außerhalb der Rsync-Freigaben verschaffen kann.

Die nächsten Optionen sind zur Konfiguration des Logfiles. Sie können diese einfach übernehmen.

transfer logging = true
log format = %h %o %f %l %b
log file = /var/log/rsyncd.log

Jetzt kommen wir zur Zugriffskontrolle auf den Rsync-Server. Sollen zum Beispiel nur Rechner mit der IP-Adresse 192.168.10.x Zugriff haben, müssen Sie dies wie folgt angeben.

hosts allow = 192.168.10.0/24

Wenn Sie noch eine Willkommensnachricht einstellen wollen die der Rsync-Benutzer nach dem Anmelden sehen wird, müssen Sie auf Ihrem System eine Textdatei mit der Nachricht erstellen und diese mit der Option motd file in der Konfigurationsdatei eintragen.

motd file = /data/rsync/welcome.txt

Soviel zum allgemeinen Teil, kommen wir nun zur Freigabe der Verzeichnisse. Ich will Ihnen hier zeigen wie Sie das Verzeichnis /data/rsync mit Logindaten freigeben können.

Zuerst müssen Sie einen Namen für die Freigabe angeben. Dieser muss zwischen zwei eckigen Klammern stehen.

[main]

Danach wird der Pfad zum Verzeichnis angegeben welches Sie freigeben wollen.

  path = /data/rsync

Damit die Benutzer wissen was sich in dem Verzeichnis befindet können Sie einen Kommentar für die Freigabe hinterlegen.

  comment = Hauptverzeichins fuer rsync

Mit der Option auth users werden die Benutzer eingetragen welche Zugriff auf diese Freigabe bekommen sollen. Wollen Sie keine Benutzerbeschränkung einrichten, ignorieren Sie die zwei folgenden Optionen.

  auth users = user1, user2, user3

Die nächste Option enthält den Pfad zur rsyncd.secrets in welcher die Benutzernamen und die dazugehörigen Passwörter gespeichert werden.

  secrets file = /etc/rsyncd.secrets

Da Sie die angegebenen Benutzer nicht im System einrichten müssen, müssen Sie für jeden Benutzer einen Eintrag in der rsyncd.secrets anlegen. Dazu speichern Sie jetzt die rsyncd.conf und öffnen die rsyncd.secrets.

[root@centos5 ~]# vi /etc/rsyncd.secrets

In diese Datei müssen Sie jeden Benutzer mit Passwort eintragen der auf die Rsync-Freigabe zugreifen darf.

user1:password1
user2:password2
user3:password3

Nachdem Sie alle Benutzer eingetragen haben, speichern Sie die Datei ab und öffnen die Datei /etc/xinetd.d/rsync.

[root@centos5 ~]# vi /etc/xinetd.d/rsync

Entfernen Sie hier die folgende Zeile damit der Rsync-Daemon gestartet wird.

disable = yes

Nachdem Sie die Zeile entfernt und die Datei gespeichert haben müssen Sie den xinetd neu starten.

[root@centos5 ~]# service xinetd restart

Sollten Sie die Firewall aktiviert haben, müssen Sie noch den TCP-Port 873 in der Firewall öffnen. Dazu rufen Sie die Firewall-Konfiguration wie folgt auf.

[root@centos5 ~]# system-config-securitylevel-tui

Unter Anpassen tragen Sie als weiteren geöffneten Port rsync:tcp ein. Nachdem Sie die Einstellungen gespeichert haben, können Sie zum nächsten Abschnitt übergehen.

Sollten Sie noch weitere Optionen oder nähere Informationen zu den beschriebenen Optionen benötigen, können Sie diese in der Manpage zur rsyncd.conf nachlesen.

[root@centos5 ~]# man rsyncd.conf

3. Verbindung zum Rsync-Server aufbauen

Um eine Verbindung zum Rsync-Server aufzubauen benötigen Sie den Befehl rsync. Ich möchte nun ein paar Kombinationen mit diesem Befehl für verschiedene Anwendungen vorstellen.

Mit dem folgenden Befehl sehen Sie alle Freigaben und den dazugehörigen Kommentar eines Rsync-Servers.

[root@centos5 ~]# rsync 192.168.10.1::

Um den Inhalt einer Freigabe anzuzeigen müssen Sie die folgende Befehlskombination verwenden.

[root@centos5 ~]# rsync 192.168.10.1::main

Um den Inhalt von Unterordnern einzusehen rufen Sie den folgenden Befehl auf.

[root@centos5 ~]# rsync 192.168.10.1::main/subfolder/

Sollten Sie Ihre Freigabe nur bestimmten Benutzern zur Verfügung stellen, müssen Sie zusätzlich dem Befehl den Benutzernamen übergeben.

[root@centos5 ~]# rsync user1@192.168.10.1::main


Dieser Eintrag wurde am 30.07.2007 erstellt und zuletzt am 19.04.2009 bearbeitet.

Direkter Link zu dieser Seite: http://www.gtkdb.de/index_33_585.html

[ Zur Startseite ]   [ Zur Kategorie ]


Valid XHTML 1.0 Transitional Valid CSS Valid Atom 1.0

© 2004-2018 by Georg Kainzbauer