|
Voir le sujet précédent :: Voir le sujet suivant
|
| Auteur |
Message |
| |
|
sdamain WRInaute accro

Inscrit le: 14 Oct 2003 Messages: 1264 Localisation: Arlon, Belgique
|
Posté le : Mer Avr 23, 2008 13:12 Sujet du message: RSYNC en SSH et en CRON |
|
|
Bonjour à tous,
Dans le cadre de la migration d'un site sur un nouveau serveur dédié (chez Sivit), je souhaite utiliser Rsync pour synchroniser certains folders (contenant des fichiers uploadés par les utilisateurs du site) le temps que la propagation DNS du NDD soit terminée.
Je souhaite donc lancer une commande en CRON afin de synchroniser ces fichiers toutes les x minutes.
Je dois donc lancer la commande suivante depuis le serveur1 :
| Code: |
| rsync -avz /home/web/.../ root@serveur2:/home/web/... |
Problème : le mot de passe root du serveur2 m'est demandé.
J'ai d'abord essayé avec "-password-file" mais il semblerait que cette option ne fonctionne qu'avec le deamon de RSYNC.
Après quelques recherches sur Google, j'ai trouvé quelques procédures qui expliquent qu'il faut utiliser des clés pour pouvoir se passer du mot de passe.
J'ai donc fait ceci :
1. Connexion en SSH sur serveur2 + génération des clés pub et priv dans le répertoire /root/.ssh
2. Copie du contenu de la clé publique (id_rsa.pub) dans le fichier /root/.ssh/known_hosts du serveur1
Si je fais un simple teste de connexion
depuis serveur1, il me demande toujours d'entrer le mot de passe root de serveur2.
Je pense avoir oublié une étape, je n'ai probablement pas très bien saisi le principe.
Quelqu'un pourrait-il m'aider?
Merci. |
|
| |
|
 |
jcaron WRInaute passionné

Inscrit le: 13 Fév 2004 Messages: 523 Localisation: Paris
|
Posté le : Mer Avr 23, 2008 13:39 Sujet du message: Re: RSYNC en SSH et en CRON |
|
|
| sdamain a écrit: |
je souhaite utiliser Rsync pour synchroniser certains folders (contenant des fichiers uploadés par les utilisateurs du site)
[...]
| Code: |
| rsync -avz /home/web/.../ root@serveur2:/home/web/... |
Problème : le mot de passe root du serveur2 m'est demandé.
|
Question idiote: tous ces fichiers appartiennent à un seul et même utilisateur (au sens Unix), non? Pourquoi te connecter en root?
Jacques. |
|
| |
|
 |
sdamain WRInaute accro

Inscrit le: 14 Oct 2003 Messages: 1264 Localisation: Arlon, Belgique
|
Posté le : Mer Avr 23, 2008 13:44 Sujet du message: RSYNC en SSH et en CRON |
|
|
Oui ces fichiers appartiennent bien à un seul user système.
Je me connecte en Root pour avoir les droits nécessaires.
De toute façon, je pense que même si je me connecte avec un autre user, le problème restera le même, je devrai fournir un mot de passe pour pouvoir me connecter au serveur distant. Non? |
|
| |
|
 |
jcaron WRInaute passionné

Inscrit le: 13 Fév 2004 Messages: 523 Localisation: Paris
|
Posté le : Mer Avr 23, 2008 14:15 Sujet du message: RSYNC en SSH et en CRON |
|
|
| sdamain a écrit: |
Oui ces fichiers appartiennent bien à un seul user système.
Je me connecte en Root pour avoir les droits nécessaires.
|
Il serait plus logique de se connecter comme l'utilisateur correspondant.
| sdamain a écrit: |
| De toute façon, je pense que même si je me connecte avec un autre user, le problème restera le même, je devrai fournir un mot de passe pour pouvoir me connecter au serveur distant. Non? |
Non, pas forcément, pour des raisons de sécurité le compte root est généralement traîté de façon différente, dans certains cas il est en fait impossible de se connecter directement en root (même si tu n'auras pas forcément de message explicite à ce sujet).
Le plus simple est d'utiliser le même user des deux côtés et ssh avec des clefs. Tu génères une paire de clefs (avec ssh-keygen), tu copies la clef publique (.ssh/id_rsa.pub) dans le fichier .ssh/authorized_keys de la machine de destination, et hop.
Jacques. |
|
| |
|
 |
sdamain WRInaute accro

Inscrit le: 14 Oct 2003 Messages: 1264 Localisation: Arlon, Belgique
|
Posté le : Mer Avr 23, 2008 14:18 Sujet du message: RSYNC en SSH et en CRON |
|
|
| jcaron a écrit: |
Le plus simple est d'utiliser le même user des deux côtés et ssh avec des clefs. Tu génères une paire de clefs (avec ssh-keygen), tu copies la clef publique (.ssh/id_rsa.pub) dans le fichier .ssh/authorized_keys de la machine de destination, et hop. |
Ok, je vais essayer cela.
Juste une question : quel(s) droit(s) dois-je donner à ce user (quel(s) groupe(s))?
Merci. |
|
| |
|
 |
jcaron WRInaute passionné

Inscrit le: 13 Fév 2004 Messages: 523 Localisation: Paris
|
Posté le : Mer Avr 23, 2008 14:46 Sujet du message: RSYNC en SSH et en CRON |
|
|
| sdamain a écrit: |
| Juste une question : quel(s) droit(s) dois-je donner à ce user (quel(s) groupe(s))? |
Si tous les fichiers lui appartiennent, il n'a besoin d'être dans aucun groupe particulier... Tu devrais lui donner les mêmes droits que sur la machine initiale...
Jacques. |
|
| |
|
 |
Julia41 WRInaute impliqué

Inscrit le: 31 Aoû 2007 Messages: 434 Localisation: Oléron
|
Posté le : Mer Avr 23, 2008 21:20 Sujet du message: RSYNC en SSH et en CRON |
|
|
Bon, j'ai eu le même problème que toi au moment de la migration, mais j'ai trouvé une technique assez simple.
Upload de fichier : quand on arrive sur la page d'upload, un .htaccess nous redirige vers un champ A créé pour l'occasion www2.site.tld
==>Désactiver l'upload sur le vieux serveurs...
Download: les fichiers uploadés sont dans www.site.tld/uploads/ (exemple) faire un .htaccess sur les deux serveurs redirigeant là encore vers www2 (où là tu auras sync à la main au bon moment)
Pour rsync, il me semble sinon qu'il faille le lancer en daemon côté nouveau serveur pour ce que tu veux faire... |
|
| |
|
 |
sdamain WRInaute accro

Inscrit le: 14 Oct 2003 Messages: 1264 Localisation: Arlon, Belgique
|
Posté le : Lun Avr 28, 2008 10:00 Sujet du message: RSYNC en SSH et en CRON |
|
|
J'ai finalement pu m'en sortir avec cette commande, merci à vous.
J'ai une question supplémentaire.
J'utilise donc cette commande actuellement :
| Code: |
| rsync -avz -e 'ssh' /home/web/original/www/images/ root@serveur:/home/web/destination/ftp/www/images |
Le problème est que les fichiers et répertoires de destination se retrouvent avec un chmod n'ayant rien à avoir avec celles qui devraient être en place.
Est-il possible de stipuler (dans le commande rsync) que l'on souhaite conserver les permissions de la destination tout en conservant les options actuelles de la commande (notamment le -a car j'ai des sous répertoire à transéfer).
Merci. |
|
| |
|
 |
| |
|
|