Envoi Mail Script Bash

Bonjour tout le monde,

Aujourd’hui je rencontre un pb avec l’envoi de mail via un script bash.

Lorsque je me connecte en wifi sur une box, ou par rj45, çà marche nickel.
En revanche, quand je me connecte à ma clef 3G en wifi, je reçois pas le message sur ma boite mail.

Un problème de configuration?

Merci

Heu je comprend pas vraiment le montage là. Ta connexion au net est en 3G ? Si c’est le cas tu a une jolie démonstration de “l’internet” selon les opérateurs de téléphonie mobile. Port 25 bloqué, donc impossible d’envoyer un mail de ta machine directement.

Quel est ton opérateur ?

LE MONTAGE
1 pc avec une clef wifi
1 clef 3G Bouygues Telecom

J’ai accès à internet, et je peux envoyer des e-mails par Gmail.

LE CHALLENGE
J’ai écris un script bash qui envoi un e-mail à quelqu’un lors d’une modification d’un processus.
Impossible d’envoyer le mail quand je suis connecté sur la clef 3G.
Si je me connecte à un point wifi comme une box, çà marche.

Je comprends pas l’explication du port 25. Tu peux m’en dire +?

Merci

Ok donc ta phrase “je me connecte à ma clef 3G en wifi” ne veux absolument rien dire. Soi tu te connect en Wifi, soi en 3G.

Quand tu navige sur internet tu utilise le port 80 en HTTP et le 443 en HTTPS, pour le SSh c’est le port 22. Image toi que ton PC a de multiple porte numérotées entre 1 et 65536.
Quand de ton PC tu veut envoyer directement un mail il faut que tu utilise la porte 25 du serveur distant

Maintenant les opérateurs téléphonie mobile restreigne volontairement le nombre de porte accessible. Disons plutot qu’il laisse très peut de portes accessible depuis leur réseau. Alors que par Wifi tu passe par l’ADSL normal. Donc “normalement” toutes les portes sont accessibles. Je dit normalement car pour limiter les PC zombie qui sont des relais à SPAM les FAI bloquent ce port aussi, Certains laisse la possibilité de réouvrir ce port.

Merci pour ces explications.

Je vais continuer mes recherches pour essayer de contourner cette restriction de la cleg 3G.

Bonne soirée :006

Je viens de découvrir et tester l’utilitaire swaks.

echo "corps du mail" | swaks -t dest1@toto.fr,dest2@toto.fr -f from@toto.fr -s serveur.smtp.fr -tlso -au login -ap password -g -ao -S

J’ai rentrer mon serveur smtp Gmail, avec le port 25.

Il me répond:
*** Error connecting 0.0.0.0 to smtp.gmail.com:25:
*** IO::Socket::INET: connect: timeout

Mais rien y fait, impossible d’envoyer depuis la clef 3G.

J’ai essayé de régler la clef 3G Bouygues Telecom mais pas bcp d’informations sur le sujet pour ouvrir le port 25.

++ :006

C’est probablement parce que c’est interdit directement par l’opérateur… tu peux essayer tant que tu veux de modifier les paramètres de ta clef, tu ne pourras rien faire de plus :slightly_smiling:

Bonjour à tous,

Je me greffe au sujet car il attire ma curiosité ! (Question de néophyte par contre…)
N’est-il pas possible de “tunnelisé” son envoi de mail pour le faire passer par le port 80 de sa clef 3G ?
Un script à base de curl pour se connecter à gmail et envoyer son mail est-il difficile à réaliser ?

Oui il est tout a fait possible de tunneliser l’envoi du mail, mais pour cela il faut un serveur qui ne soit pas bridé.
Par contre pour se connecter sur Gmail pour envoyer un mail il faut obligatoirement passer par le serveur SMTP de google qui écoute sur le port … 25, donc bloqué.
Mais comme je le disais il vaut mieux faire la liste des port ouvert sur la clé 3G que le nombre de port fermé. Ces dernier étant -je pense- 100 fois plus nombreux. Autrement dit ils marchent en liste blanche.

Humm… Intéressant Mimoza !
Donc je pense qu’il faudrait appeler Bouygues et leur demander d’ouvrir le port sur la clef 3G (improbable…)
Peut-être que dans le cadre d’un forfait pro…
Je présume que la clef 3G sert de “ligne de secours” ?

[quote=“Mimoza”]Par contre pour se connecter sur Gmail pour envoyer un mail il faut obligatoirement passer par le serveur SMTP de google qui écoute sur le port … 25, donc bloqué.
[/quote]
Pas uniquement, il écoute forcément sur le port 25 pour pouvoir réceptionner les mails dont il est la destination, mais il écoute aussi sur le port 587 (submission), ce qui permet aux personnes ayant le port 25 bloqué d’utiliser tout de même gmail.

Je ne connais pas swaks, mais il doit probablement avoir une option pour choisir le port.

Tu peux aussi utiliser le SMTP de ton FAI, qui doit logiquement être le seul accessible sur le port 25.

Exact Kna.
Passer par le SMTP de son FAI permet en général de ne pas s’embêter à se faire “white” lister par tous les outils/listes anti-spam.

J’ai finalement opté pour une clef 3G pro.

En utilisant swaks, je peux choisir le port 25. Cela fonctionne, mais j’ai du mal à comprendre le principe. Cette commande est normalement utilisé pour tester un serveur si j’ai bien compris le man.

[code]#!/bin/bash

swaks -t destinataire@FAI.com
-f expediteur@FAI.com
-s smtp.FAI.fr 25 -tlso -au numéro.téléphone.clef.3g -ap password -g -ao -S -d < fichier.text[/code]

mais je n’arrive pas à paramétrer aussi simplement que mail :12

Si quelqu’un peut m’expliquer comment mettre le sujet du mail avec SWAKS, je suis preneur.

Après lecture du MAN, et différents essais, pas moyen de configurer la partie DATA.

LA SOLUTION

[code]#!/bin/bash

to=destinataire@FAI.com
from=expediteur@FAI.com
subject=“Test Mail”

echo -n -e “To: $to \n” >mail.txt
echo -n -e “From: $from\n” >> mail.txt
echo -n -e “Subject: $subject\n” >> mail.txt

swaks --to destinataire@FAI.com
–from expediteur@FAI.com
-s smtp.FAI.fr 25 -tlso -au login -ap password -g -n -ao -S < mail.txt[/code]

Merci pour avoir partagé ta solution :023

L’utilisation est pour un cas très particulier, mais si çà aide à comprendre.

Je reste disponible si certain ont des questions.

A bientôt sur le forum, et merci pour l’aide.

:006

Vivien ROUSSELOT
Ingénieur R&D Mécatronique & Énergie - Étudiant
Web: www.vivien-rousselot.com
Site: www.v-mechatronics.com