Aller au contenu
  • 0

Envoie Automatique De L'adresse Ip Du Qnap Par Mail


crash62

Question

Bonjour à Tous !

 

J'aimerai créer une tache en Cron avec un script en bash pour un envoie de l'adresse ip externe (publique) de mon serveur qnap sur une de mes adresses mail car mon IP publique est dynamique.

 

J'ai trouvé certains scripts mais j'ai un problème avec l'envoie via "sendmail" ou "mail"

 

voici mon script en .sh :

#!/bin/sh
curl http://icanhazip.com \
    | grep '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' \
    | sendmail -f "mon adresse IP" mon.login@numericable.fr

avec la fonction : "mail -s"   (à la place du  : "sendmail -f") celà me donne une erreur également....

 

et dans la CronTab :

*/15 * * * * /share/HDA_DATA/Web/envoie_ip.sh

*/15 => pour un envoie de mail toutes les 10 min...

 

et voici ma config du "ssmtp.conf"    (=> /mnt/HDA_ROOT/.config/ssmtp/ssmtp.conf) :

#
# /etc/ssmtp.conf -- a config file for sSMTP sendmail.
#
mailhub = smtp.numericable.fr:25
FromLineOverride=YES
UseTLS = NO
UseSTARTTLS = NO
AuthUser = mon.login
AuthPass = monmotdepasse

dans le AuthUser en essayant avec ou sans le @numericable.fr celà ne fonctionne pas...

 

 

et quand j'exécute mon script pour le tester il me renvoie :

# /share/HDA_DATA/Web/envoie_ip.sh
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100    14  100    14    0     0     54      0 --:--:-- --:--:-- --:--:--   112
sendmail: Server didn't accept AUTH LOGIN (503 5.5.1 Error: authentication not enabled)

D'où vient le problème ? Quelqu'un a une idée ?

Merci.

Lien vers le commentaire
Partager sur d’autres sites

6 réponses à cette question

Messages recommandés

  • 0

Bonjour,

 

Comme plusieurs fournisseur internet en France, Numericable, comme Orange, etc. refuse de laisser passer une demande d'authentification venant d'un mail serveur (sendmail) et pas d'un cleint mail classique .

 

Ceci est dans le but d’empêcher tout spam venant en interne d'une adresse mail numericable|orange|etc. non existante ou usurpée ...

 

... PAR CONTRE numéricable (contrairement à Orange) laisse passer les demandes de ce type vers un autre serveur SMTP ... même avec le port 25 ...

 

Il suffit donc, de configurer un autre serveur de mail, par exemple gmail, avec un compte dédié au QNAP (c'est ce que je fais) ...

 

ATTENTION dans un cron, vous êtes au niveau "init" ... le PATH n'est pas obligatoirement correct ... donc :

... soit vous mettez le PATH= dans votre shell, soit bien mieux vous utilisez UNIQUEMENT les chemin complet d’accès aux programmes ...

/bin/grep ; /usr/sbin/sendmail ; /sbin/curl ; etc.

 

Enfin une alternative, sans curl ni regex ... (spécial fainéant ... :icon_lol:  :icon_lol: ) :

 

MyIP=`/usr/bin/wget -qO- ipecho.net/plain`

 

Philippe.

Lien vers le commentaire
Partager sur d’autres sites

  • 0

ok merci pour votre aide...

 

c'est vrai je "bricole" pour le moment en SSH etc donc c'est pas évident de tout savoir...

 

ce qui me ferait ce genre de chose :

#!/bin/sh
monip=`/usr/bin/wget -qO- ipecho.net/plain`

/usr/sbin/sendmail -f "Mon adresse IP : &monip" mon.login@numericable.fr

et dans la Crontab je peux laisser comme précédement j'avais écrit ?

Lien vers le commentaire
Partager sur d’autres sites

  • 0

Bonjour,

 

Heu! je ne sais pas trop ...

 

*/15 cela ne fait-il pas toutes les 15 mn ( */nombre_d'unités) 15,30,45,60 , j'aurai plutôt mis*/10 ...

 

Mais je ne connais pas bien ces subtilités ...

 

Par contre attention de bien modifier le bon fichier ( /etc/config/crontab) et de relancer le crond après modification /etc/init.d/crond.sh restart

 

Le QNNAP a une gestion spécifique lié au Linux embarqué, donc reconstruit à chaque boot .

 

Philippe.

Lien vers le commentaire
Partager sur d’autres sites

  • 0

Bonjour,

    Pour ceux qui auraient le même genre de besoin mais avec un qnap plus simple, voici un script qui récupére l'adresse IP depuis le modem et l'envois par mail

Je me suis inspiré d'une fonction que j'ai trouvé à cette adresse : http://forum.qnap.com/viewtopic.php?t=18350

send_mail()
#   Send a mail message
#   $1 = subject
#   $2 = to
#   $3 = from
#   $4 = msg
{
   local tmpfile="/tmp/sendmail.tmp"
   /bin/echo -e "Subject: $1\r" > "$tmpfile"
   /bin/echo -e "To: $2\r" >> "$tmpfile"
   /bin/echo -e "From: $3\r" >> "$tmpfile"
   /bin/echo -e "\r" >> "$tmpfile"
   if [ -f "$4" ]; then
      cat "$4" >> "$tmpfile"
      /bin/echo -e "\r\n" >> "$tmpfile"
   else
      /bin/echo -e "$4\r\n" >> "$tmpfile"
      #/bin/echo -e "$4" >> "$tmpfile"
      #/bin/echo -e "$4"
   fi
   /usr/sbin/sendmail -t < "$tmpfile"
   rm $tmpfile
}
#REcup de l'adresse WAN depuis le modem
 wget --user=[LOGIN] --password=[MOT DE PASSE] http://192.168.0.1/RgSetup_French.asp -O /root/adr_ip.txt
IPWAN=`cat /root/adr_ip.txt | grep "Adresse IP:"`
#TODO netoyer l'affichage de l'adresse IP WAN
send_mail "Adresse IP WAN" [adresse mail destinataire] [adresse mail expediteur] "$IPWAN"

Ce script est fait pour interroger un modem netgear CVG834G fournit par numericable mais je pense qu'il est possible de l'adapter...

 

Puis il suffit de planifier l'execution dans une cron

Ex : 0 * * * * /root/envois_mail.sh

Ici, le mail est envoyé toute les heures.

 

Lien vers le commentaire
Partager sur d’autres sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Invité
Répondre à cette question…

×   Vous avez collé du contenu avec mise en forme.   Supprimer la mise en forme

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

Chargement
×
×
  • Créer...