web-dev-qa-db-fra.com

en-têtes de messagerie smtp: chemin de retour vs expéditeur vs de

Veuillez m'aider à passer une commande avec des en-têtes d'email.

Que signifie chacun des éléments suivants: chemin de retour, expéditeur, à partir de.

La question est posée dans le contexte d'une application de réception d'e-mails (disons un posterous clone).

  • Que peut-on facilement truquer?
  • Que peut-on vérifier?
  • Dans quelles circonstances les trois ou deux d'entre eux peuvent-ils différer?
27
flybywire

Basé sur mon expérience -

  • De la personne qui a écrit l'e-mail. Cela peut être défini par le logiciel de messagerie de l'utilisateur.

  • Return-Path est l'adresse où les messages de rebond (notifications non livrables, etc.) doivent être livrés. Il peut être défini par le serveur de messagerie d'envoi ou de réception, ou parfois par le logiciel de messagerie de l'utilisateur. Pour un message normal, il s'agit généralement de la même adresse que l'expéditeur. Certains messages (souvent des messages générés par le système) peuvent utiliser un chemin de retour différent et les messages de rebond le laissent généralement vide.

  • L'expéditeur est la personne qui a envoyé l'e-mail, s'il est différent de l'expéditeur ("Envoyé par Expéditeur au nom de Expéditeur"). Parfois, cela est défini par le logiciel de messagerie de l'utilisateur et parfois par son serveur de messagerie. Si elle est présente, elle doit être différente de l'adresse de l'expéditeur.

Ces en-têtes peuvent tous être truqués assez facilement, donc la vérification est à peu près terminée.

Cependant, si le domaine d'envoi a un enregistrement SPF, vous pouvez vérifiez les en-têtes reçus par rapport à la liste des serveurs de messagerie approuvés pour ce domaine. Cela vous indiquera au moins si le message provient vraiment de ce domaine, mais cela ne garantit pas que l'utilisateur en particulier l'a envoyé (il pourrait être usurpé par un autre utilisateur sur le même domaine). De plus, tous les domaines ne publient pas d'enregistrements SPF, ce n'est donc pas toujours une option.

32
Bill B

L'en-tête "De" signifie qu'il s'agit de la personne d'où provient le message. C'est de qui le client de messagerie du destinataire doit afficher le message.

L'en-tête Return-Path spécifie où les réponses (ou rebonds/NDR) doivent être livrées. Cela peut être différent de l'adresse "De" dans le cas des listes de diffusion, et de nombreux messages automatisés où les rebonds sont envoyés à un système qui supprime les adresses non livrables.

L'expéditeur peut être considéré comme une version plus spécifique de l'en-tête From. Si le message a été émis par quelqu'un ou un autre système, c'est l'adresse de provenance réelle. Des exemples peuvent être gmail lorsqu'il est configuré pour un domaine non hébergé par Gmail. Dans ce cas, l'en-tête From contiendrait "[email protected]", mais l'expéditeur serait "[email protected]". De nombreux clients de messagerie affichent désormais ceci comme'[email protected] au nom de [email protected] '. L'en-tête "Expéditeur" doit être utilisé à des fins d'authentification du courrier (SPF/DKIM) car c'est le système qui a réellement généré le message.

8
Brandon

J'ajouterais que d'après notre expérience, vous ne pouvez pas vérifier qui envoie le message à partir des en-têtes.

Pour cette raison, beaucoup de gens mettront en œuvre des adresses jetables ([email protected]) et donneront à chaque message sortant une adresse à envoyer pour valider qui envoie le message. Certains autres utilisateurs incluent quelque chose dans la ligne d'objet.

The Posterous FAQ's suggère qu'ils font quelque chose en plus pour s'assurer que vous êtes bien ce que vous dites être. Vous pouvez par exemple suivre l'IP/DNS du serveur qui envoie des e-mails à votre serveur de messagerie la première fois, puis demander à un utilisateur de confirmer si vous pensez qu'il y a un problème. Bien qu'il soit facile d'usurper les en-têtes, il n'est pas facile de recevoir leur courrier entrant.

0
Steve Smith