Envoi de mail et serveur SMTP

Bonjour à toutes et à tous,

Je suis face à un problème technique depuis un bon moment déjà, et je ne parviens pas à le résoudre ni à trouver quelqu’un capable de m’expliquer le pourquoi du comment du problème,…

Contexte ultra simple : je souhaite envoyer un mail en ligne de commande SANS devoir installer un serveur SMTP (Postfix, Exim4, ou autre,…).

Partout sur le net, on voit que pour envoyer un mail (avec la commande mail/mailx en générale) il faut installer un serveur SMTP. D’ailleurs, lors de l’installation du package mailx, Exim4 fait partie des dépendances,…

Je ne parviens pas à comprendre pourquoi on à besoin d’installer un serveur SMTP en local sur sa machine pour pouvoir relayer un mail… On devrait pouvoir simplement soumettre un mail à un serveur SMTP distant, non ?

Est ce que quelqu’un connait suffisamment bien le contexte pour m’éclairer ?

Merci par avance pour votre aide :slight_smile:

Il te suffit d’utiliser les routines perl correspondantes par exemple (module Net::SMTP)

Les MUA (mail user agent) comme mailx qui dépendent d’un MTA (mail transport agent) comme exim4 envoient les mails via le MTA local et non par SMTP. Il existe d’autres MUA comme mutt (en mode texte) ou icedove/thunderbird (en mode graphique) qui peuvent envoyer les mails par SMTP et ne dépendent pas d’un MTA local.

Il existe aussi des MUA en ligne de commande (mutt est en mode texte, mais intéractif, on ne peut pas l’utiliser dans un script) qui n’ont pas besoin d’utiliser un MTA pour envoyer des messages (on pourrait parler de MSA dans ce cas là), entre autres :

  • ssmtp
  • msmtp
  • heirloom-mailx