====== Installation d'un serveur de synchronisation avec RSYNC ======
**rsync** (pour remote synchronization ou synchronisation à distance), est un logiciel de synchronisation de fichiers. Il est fréquemment utilisé pour mettre en place des systèmes de sauvegarde distante.
**rsync** travaille de manière unidirectionnelle c'est-à-dire qu'il synchronise, copie ou actualise les données d'une source (locale ou distante) vers une destination (locale ou distante) en ne transférant que les octets des fichiers qui ont été modifiés.
Ici, nous allons installer un serveur de synchronisation de sauvegarde distante.
Cette installation a été testé sur Debian 8
===== Installation et configuration de RSYNC =====
Normalement, **RSYNC** est installé d'origine, si ce n'est pas le cas vous pouvez l'installer avec la ligne suivante :
apt-get install rsync
Ensuite, on autorise le lancement de RSYNC avec la commande suivante :
sed -i -e 's/^[#]*\(RSYNC_ENABLE=\).*/\1true/' '/etc/default/rsync'
On ajoute un utilisateur //rsync// et un groupe //rsync//, puis on ajoute l'utilisateur //rsync// au groupe //rsync//.
useradd rsync
passwd rsync
groupadd rsync
gpasswd -a rsync rsync
Maintenant nous allons créer le répertoire// /home/rsync //avec les droits //755// pour l’utilisateur et groupe //rsync//.
mkdir /home/rsync
chown -R rsync:rsync /home/rsync
chmod -R 755 /home/rsync
Il ne reste plus qu'à créer un fichier de configuration pour le serveur //rsync// à l’emplacement// /etc/rsyncd.conf // avec cette ligne de commande :
nano /etc/rsyncd.conf
puis on ajoute les lignes suivantes au début du fichier :
uid = rsync
gid = rsync
use chroot = yes
syslog facility = local5
Vous pouvez avoir plus d'information sur le contenu de /etc/rsyncd.conf avec la commande man rsyncd.conf
Maintenant, passons à la configuration des répertoires, nous allons vous montrer plusieurs exemples, à vous de l'adapter en fonction de vos besoins.
==== Cas N°1 - Mono-Utilisateur =====
On ajoute le code suivant à la fin du fichier// /etc/rsyncd.conf //:
[share_rsync]
path = /home/rsync/share
comment = Synchro du répertoire share
read only = false
==== Cas N°2 - Limiter l'accès à une ou plusieurs IPs ====
Ici nous allons limiter l'accès du **serveur RSYNC** qu'à quelques adresses IPs. Celles-ci ne pourront que lire le contenu du répertoire.
On ajoute le code suivant à la fin du fichier// /etc/rsyncd.conf //:
[share_serveur_ovh]
read only = true
path = /home/rsync/serveur-ovh
comment = Sauvegarde du serveur IVH
hosts allow = 5.37.24.12 191.11.22.0/24
Ici on autorise l'adresse IPv4 5.37.12.191 ou le sous-réseau 191.11.22.0/24 à venir se connecter sur le serveur de synchronisation pour venir lire le contenu.
==== Cas N°3 - Multi-utilisateurs avec mot de passe ====
On ajoute le code suivant à la fin du fichier// /etc/rsyncd.conf //:
[share_serveur_ovh_rw]
path = /home/rsync/serveur-ovh
comment = Synchronisation en mode écriture
read only = no
auth users = bernard, annick
secrets file = /etc/rsyncd.secrets
Puis on créé le fichier// /etc/rsyncd.secrets //avec la commande :
nano /etc/rsyncd.secrets
On ajoute le code suivant au fichier// /etc/rsyncd.secrets //:
bernard:zigouille25
annickick:123456789
josephine:tonton-flingueur
===== Lancement du serveur de synchronisation RSYNC =====
Et voilà, une fois votre configuration OK, vous pouvez lancer manuellement votre serveur de synchronisation RSYNC avec la commande suivante
service rsync start
Si tout est OK, vous devrez avoir un message du genre //[ ok ] Starting rsync daemon rsync start//. Vous pouvez aussi vérifier le contenu de //syslog// avec le code suivant
tail -n 25 /var/log/syslog
Vous devriez retrouver dans la liste la ligne suivante (j'ai remplacé le contenu aléatoire par //blabla//:
blabla .... rsyncd[blabla]: rsyncd version 3.0.9 starting, listenig on port 873
Pour être sûr que votre serveur de synchronisation démarre au prochain lancement de votre serveur, vous pouvez utiliser la commande suivante :
update-rc.d rsync enable
===== Notes de version =====
* [23/11/2017] : Création de l'article
* [30/11/2017] : Fin de l'article
===== Auteurs et sources =====
* Auteur : [[:user:montuy337513]]
* Source : [[http://www.delafond.org/traducmanfr/man/man5/rsyncd.conf.5.html|rsyncd.conf]]
===== Navigation =====
* [[:accueil|Accueil]]
* [[:serveur-debian-securite]]
* [[:serveur-debian-general]]
* [[:serveur-debian-automatisation]]
* [[:serveur-debian-file]]
* [[:serveur-debian-log]]
* [[:serveur-debian-user-groupe]]
* [[:serveur-debian-apache2]]
* [[:serveur-debian-postfix]]
* [[:serveur-debian-mysql]]
* [[:serveur-debian-divers]]