IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration système Discussion :

ssh et rsync pour sauvegarde sur NAS


Sujet :

Administration système

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Développeur Full Stack
    Inscrit en
    Novembre 2007
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Full Stack

    Informations forums :
    Inscription : Novembre 2007
    Messages : 101
    Par défaut ssh et rsync pour sauvegarde sur NAS
    Bonjour à tous,

    Je souhaite faire des sauvegardes depuis un poste Linux Debian Squeeze vers un NAS Synology.

    Sur ce NAS j'ai un compte admin et un compte utilisateur chris. Pour ce compte chris, j'ai un dossier partagé CHRIS, sur lequel je souhaite faire les backups avec rsync. Le chemin vers ce dossier est /volume1/CHRIS.

    Le serveur ssh est activé sur le NAS.

    Pour me connecter au NAS avec une console, je fais : ssh root@192.168.1.28 (adresse du NAS), on me demande le mot de passe et je suis connecté, donc pas de problème.

    Comme il est conseillé de ne pas utiliser le compte root avec rsync, j'ai souhaité vérifier la connexion avec mon compte chris (non admin).

    La commande : ssh chris@192.168.1.28 me dit que l'accès est refusé.

    A cause de ce refus de connexion, il m'était impossible d'utiliser rsync, d'autant plus que je souhaiterais automatiser cette tâche de sauvegarde.

    J'ai donc suivi un tutoriel très détaillé me permettant d'avoir, d'une part l'accès ssh au serveur NAS pour le compte chris et d'autre part la mise en place d'un couple clé privée/clé publique pour le chriffrement ssh.

    Le tuto se trouve ici : https://techarea.fr/tuto-ssh-cle-nas...?cn-reloaded=1

    A présent (i.e. après application de ce tutoriel), la commande ssh chris@192.168.1.28 me connecte au NAS en ssh, directement dans le dossier /volume1/homes/chris, sans avoir à saisir mon mot de passe.
    Donc très bien de ce côté.

    En revanche, je repère quelque chose qui me semble annormal du côté de rsync, je m'explique :

    Pour effectuer mon test, j'ai créé les dossiers suivants :

    - sur mon poste local Linux Debian : /home/chris/TEST_RSYNC

    - sur le serveur NAS : /volume1/CHRIS/TEST_RSYNC

    Je lance alors la commande : rsync -av -e ssh /home/chris/TEST_RSYNC/ chris@192.168.1.28:/volume1/CHRIS/TEST_RSYNC

    Résultat : Les fichiers présents dans le dossier local /home/chris/TEST_RSYNC/ sont bien copiés dans le dossier distant /volume1/CHRIS/TEST_RSYNC sur le NAS.

    Là encore tout semble normal.

    LE PROBLEME :

    La commande : rsync -av /home/chris/TEST_RSYNC/ chris@192.168.1.28:/volume1/CHRIS/TEST_RSYNC

    me donne le même résultat, sans avoir à saisir le mot de passe, alors que je n'ai pas invoqué 'ssh' dans la commande.

    Je précise que le service TELNET est bien désactivé sur le NAS.

    Est-ce que le protocole ssh pourrait étre implicite dans une commande rsync ? Car je ne comprends plus trop.

    En fait je me demande si la copie ne s'effectuerait pas sans chiffrement et sans mot de passe ? Autrement dit en clair.


    Merci d'avance à tous ceux qui pourront m'éclairer sur ce point.

    Krys006

  2. #2
    Expert confirmé
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    11 127
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 11 127
    Par défaut
    Bonsoir,

    Je n'ai jamais joué avec rsync de cette manière,
    Citation Envoyé par Krys006 Voir le message
    Est-ce que le protocole ssh pourrait étre implicite dans une commande rsync ? Car je ne comprends plus trop.
    cependant la lecture du man est intéressante. Extraits :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    GENERAL
           There are two different ways for rsync to contact a remote system: using a remote-shell program 
    as the transport (such as ssh or rsh) or contacting an rsync daemon directly via TCP. 
           The remote-shell transport is used whenever the source or destination path contains a 
    single colon (:) separator after a host specification.  
     
    SETUP
           Once installed, you can use rsync to any machine that you can access via a remote shell 
    (as well as some that you can access using the rsync daemon-mode protocol). 
           For remote transfers, a modern rsync uses ssh for its communications, but it may have been configured 
    to use a different remote shell by default, such as rsh or remsh.
    [...]
     
    Typically, rsync is configured to use ssh by default [...]
    Le double-point dont il est question dans la section GENERAL a l'air d'être là, après "28" :
    rsync -av /home/chris/TEST_RSYNC/ chris@192.168.1.28:/volume1/CHRIS/TEST_RSYNC.

    On pourrait donc répondre "oui" à ta première question ci-dessus.

    Citation Envoyé par Krys006 Voir le message
    En fait je me demande si la copie ne s'effectuerait pas sans chiffrement et sans mot de passe ? Autrement dit en clair.
    Je ne sais pas, et je n'ai pas trouvé l'info.

  3. #3
    Membre confirmé
    Profil pro
    Développeur Full Stack
    Inscrit en
    Novembre 2007
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Full Stack

    Informations forums :
    Inscription : Novembre 2007
    Messages : 101
    Par défaut
    Merci beaucoup Jipété, ça m'éclaire un peu. Je vais donc creuser la doc de ma version de rsync.

    Si ce n'est pas trop indiscret, aurais-tu un exemple illustrant la manière avec laquelle tu joues avec rsync ?

    Merci.

  4. #4
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 658
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 658
    Par défaut
    Bonjour,

    je n'ai jamais explicitement invoqué ssh pour utiliser rsync, et, sans export de clé, ce dernier me demande mon mot de passe.
    j'en ai déduis qu'il passe implicitement par ssh !
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  5. #5
    Membre confirmé
    Profil pro
    Développeur Full Stack
    Inscrit en
    Novembre 2007
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Full Stack

    Informations forums :
    Inscription : Novembre 2007
    Messages : 101
    Par défaut
    Citation Envoyé par N_BaH Voir le message
    je n'ai jamais explicitement invoqué ssh pour utiliser rsync, et, sans export de clé, ce dernier me demande mon mot de passe.
    j'en ai déduis qu'il passe implicitement par ssh !
    Merci N_BaH, c'est aussi ce que j'étais tenté de conclure. Mais, dans tous les exemples que je trouvais sur les forums, à chaque fois était rajoutée à la commande rsync la partie "-e ssh", d'où mon doute.

  6. #6
    Expert confirmé
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    11 127
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 11 127
    Par défaut
    Yop !
    Citation Envoyé par Krys006 Voir le message
    Si ce n'est pas trop indiscret, aurais-tu un exemple illustrant la manière avec laquelle tu joues avec rsync ?
    pour des sauvegardes rapides en interne d'un disque sur l'autre :
    rsync -lEauR --delete --inplace source_avec_slash/ destination_sans_slash et lorsqu'un dd externe sur usb est branché et détecté, rappel de la même commande qui va utiliser comme source la destination précédente.

    Notes : la première lettre des options est un "elle"
    La source_avec_slash/ est en fait issue d'un fichier ini contenant une liste de dossiers, et la commande est appelée autant de fois que nécessaire.

  7. #7
    Responsable Systèmes


    Homme Profil pro
    Gestion de parcs informatique
    Inscrit en
    Août 2011
    Messages
    18 258
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Gestion de parcs informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2011
    Messages : 18 258
    Par défaut
    rsync utilise ssh. l'option -e ssh sert en cas de besoin de spécification du port (utilisation de port ssh non par défaut).
    Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
    Mon article sur le P2V, mon article sur le cloud
    Consultez nos FAQ : Windows, Linux, Virtualisation

  8. #8
    Membre confirmé
    Profil pro
    Développeur Full Stack
    Inscrit en
    Novembre 2007
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Full Stack

    Informations forums :
    Inscription : Novembre 2007
    Messages : 101
    Par défaut
    rsync -lEauR --delete --inplace source_avec_slash/ destination_sans_slash
    Merci Jipété pour ces précisions, je vais étudier de plus près l'utilisation de tous ces paramètres passés en ligne de commande.

  9. #9
    Membre confirmé
    Profil pro
    Développeur Full Stack
    Inscrit en
    Novembre 2007
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Full Stack

    Informations forums :
    Inscription : Novembre 2007
    Messages : 101
    Par défaut
    Citation Envoyé par chrtophe Voir le message
    rsync utilise ssh. l'option -e ssh sert en cas de besoin de spécification du port (utilisation de port ssh non par défaut).
    Merci chrtophe,

    Un extrait de tuto que l'on peut trouver ici : http://www.xenetis.org/linux_debian_...shell_usb.html donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    Utilisation de rsync en réseau
    
    Le point intéressant avec rsync, est de pouvoir sauvegarder sur une machine distante, pour cela il faut spécifier notre serveur cible, pour cet exemple : 123.123.123.123 avec utilisateur root dans le dossier /home/backup :
    rsync -Haurov /var/www/xenetis.org/ root@123.123.123.132:/home/backup/
    
    Cette sauvegarde passe par ssh, rsync vous demandera donc le mot de passe de l'utilisateur distant pour effectuer sa sauvegarde.
    
    Utilisation des clés publique / privée pour la sauvegarde par ssh
    
    Si vous vous voulez utiliser une paire de clé publique / privée pour effectuer votre sauvegarde, vous pouvez vous référer au tutoriel présent sur ce site :
    Sauvegarde par ssh avec la commande scp avec clé publique - clé privée
    
    Puis une fois les clés installées utilisez cette commande pour la sauvegarde
    rsync -Haurov   -e "ssh -i /root/.ssh/id_dsa" /var/www/xenetis.org/ root@123.123.123.132:/home/backup/
    
    Cela vous permettra de lancer votre commande en tache planifier crontab par exemple.
    
    Utilisation d'un port ssh différent de celui d'origine
    
    Si le serveur recevant les sauvegardes dispose d'un port ssh n'était pas celui d'origine (22) mais par exemple 2222, utilisez la commande suivante :
    rsync -Haurov   -e "ssh -p 2222" /var/www/xenetis.org/ root@123.123.123.132:/home/backup/
    Je ne comprends pas pourquoi il faut mentionner la clé de chiffrement dans ce cas :

    rsync -Haurov -e "ssh -i /root/.ssh/id_dsa" /var/www/xenetis.org/ root@123.123.123.132:/home/backup/

    et pas dans celui-ci :

    rsync -Haurov -e "ssh -p 2222" /var/www/xenetis.org/ root@123.123.123.132:/home/backup/

    Quel est l'intérêt de mettre en place un système clé publique/clé privée si c'est pour avoir à préciser cette clé dans la commande ?

    En revanche, pour préciser un port qui n'est pas le port par défaut, ça prend tout son sens.

    Encore merci pour vos réponses. Je conclue que ssh est utilisé implicitement par défaut lors d'une connexion distante.
    Krys006

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Sur quoi se base rsync pour décider quels fichiers sauvegarder ?
    Par Jipété dans le forum Administration système
    Réponses: 2
    Dernier message: 15/07/2016, 08h07
  2. Problème de script pour sauvegarde sur bande (mt)
    Par neo62matrix dans le forum Administration système
    Réponses: 1
    Dernier message: 24/02/2015, 18h16
  3. Réponses: 11
    Dernier message: 30/05/2013, 14h19
  4. Script Batch pour sauvegarder Archive.pst sur un Nas.
    Par Bryce37 dans le forum Outlook
    Réponses: 0
    Dernier message: 10/08/2012, 10h12
  5. Réponses: 1
    Dernier message: 29/11/2005, 14h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo