Pourquoi l'en-tête de courrier électronique "Reçu: … par" affiche-t-il le port?

J'ai récemment eu un problème avec un courrier indésirable avec une enveloppe – consistant en ma propre adresse. Au début, je pensais que cela signifiait que mon mot de passe avait été compromis, pensant à tort que "avec esmtp (Exim 4.87)" dans la clause "par" de l'en-tête Reçu de mon server de messagerie signifiait qu'il venait à une connection authentifiée. Mon fournisseur de messagerie m'a rapidement corrigé, que les messages entrants proviennent de MTA et les MTA ne s'authentifient pas lors du passage d'un message. Ainsi, il pourrait tout aussi facilement (et très probablement) passer par un relais ouvert, car les adresses IP étaient toutes répertoriées sur 15 lists noires ou plus.

Lorsque j'envoie un courrier de Thunderbird, je me connecte au port 587 et que ce port nécessite une authentification. Si je pouvais regarder les en-têtes et voir que la connection au server de mon ISP était sur le port 587, je saurais que l'expéditeur était authentifié, et s'il avait ma propre adresse comme enveloppe, alors je saurais que mon mot de passe avait été compromis, n'est-ce pas? Eh bien, je suppose que tout server de la trace peut modifier les en-têtes précédents, mais dans ces cas, il n'y a pas d'autres servers dans la trace. Et même s'il y en avait, il n'est pas clair pourquoi un server souhaiterait modifier le numéro de port donné dans un en-tête précédent.

J'ai essayé de requestr au fournisseur de messagerie s'ils pouvaient append le port à leur clause "Received by" et n'ont pas eu de réponse significative. J'ai goûté un peu pour voir si sendmail avait une option pour le faire, mais n'allez nulle part. Cependant, je suppose que l'en-tête me dit qu'ils utilisent Exim plutôt que sendmail, et ce lien montre où le contenu de l'en-tête est configuré dans Exim, bien qu'il ne dise pas comment se référer au numéro de port entrant dans le text.

Mais étant donné que le numéro de port semble fournir des informations très précieuses à quiconque s'occupe du courrier indésirable des expéditeurs défectueux, je me request pourquoi il n'est pas inclus par défaut.

Le numéro de port ne serait pas utile dans une ligne Received: car il existe des ports standard pour le transport de courrier électronique, et l'utilisation de ports alternatifs n'est pas vraiment possible.

Si vous souhaitez savoir si un message a été authentifié par un expéditeur, vous pouvez find cette information dans la ligne Received: en vérifiant le protocole avec lequel elle a été reçue. Cela commence par "SMTP" et les extensions sont ajoutées au début et se terminent en fonction de différents critères. Si le message a été authentifié, il aura un "A" à la fin, comme spécifié dans RFC 3848 . Un exemple:

 Received: from pool-70-20-60-215.man.east.myfairpoint.net (pool-70-20-60-215.man.east.myfairpoint.net [70.20.60.215]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificatee requested) by mail.example.com (Postfix) with ESMTPSA id C540E956034; Wed, 27 Jul 2016 18:35:17 +0000 (UTC)