Quel est le besoin du serveur rsync en mode démon


29

Je ne comprends pas la nécessité d'un serveur rsync en mode démon. Quels sont les avantages si je peux utiliser rsync avec SSH ou telnet?

Réponses:


22

Beaucoup, mais j'en citerai quelques-unes du haut de ma tête.

  1. Que faire si ssh / rsh n'est pas disponible sur le serveur distant ou s'ils sont brisés en termes de configuration ou de règles réseau plus strictes? L'utilisation de rsh / ssh nécessiterait toujours le client (dépend du rôle de l'expéditeur ou du récepteur), le côté distant devrait cependant bifurquer le binaire rsync localement et établir la connexion avec le processus rsync exécuté du côté local. rsh / ssh fournirait simplement un tunnel de connexion; en ce qui concerne rsync, rsync communique avec l'autre processus rsync via le ou les canaux.

  2. Avoir un processus rsync en mode démon ferait du serveur un vrai serveur ressemblant à ftp où certains des systèmes de fichiers peuvent être rendus disponibles via les modules rsync. Tout le reste peut être évité. Supposons que je souhaite rendre disponible uniquement / usr / local et / var pour le téléchargement et refuser toute demande du client rsync pour d'autres téléchargements. Je peux faire preuve de discrétion au niveau de l'hôte ou au niveau du système de fichiers (modules) pour autoriser le téléchargement ou le téléchargement (lecture seule).

  3. Peut contrôler l'accès au niveau hôte / utilisateur, l'authentification, l'autorisation, la journalisation et les modules du système de fichiers (structure) pour le téléchargement / téléchargement spécifiquement via un fichier de configuration. Chaque fois qu'une modification est apportée au fichier de configuration, il rsyncd --daemonn'est pas nécessaire de redémarrer ou HUPped. Peut également contrôler le nombre de clients pouvant se connecter au processus du serveur rsync à la fois. C'est bien, car je ne veux pas que mon processus de serveur rsyncd monopolise complètement l'hôte sur des opérations d'E / S basées sur le processeur ou le disque.

  4. La fonctionnalité chroot peut être mise à disposition via la configuration de rsyncd en mode démon. Je peux utiliser cela comme une fonctionnalité de sécurité assez soignée si je veux éviter que les clients ne se connectent à mon rsyncd pour l'un des fichiers / systèmes de fichiers qui doivent être sécurisés sur l'hôte et ne doivent pas avoir d'accès extérieur.

  5. Je peux carrément nier certaines des options utilisées par le client rsync et ne pas m'occuper du serveur, comme ne pas autoriser l' --deleteoption.

  6. Peut avoir une option pour exécuter certaines commandes / scripts avant et après le processus rsync. Un exemple serait de rapporter et de stocker les statistiques rsync en mode post-transfert.

Ce sont certains d'entre eux, mais je suis sûr que les utilisateurs experts de rsync peuvent apporter plus de lumière à ce sujet.


8
  1. J'ai rencontré un problème en essayant de synchroniser un grand dossier entre une machine Linux et une machine Windows à l'aide de cygwin. Après avoir abandonné le tunnel SSH au profit de l'utilisation du démon rsync, mes problèmes ont disparu.

  2. Le client n'a pas besoin de connaître la disposition du système de fichiers, etc. du serveur qu'il pousse / tire vers / depuis


1
+1 pour # 2. Des situations comme les réseaux miroirs créent de l'incertitude en raison de leur nature très distribuée, il est donc agréable de pouvoir dissocier les décisions locales non pertinentes du fonctionnement du réseau.
Warren Young

@tim quel a été le problème que vous avez rencontré avec Cygwin et rsyncavec SSH?
Daniel Sokolowski

3

Une utilisation courante de rsync consiste à mettre en miroir des archives publiques de fichiers. L'opérateur de la copie principale ne veut pas autoriser l'accès shell distant à l'archive, mais souhaite que les volontaires exécutant les miroirs distants puissent obtenir efficacement une copie complète des archives. Rsync fonctionne extrêmement bien pour créer un miroir car il ne téléchargera que les bits modifiés et s'il y a une légère interruption dans le réseau, il ne téléchargera pas à nouveau un fichier volumineux entier (images cd / dvd).

Le protocole bit torrent peut en fait être un meilleur choix pour cela maintenant, mais rsync a été publié plusieurs années plus tôt.

Même maintenant, de nombreuses archives majeures utilisent encore rsync pour les miroirs.

Voir: http://www.debian.org/mirror/ftpmirror

Le protocole de mise en miroir que nous recommandons est rsync.


Voir aussi zsync pour ce type d'application - c'est comme rsync mais fait tout le travail dur sur le client, pas sur le serveur. Le serveur a juste besoin d'une liste de hachages pré-calculée.
rjmunro

1

Vous pouvez fournir des services rsync à un extranet et autoriser les synchronisations de cette façon sans avoir à exposer ssh.

En mode démon, rsync calculera correctement les sommes de contrôle locales plus rapidement et est donc une meilleure suite si vous attendez plusieurs clients parallèles. Avec la commande autonome, les sommes de contrôle doivent être recalculées pour chaque session.


0

SSH donne des frais généraux en raison, par exemple, de l'utilisation du cryptage. Donc, en théorie, vous devriez obtenir un débit plus élevé avec un démon de serveur rsync.


2
Je ne vais pas vous déprécier pour cela, car oui, il existe un réseau théorique où les frais généraux de chiffrement sont importants. Je pense que vous constaterez que si vous le mesurez, c'est qu'il est insignifiant sur les réseaux réels, sauf peut-être pour la phase de négociation clé initiale. Une fois que les paquets circulent, le temps de chiffrement est avalé par la latence du réseau.
Warren Young

@WarrenYoung Machine pour personnes âgées hébergeant un serveur rsync public sur un gros tuyau.
Gilles 'SO- arrête d'être méchant'

1
@ Gilles - Une machine suffisamment lente pour ne pas pouvoir crypter assez rapidement pour garder le canal plein se heurte probablement d'abord à des problèmes de bande passante du disque. En bout de ligne, j'aimerais voir les mesures. Et avant que quelqu'un ne poste des mesures, assurez-vous d'essayer de doubler la taille du transfert et de vous assurer que tout effet que vous avez mesuré double également. Sinon, vous comptez les négociations clés, que j'accorderai à l'avance prend un temps mesurable.
Warren Young

La parallélisation de rsync serait une meilleure option avec parallèle GNU dans ce cas.
Nikhil Mulley
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.