Forum Programmation.shell lancer et recupérer le résultat d'une commande à distance

Posté par  .
Étiquettes : aucune
0
8
oct.
2004
Bonjour,

mon objectif : vérifier les processus qui tournent sur un certain nombre de machines.
J'ai commencé par installer les clés ssh sur les différentes machines pour ne pas avoir à taper le mot de passe à chaque fois mais l'informatique étant un truc de fainéant je ne peux pas me satisfaire de taper pour chaque machine :


ssh machine.fr
top -bn1 |head -15
exit


Le problème c'est que dans un script, ssh me redonne la main et n'exécute pas top et exit automatiquement sur la machine distante.

Ma question : comment je fais pour mettre ces 3 lignes de commandes (ou un équivalent) dans un script ? Autrement dit, comment exécuter "top" sur une machine à distance et en récupérer le résultat ?

Merci !
  • # lancer et recupérer le résultat d'une commande à distance

    Posté par  . Évalué à 5.

    Sur la meme ligne (on ne demande pas a ssh de lancer un shell mais un processus) :

    ssh machine.fr top -bn1 | head -15

    (ici, seule la commande top sera lancee sur la machine distance, head sera lance en local.)
  • # Solution de monitoring

    Posté par  . Évalué à 2.

    Salut,

    Si c'est pour faire une solution de monitoring, utilise Nagios et le plugin NRPE qui te permet de faire de l'execution de commande distante .. et bien sur d'en récupérer le résultat.
    • [^] # Re: Solution de monitoring

      Posté par  . Évalué à 3.

      en plus le dernier linuxmag a un très bon article sur le sujet :)

      ça évite de se faire chier avec les cgi qui disent que nagios n'est pas lancé et de chercher pendant 3h54s43ms en pleurant des moules humidifiées
    • [^] # Re: Solution de monitoring

      Posté par  . Évalué à 2.

      SNMP à voir aussi mais, je l'ai pas testé sous nux...

      Sinon le premier commentaire me semble le plus réaliste :)
      • [^] # Re: Solution de monitoring

        Posté par  . Évalué à 2.

        Avant il y avait -> telnet : login / rlogin
        Maintenant -> ssh / rsh

        Utilises rsh (un petit man t'aideras pour les options) mais dans le cas de la surveillance de process SNMP est le plus adéquat ...
        • [^] # Re: Solution de monitoring

          Posté par  . Évalué à 3.

          n'importe quoi !!

          rsh est vieux comme le monde, n'est pas chiffré, ni authentifié par clef ...
          rsh n'a RIEN a voir avec ssh.

          bref ne fait pas ce qui est ecrit ci-dessus, utilise ssh qui permet la meme chose que rsh mais avec plus de sécurité !!!!

          sinon SNMP c'est pas mal ... mais attention aussi, ne pas s'arreter au protocole SNMP v2 parce que l'udp non authentifié (ou si peu: mot de passe en clair ...) ça va pas vers l'amélioration !!!



          un dernier conseil:
          le premier commentaire la haut, dit qu'en passant les commandes sur la meme ligne que "ssh ..." cela marchera et c'est vrai. mais en général, si tu te lance dans cette manip, tu va creer une clef ssh applicative utilisée par ton script, et cette clef n'aura pas de passphrase (sinon il ne pourra plus tourner tout seul ...).
          du coup cette clef sans passphrase permer de compromettre les machines une par une en rebondissant.
          la méthode pour empecher cela c'est d'associer la clef a un scipt sur le serveur:

          detail de la méthode:
          tu cree un user "monitoring" et une clef ssh sans passphrase pour ce user.

          sur chaque serveur a monitorer, tu cree un script /bin/monitor.sh qui effectue les actions. puis tu associe la clef publique du user "monitoring" a cette action en mettant cela dans le authorized_keys:
          command="/bin/monitor.sh" rsa ..... (la clef publique).

          du coup, certes la clef du user monitoring est sans passphrase, mais elle ne peut QUE servir a lancer ce script (et non pas n'importe quelle commande).

          bien sur il reste a ecrire le script /bin/monitor.sh correctement (recuperer les CTRL-C ...) afin d'assurer encore un peu mieux la sécurité du tout.
          • [^] # Re: Solution de monitoring

            Posté par  . Évalué à 1.

            Désolé pour ma réponse (rsh) , je me suis un peu emmêlé les pinceaux.
            Promis je ne recommencerais plus ...

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.