Forum général.cherche-logiciel exécuter une commande shell par email ?

Posté par  .
Étiquettes : aucune
3
4
fév.
2009
bonsoir,

je ne sais pas si cela existe, mais est-ce qu'il serait possible d'assigner une commande shell particulière sur un serveur en rapport que l'on pourrait activer ou désactiver en envoyant un message internet à une adresse précise ou selon un sujet précis ?

Dans le cas présent cela pourrait permettre à mon patron d'activer ou non la redirection de ses courriels vers son téléphone portable par exemple, en envoyant un message précis au serveur...
  • # Procmail

    Posté par  . Évalué à 6.

    Je pense que cela doit facilement être réalisable avec Procmail ( http://partmaps.org/era/procmail/mini-faq.html#rtfm ).
    • [^] # Re: Procmail

      Posté par  . Évalué à 3.

      voici la marche à suivre complète pour résoudre le problème en question :

      Avec sendmail, il suffit d'avoir un fichier .forward dans le dossier de l'utilisateur. Une ligne par adresse de courriel, en indiquant en premier l'adresse locale si on veut en avoir une copie dans la boîte habituelle:

      .forward
      martin
      martin.trucmuche@yahoo.fr



      Pour que l'utilisateur puisse supprimer ou réactiver son forward de mail sans avoir à se logger sur le serveur, il est possible d'utiliser procmail pour lancer un script qui annule ou réactive le forward. (Exemple ici vers un blackberry)

      Créer un fichier /etc/procmailrc (normalement cela devrait être possible d'utiliser un ~/.procmailrc dans le dossier de l'utilisateur, mais je n'ai pas réussi à le faire fonctionner ainsi)

      :0
      * ^Subject: .*berry_stop
      |/home/login_utilisateur/scripts/blackberrystop.sh

      :0
      * ^Subject: .*berry_start
      |/home/login_utilisateur/scripts/blackberrystart.sh


      Créer un fichier ~/forwardstop_blackberry avec juste l'adresse locale de l'utilisateur
      Créer un fichier ~/forwardstart_blackberry avec l'adresse locale de l'utilisateur + l'adresse vers laquelle transférer (voir plus haut pour le .forward)

      Créer 2 scripts à appeler par procmail :

      blackberrystop.sh
      #!/bin/sh
      echo "Vos messages ne seront **plus** transferes sur le blackberry a partir de maintenant."| mail login_utilisateur -s "STOP transferts vers blackberry"
      cp /home/login_utilisateur/forwardstop_blackberry /home/login_utilisateur/.forward


      blackberrystart.sh
      #!/bin/sh
      cp /home/login_utilisateur/forwardstart_blackberry /home/login_utilisateur/.forward
      echo "Vos messages seront transferes sur le blackberry a partir de maintenant." | mail login_utilisateur -s "transferts messages vers blackberry"


      Ainsi votre utilisateur pourra s'envoyer un courriel avec le sujet berry_start pour activer le forward, et avec berry_stop pour le désactiver.

      Attention, le fait que cela soit dans /etc/procmailrc au lieu de ~/.procmailrc fera que n'importe quelle adresse ciblée sur le domain activera le script. De plus n'importe de l'extérieur qui qui connaîtra le truc pourra s'amuser à activer ou désactiver la redirection. Il devrait être possible d'affiner la règle selon l'adresse d'envoi par exemple.

      Only wimps use tape backup: real men just upload their important stuff on megaupload, and let the rest of the world ~~mirror~~ link to it

  • # maildrop

    Posté par  . Évalué à 4.

    Procmail ou maildrop semblent en effet repondre à ton probleme.
    Ils te permettent de crée des "filtres" sur tes mails, directement au niveau du serveur.
    Un exemple de regle maildrop (dans le fichier ~/.mailfilter) :

    if (/^Subject:.*lesujetquivabien/:h)
    {
    exception {
    to "|$HOME/bin/script"
    }
    }

    A la reception du mail avec le sujet en question, sur l'adresse correspondant au compte qui a le .mailfilter dans son $HOME, le mail sera "pipé" au script. Apres, le script fait ce qu'il veut.
    • [^] # Re: maildrop

      Posté par  . Évalué à 2.

      bonsoir,

      merci bien à vous deux, apparemment notre serveur utilise bien procmail, donc je vais regarder de ce côté-là ce que cela donne.

      Only wimps use tape backup: real men just upload their important stuff on megaupload, and let the rest of the world ~~mirror~~ link to it

Suivre le flux des commentaires

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