2010-11-02 21 views
1

J'utilise rsync pour mettre en miroir un serveur distant. Il est dit que l'utilisation d'un mot de passe root avec rsync est dangereuse, j'ai donc créé un utilisateur rsync spécial. Il semble fonctionner correctement, mais ne peut pas copier certains fichiers en raison des autorisations de fichier. Je veux mettre en miroir des répertoires entiers pour la sauvegarde, et je suppose que cela ne peut pas être fait sans utiliser le mot de passe root, je veux dire si root ne donne pas d'autorisations sur des fichiers spécifiques, aucun autre compte ne peut les lire. Y a-t-il d'autres solutions et pourquoi ne devrais-je pas utiliser le compte root dans rsync (je fais seulement une copie en sens unique, cela n'affecte pas la source).Comment mettre complètement en miroir un utilisateur du serveur rsync, sans utiliser le mot de passe root?

Répondre

2

Si vous voulez que le serveur entier, alors oui, vous avez besoin racine. Cependant, au lieu de "tirer" (où vous avez un cron sur votre serveur local qui fait "rsync remote local"), pouvez-vous le faire par "push" (où vous avez un cron sur le serveur distant qui fait "rsync local remote "?) Dans ce cas, vous n'aurez pas besoin de configurer le serveur distant pour accepter les connexions racines entrantes.

+0

merci, je pense que pousser est la bonne solution. Qui est également sécurisé pour le serveur distant. – bkilinc

1

Une option consiste à utiliser une connexion ssh en tant que root, mais en utilisant l'authentification ssh pubkey au lieu d'un mot de passe. En général, les pubkeys sont ce qu'il vous faut, si vous voulez automatiser cela plus tard.

Vous aurez envie de regarder dans le cadre PermitRootLoginsshd_config, en particulier le réglage without-password ou, si vous voulez obtenir, le réglage forced-commands-only encore plus sophistiqué et sécurisé (probablement).

Quelques liens utiles: