Mail Transfer Agent

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Page d'aide sur l'homonymie Pour les articles homonymes, voir MTA.

Un Mail Transfer Agent est un logiciel pour serveur de transmission de courriers électroniques. Faute de traduction faisant référence, l'abréviation MTA (prononcée en français) est utilisée par les informaticiens francophones pour désigner ce type d'application.

Fonctionnement[modifier | modifier le code]

Un MTA reçoit, habituellement par le protocole SMTP, les emails envoyés soit par des clients de messagerie électronique (MUA), soit par d'autres MTA. Son rôle est de redistribuer ces courriers à des Mail Delivery Agent et/ou d'autres MTA.

Réception d'un message[modifier | modifier le code]

Un message reçu par un MTA peut provenir de deux types de logiciel :

  • un MUA : les fournisseurs d'accès à internet proposent généralement un service de MTA, qui permet aux utilisateurs de configurer leur MUA de façon à ce qu'il envoie tous les mails écrits à ce MTA.
  • un autre MTA : la plupart des MTA servent à distribuer dans un réseau les messages relayés par d'autres MTA.

Rejet d'un message (NDR)[modifier | modifier le code]

Un MTA peut rejeter (envoi d'une Notification De Rejet, NDR) un message pour une de ces raisons :

  • serveur non concerné : les MTA sont en général configurés pour n'accepter que des messages expédiés par des personnes appartenant à un certain réseau (par exemple celui des clients pour un fournisseur d'accès à internet) et/ou que des messages destinés à certaines adresses (par exemple le MTA de wikipedia n'accepte que les messages destinés à des adresses en @wikipedia.org)
  • non-respect des normes : si un message ne correspond pas aux normes applicables aux courriers électroniques, ou que le protocole SMTP n'est pas strictement respecté par le logiciel expéditeur
  • expéditeur en liste noire : les serveurs connus comme étant utilisés par les spammeurs sont répertoriés dans des listes noires ; certains MTA rejettent les messages expédiés depuis ces serveurs

Le rejet d'un message provoque généralement l'envoi d'un email à l'expéditeur l'informant que le message a été refusé. Cependant, cela est de moins en moins systématique en raison de l'engorgement des réseaux et de la multiplication des virus et spammeurs qui indiquent une fausse adresse d'expéditeur.

Transfert d'un message[modifier | modifier le code]

Les messages reçus et non rejetés sont transférés au MTA du destinataire, sauf si celui-ci est le MTA traitant actuellement le mail : dans ce cas le message est transféré à un MDA, c'est-à-dire d'agent de livraison, voire traité directement dans certains cas (certains MTA faisant également office de MDA).

Gestion des indisponibilités[modifier | modifier le code]

Serveurs secondaires[modifier | modifier le code]

La plupart des réseaux disposent d'au moins deux MTA, un primaire et un secondaire, ce dernier permettant de pallier les défaillances du premier. Les serveurs secondaires ne fournissent pas toujours tous les services du serveur primaire, il est courant qu'ils se contentent de stocker les messages jusqu'à la remise en service du serveur primaire auquel les messages en attente sont alors transférés.

Principe de file d'attente[modifier | modifier le code]

Lorsqu'un MTA veut transférer un message à un MTA qui est indisponible, il met ce message dans sa file d'attente : il essaiera plusieurs fois de retransmettre le message, jusqu'à ce que le MTA destinataire soit à nouveau disponible. Au-delà d'un certain nombre d'essais infructueux (ou d'une certaine durée selon la configuration), le message sera rejeté par le MTA.

Liste grise[modifier | modifier le code]

Les MTA de spammeurs ne gèrent pas tous une file d'attente. Certains MTA utilisent cette particularité pour filtrer les spams avec un système dit de liste grise :

  • lorsqu'un message est reçu pour la première fois depuis un serveur donné, le serveur simule une indisponiblité
  • lorsque le message est reçu une seconde fois (après passage dans la file d'attente du MTA expéditeur), il est correctement traité.
  • les messages envoyés ultérieurement par le même serveur seront acceptés immédiatement pour éviter un engorgement global de tous les serveurs.

Ainsi, les messages envoyés depuis des MTA ne gérant pas de liste d'attente ne sont jamais distribués.

Delivery Status Notification[modifier | modifier le code]

Un Delivery Status Notification est un message électronique envoyé automatiquement par le Mail Transfer Agent pour signaler un problème.

Delivery Statut Notification (DSN).

Message électronique automatique contenant le code de livraison d'un courriel.
Codes erreurs :
Success (2.X.X numeric codes)
Persistent transient failure (4.X.X numeric codes)
Permanent failures (5.X.X numeric codes)

Voir aussi[modifier | modifier le code]

Articles connexes[modifier | modifier le code]