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

Réseau Discussion :

Ssh, scp, crontab et mot de passe


Sujet :

Réseau

  1. #1
    Modérateur
    Avatar de ggnore
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 472
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 472
    Points : 4 029
    Points
    4 029
    Par défaut Ssh, scp, crontab et mot de passe
    bonjour.

    Je dois écrire un script qui à heure fixe copiera un répertoire d'une machine sur une autre machine.
    Cette autre machine gravera systématiquement ce répertoire sur un cd.

    Je crois donc que j'ai besoin de scp et de crontab.

    Pour la crontab, j'ai vu qu'il y avait un autre thread à ce sujet, je vais y jeter un oeil.

    Mais pour scp, comment puis je éviter l'intervention humaine pour taper le mot de passe ?

  2. #2
    Expert confirmé
    Avatar de Katyucha
    Femme Profil pro
    DevUxSecScrumOps Full Stack Bullshit
    Inscrit en
    Mars 2004
    Messages
    3 287
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Irlande

    Informations professionnelles :
    Activité : DevUxSecScrumOps Full Stack Bullshit

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 287
    Points : 5 075
    Points
    5 075
    Par défaut
    je connais un remede a ton problème :
    rsync !

    Je l'utilise, je n'ai aucun problème.
    Y a de très bon tutoriel sur le net.


    Tu te fais des scripts et tu demandes a Madame Crontab de les lancer.

  3. #3
    Modérateur
    Avatar de ggnore
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 472
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 472
    Points : 4 029
    Points
    4 029
    Par défaut
    ok merci, ça a l'air parfait.

    Il y a un script fourni sur le site de rsync:

    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    #!/bin/sh
     
    # This script does personal backups to a rsync backup server. You will end up
    # with a 7 day rotating incremental backup. The incrementals will go
    # into subdirectories named after the day of the week, and the current
    # full backup goes into a directory called "current"
    # tridge@linuxcare.com
     
    # directory to backup
    BDIR=/home/$USER
     
    # excludes file - this contains a wildcard pattern per line of files to exclude
    EXCLUDES=$HOME/cron/excludes
     
    # the name of the backup machine
    BSERVER=owl
     
    # your password on the backup server
    export RSYNC_PASSWORD=XXXXXX
     
     
    ########################################################################
     
    BACKUPDIR=`date +%A`
    OPTS="--force --ignore-errors --delete-excluded --exclude-from=$EXCLUDES 
          --delete --backup --backup-dir=/$BACKUPDIR -a"
     
    export PATH=$PATH:/bin:/usr/bin:/usr/local/bin
     
    # the following line clears the last weeks incremental directory
    [ -d $HOME/emptydir ] || mkdir $HOME/emptydir
    rsync --delete -a $HOME/emptydir/ $BSERVER::$USER/$BACKUPDIR/
    rmdir $HOME/emptydir
     
    # now the actual transfer
    rsync $OPTS $BDIR $BSERVER::$USER/current
    Je ne voudrais pas que ça tourne tous les jours.
    Je ne saisis pas où ça se passe !
    Ce serait plutôt dans la crontab qu'il faudrait gérer la fréquence de lancement, non ?

    Je ne dis pas non à voir une configuration fonctionnelle de tout ceci ( katyucha ? )

  4. #4
    ovh
    ovh est déconnecté
    Rédacteur
    Avatar de ovh
    Homme Profil pro
    Architecte devops web full stack
    Inscrit en
    Mai 2002
    Messages
    3 841
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte devops web full stack

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 841
    Points : 6 514
    Points
    6 514
    Par défaut
    rsync ou scp reposent tous 2 sur ssh, rsync a l'avantage de ne transmettre *que* les données modifées (les plus récentes). Pour éviter le mot de passe, personnellement je configure une authentification ssh par clé pour le compte root entre les 2 machines (je fais à peu près le même genre d'opération que toi, des sauvegardes régulières en cron entre 2 serveurs).

    Expliqué ici :
    http://lea-linux.org/reseau/ssh.html#paire

  5. #5
    Modérateur
    Avatar de ggnore
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 472
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 472
    Points : 4 029
    Points
    4 029
    Par défaut
    portant dans le script, il y a l'air d'y avoir une variable mot de passe, ce qui voudrait dire que rsync se charge de transmettre le mot de passe à ssh... Je me trompe ?

    Je n'ai pas encore testé, j'avoue -_-

  6. #6
    ovh
    ovh est déconnecté
    Rédacteur
    Avatar de ovh
    Homme Profil pro
    Architecte devops web full stack
    Inscrit en
    Mai 2002
    Messages
    3 841
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte devops web full stack

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 841
    Points : 6 514
    Points
    6 514
    Par défaut
    Oui oui sans doute, mais ce n'est pas aussi propre qu'une authentification par clé

  7. #7
    Modérateur
    Avatar de ggnore
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 472
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 472
    Points : 4 029
    Points
    4 029
    Par défaut
    Ok, je crois que je vais m'en tenir à l'authentification fournie par rsync.

    Je ne saisis pas àù est la notion de 7 jours dans le script fourni.

  8. #8
    Modérateur
    Avatar de ggnore
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 472
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 472
    Points : 4 029
    Points
    4 029
    Par défaut
    Par ailleurs j'ai fait :

    [root@abbeville rsynctest]# ./script.sh
    rsync: failed to connect to useitcom: Connection refused (111)
    rsync error: error in socket IO (code 10) at clientserver.c(94)
    rsync: failed to connect to useitcom: Connection refused (111)
    rsync error: error in socket IO (code 10) at clientserver.c(94)
    [root@abbeville rsynctest]#
    Où script.sh est le script que j'ai signalé plus haut.

    qu'est ce que c'est que ce bazar ...
    Je me sens pas trop d'aller modifier du c

  9. #9
    ovh
    ovh est déconnecté
    Rédacteur
    Avatar de ovh
    Homme Profil pro
    Architecte devops web full stack
    Inscrit en
    Mai 2002
    Messages
    3 841
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte devops web full stack

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 841
    Points : 6 514
    Points
    6 514
    Par défaut
    Euh bon moi j'utilise rsync à la main... (commande rsync tapée directement dans crontab )

    Ce que je peux te dire c'est que rsync et ssh doivent être installés et configurés sur chaque machine.

    Syntaxe de base de rsync (celle que j'emploie ) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    rsync -azrv --delete /source/dir/* username@machine:/destination/dir
    a : préserve les droits (chmod)
    z : compresse
    r : récursif (fichiers + sous-répertoires)
    v : verbose (affiche le détail des fichiers transférés à l'écran)
    delete : si un fichier a été effacé sur source, l'efface aussi sur destination (sinon rsync ne fait qu'ajouter/modifier mais jamais effacer d'anciens fichiers)
    username : compte utilisateur sur la machine destination facultatif si le nom d'utilisateur est identique à celui qui lance la commande sur le serveur source.

    Voilà j'espère que ça t'aidera

  10. #10
    Modérateur
    Avatar de ggnore
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 472
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 472
    Points : 4 029
    Points
    4 029
    Par défaut
    j'ai bien tout installé comme il fallait

    I want to make sure that 'rsync' over 'ssh' works at all before I begin to automate the process, so I test it first as thisuser:

    $ rsync -avz -e ssh remoteuser@remotehost:/remote/dir /this/dir/

    and type in remoteuser@remotehost's password when prompted. I do need to make sure that remoteuser has read permissions to /remote/dir/ on remotehost, and that thisuser has write permissions to /this/dir/ on thishost. Also, 'rsync' and 'ssh' should be in thisuser's path (use "which ssh" and "which rsync"), 'rsync' should be in remoteuser's path, and 'sshd' should be running on remotehost.
    et ça marche.
    Plus qu'à aller taper dans la crontab et ça sera bon.

    Je sais que le suspense est intense, et que je suis suivi par des millions(milliards ?!) de lecteurs à l'affut du moindre évènement. Je vous tiens au courant de tout changement dans la situation.
    A vous les studios.
    C'était ggnore en direct de linux.

  11. #11
    ovh
    ovh est déconnecté
    Rédacteur
    Avatar de ovh
    Homme Profil pro
    Architecte devops web full stack
    Inscrit en
    Mai 2002
    Messages
    3 841
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte devops web full stack

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 841
    Points : 6 514
    Points
    6 514
    Par défaut
    Citation Envoyé par ggnore
    Je sais que le suspense est intense, et que je suis suivi par des millions(milliards ?!) de lecteurs à l'affut du moindre évènement. Je vous tiens au courant de tout changement dans la situation.
    A vous les studios.
    C'était ggnore en direct de linux.
    Mais c'est qu'il s'y croit, lui

    J'ajoute une chose : si tu passes par internet, sache que seul le port 22 (ssh) doit être ouvert en IN sur la machine de destination (et en OUT sur la machine source, bien sûr).

  12. #12
    Modérateur
    Avatar de ggnore
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 472
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 472
    Points : 4 029
    Points
    4 029
    Par défaut
    okidoki.
    Je crois que ça se passera par réseau de base(intranet qu'on dit?).

    Merci pour ces précisions.

  13. #13
    Modérateur
    Avatar de ggnore
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 472
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 472
    Points : 4 029
    Points
    4 029
    Par défaut
    Je vais utiliser ton authentification par clef finalement.
    l'export de RSYNC_PASSWD ne semble marcher que lorsque l'on lance rsync en tant que démon

  14. #14
    Modérateur
    Avatar de ggnore
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 472
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 472
    Points : 4 029
    Points
    4 029
    Par défaut
    Ok ça marche très bien ce système de paire de clefs.

    Encore une petite question avant que je retourne vers rsync...
    dans le tutoriel que tu m'as indiqué, on lit ça:
    Citation Envoyé par lea
    $scp .ssh/id_dsa.pub jop@scipc-jpg:/home/jop/.ssh/dsa2connex
    Warning: Permanently added 'scipc-jpg' (RSA) to the list of known hosts.
    jop@scipc-jpg's password:
    id_dsa.pub 100% |*****************************| 613 00:00
    Mon fichier est maintenant copié sur l'hôte distant, il me reste à inclure la clef dant le fichier authorized_keys. Une simple commande suffira :

    $ cat dsa2connex >>authorized_keys
    ça a un importance le nom dsa2connex ?
    Ou alors ce qui compte vraiment c'est le fichier authorized_keys ?

  15. #15
    Modérateur
    Avatar de ggnore
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 472
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 472
    Points : 4 029
    Points
    4 029
    Par défaut
    ça m'a tout l'air de fonctionner rudement bien.

    Encore une autre question:

    Dans les argument décrits plus haut, il y a un -z ce qui signifie qu'il y a compression.

    Pourtant les fichiers à l'arrivée font strictement la même taille qu'au départ.

    Je subodore que la compression a lieu avant que les fichiers ne transitent sur le réseau.
    La décompression aurait elle lieu à la réception ? De façon totalement transparent pour l'utilisateur, il me semble...

  16. #16
    ovh
    ovh est déconnecté
    Rédacteur
    Avatar de ovh
    Homme Profil pro
    Architecte devops web full stack
    Inscrit en
    Mai 2002
    Messages
    3 841
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte devops web full stack

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 841
    Points : 6 514
    Points
    6 514
    Par défaut
    Citation Envoyé par ggnore
    ça a un importance le nom dsa2connex ?
    Ou alors ce qui compte vraiment c'est le fichier authorized_keys ?
    Aucune, c'est juste le nom du fichier clé à transmettre c'est tout. Tu as donc bien compris.

    Citation Envoyé par ggnore
    Dans les argument décrits plus haut, il y a un -z ce qui signifie qu'il y a compression.

    Pourtant les fichiers à l'arrivée font strictement la même taille qu'au départ.

    Je subodore que la compression a lieu avant que les fichiers ne transitent sur le réseau.
    La décompression aurait elle lieu à la réception ? De façon totalement transparent pour l'utilisateur, il me semble...
    Oui Tu as un excellent odorat

    Alors c'est la bombe rsync avec ssh hein ?

    J'adore les gens comme toi qui posent leurs questions et y répondent tout seul

  17. #17
    Modérateur
    Avatar de ggnore
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 472
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 472
    Points : 4 029
    Points
    4 029
    Par défaut

    Je préfère demander confirmation...

    C'est en effet bien puissant rsync et ssh.

    Par contre j'ai un problème:
    On spécifie le répertoire à copier, on peut aussi spécifier un répertoire à exclure.

    Mais je n'arrive pas à choisir plusieurs répertoires à copier ou à exclure.

    J'ai essayer en mettant les 2(ou+) répertoires entre ' (simple quote) ou " (double quote), mais ça ne marche pas comme il faut. Faut il protéger les quote avec des \ (backslash)?

    Je pourrais demander à rsync de se lancer plusieurs fois, mais ça me paraît un peu usinàgazien.

  18. #18
    ovh
    ovh est déconnecté
    Rédacteur
    Avatar de ovh
    Homme Profil pro
    Architecte devops web full stack
    Inscrit en
    Mai 2002
    Messages
    3 841
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte devops web full stack

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 841
    Points : 6 514
    Points
    6 514
    Par défaut
    Alors là aucune idée... Honnêtement quand j'ai plusieurs répertoires distincts à copier (non imbriqués, sinon c'est récursif), je lance plusieurs fois la commande rsync...

  19. #19
    Modérateur
    Avatar de ggnore
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 472
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 472
    Points : 4 029
    Points
    4 029
    Par défaut
    Ok.

    Je vais faire ça.

    Merci pour tout.

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 09/10/2007, 17h22
  2. Réponses: 7
    Dernier message: 07/06/2007, 19h18
  3. Ssh pbs mot de passe
    Par Fluxy dans le forum Linux
    Réponses: 3
    Dernier message: 30/05/2007, 10h15
  4. Problème scp sans mot de passe
    Par fpuga dans le forum Réseau
    Réponses: 4
    Dernier message: 14/11/2006, 16h21
  5. SSH sans saisir de mot de passe
    Par srvremi dans le forum Réseau
    Réponses: 6
    Dernier message: 30/11/2005, 11h04

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