Arnaud, Manuel, Merci pour ces explications. Ok, maintenant, j'ai les éléments qui me permettent de comprendre le pourquoi du sendmail/postfix en local. Il est vrai que, dans l'usage que j'imagine -intra-entreprise-uniquement- je n'avait pensé qu'à l'envoi, en imaginant que l'édition du mail serait fait sur une web-interface.. Je n'avais pas pensé une seule seconde au fait que mailman doit aussi savoir recevoir un mail tout prêt pour le re-balancer (et pourtant, je l'utilise via cette liste !!)
Merci en tout cas. Bonne journée à tous !
Olivier.
Le ven. 15 févr. 2019 à 00:37, Arnaud Launay asl@launay.org a écrit :
Le Thu, Feb 14, 2019 at 11:30:20PM +0100, Olivier Vailleau a écrit:
Mais mon questionnement reste entier sur la capacité aux softs linuxiens d'envoyer en smtp. Pourquoi passer par un serveur local !? Comment sont déposés les mails sur ce sSmtp local : c'est pas via une connexion port
25
et une séquence de verbes smtp ?
Alors, c'est très simple.
Déjà, il est possible de configurer mailman pour utiliser un MTA distant pour l'envoi:
https://mailman.readthedocs.io/en/latest/src/mailman/docs/mta.html
Ca ne te règlera pas le problème des messages qui arrivent. Si tu envoies un mail à maliste@mailman.mondomaine.com, comment veux-tu que le mailman le récupère pour le traiter ? Il ne fonctionne pas en pop ou en imap: il a besoin d'être intégré avec un serveur smtp qui va lui transférer directement les mails (mais il peut écouter par exemple en lmtp, et donc servir de récipient après la config du serveur de mail).
Maintenant, pour le fonctionnement de base (en dehors de cette config)
- Mailman dépose ses fichiers dans la file d'attente de son smtp local, que ce soit directement dans un répertoire (c'est peu courant ces derniers temps), soit effectivement par une socket
- le MTA se charge alors ensuite d'aller livrer les mails là où il faut (smtp relai, etc)
Pourquoi c'est mieux que "j'envoie directement à exchange" ? Tout simplement parce que c'est plus sécurisé. Le boulot de mailman, c'est de gérer une liste: il reçoit un mail, et le renvoie à un ensemble de personnes. S'il se connecte à son smtp local, il transfère tous les mails et toute la liste, et le smtp local fait son boulot de MTA pour les envoyer, retenter s'il ne peut pas, ajouter du délai, etc.
Si mailman doit les envoyer à un serveur distant, mais que celui-ci est inaccessible (reboot de windows ? :D) ou difficilement accessible (réseau qui bagotte par exemple), le mailman ne va plus trop savoir quoi faire. Son process d'envoi va timeouter, des trucs vont probablement péter, et au final il est possible que certaines personnes ne reçoivent jamais le mail envoyé sur la liste. C'est pas gênant pour un spammer, ça l'est beaucoup plus pour une communication de la direction.
A noter, ce que je dis n'est pas l'entière vérité, mailman dispose (heureusement) de sa propre file d'attente de mails en smtp. C'est juste bien moins configurable que celle d'un MTA. Néanmoins, le fond reste: à chacun son boulot. Mailman gère la liste, le MTA envoie les mails à l'extérieur (ou au relai).
<digression> De nos jours, l'empiètement RAM et la non-complexité d'un postfix font qu'on en met un sur /tous/ nos serveurs, configuré en mode satellite, et comme ça on ne perd jamais un mail, même si le serveur mail est HS. Ils sont mis en attente localement et retentés plus tard. Evidemment, il ne faut pas tenter le diable, et bien le configurer pour n'écouter que lui-même et surtout pas des interfaces extérieures en openrelay :-D </>
Arnaud.
Liste de diffusion du FRsAG http://www.frsag.org/