emailr_
Tous les articles
list·9 min

10 analyseurs d’e-mails pour le débogage

outilsen-têtesdébogage

Résumé

Les en-têtes d'e-mail racontent l'histoire du parcours d'un message. Ces outils décodent les données cryptiques en informations de débogage exploitables.

Le ticket de support était frustrant par son manque de précision : "Je ne reçois pas les e-mails provenant de votre système." Les journaux indiquaient que l’e-mail avait été envoyé avec succès. L’ESP signalait qu’il avait été délivré. Mais le client affirmait qu’il n’était jamais arrivé.

La réponse était enfouie dans les en-têtes de l’e-mail — une trace d’horodatages, de noms de serveurs et de résultats d’authentification retraçant le parcours du message de l’envoi à la (non-)livraison. Quelque part dans ce parcours, quelque chose s’est mal passé. Mais lire des en-têtes bruts, c’est comme lire du code assembleur : techniquement possible, mais atrocement lent.

Les analyseurs d’en-têtes d’e-mail interprètent les données cryptiques des en-têtes en informations lisibles. Ils vous montrent le chemin qu’a emprunté un e-mail, la durée de chaque saut, si l’authentification a réussi et où les problèmes sont survenus. Lorsque vous déboguez des problèmes de livraison, ils sont indispensables.

Comment récupérer les en-têtes

Avant de pouvoir analyser des en-têtes, vous devez les extraire. Chaque client de messagerie les cache différemment.

Dans Gmail, ouvrez l’e-mail, cliquez sur le menu à trois points, puis sélectionnez "Afficher l’original". Vous verrez le message brut, incluant tous les en-têtes. Copiez tout ce qui se trouve au-dessus du contenu réel du message.

Dans Outlook, ouvrez l’e-mail, cliquez sur Fichier > Propriétés et recherchez "En-têtes Internet" en bas de la boîte de dialogue. La zone de texte est petite et peu pratique, mais les en-têtes y sont.

Dans Apple Mail, sélectionnez l’e-mail, puis Présentation > Message > Source brute. Les en-têtes se trouvent en haut du message brut.

Pour un accès programmatique, la plupart des API de messagerie renvoient les en-têtes dans les données du message. Si vous déboguez votre propre système, vous pouvez journaliser les en-têtes lors du traitement du courrier entrant.

Les analyseurs

Google Admin Toolbox inclut un analyseur d’en-têtes simple et efficace. Collez vos en-têtes et il les transforme en une chronologie lisible affichant chaque saut de serveur, les horodatages, les délais et les résultats d’authentification. La visualisation facilite l’identification des endroits où des retards se sont produits ou où l’authentification a échoué.

Il est gratuit, ne nécessite aucun compte et gère correctement la plupart des formats d’en-têtes courants. Pour une analyse rapide, c’est souvent le premier outil à utiliser.

MXToolbox Header Analyzer offre des fonctionnalités similaires avec du contexte supplémentaire. Au-delà de l’analyse des en-têtes, il explique la signification de chaque champ et signale des problèmes potentiels. Si SPF a échoué, il vous dit pourquoi. S’il y a eu un délai inhabituel, il le met en évidence.

MXToolbox propose également des outils associés — vérification des listes noires, requêtes DNS, diagnostics SMTP — qui complètent l’analyse des en-têtes. Lors du débogage des problèmes de livraison, vous avez souvent besoin de plusieurs outils, et les avoir au même endroit est pratique.

Mail Header Analyzer de WhatIsMyIPAddress est simple et rapide. Collez des en-têtes, obtenez une analyse détaillée. L’interface est dépouillée, mais elle fait le travail de manière fiable. La décomposition saut par saut montre clairement le chemin, et les résultats d’authentification sont mis en évidence.

Messageheader de Google est un autre outil Google (distinct de Admin Toolbox) qui se concentre sur l’analyse de l’authentification. Il est particulièrement performant pour expliquer les résultats DMARC, SPF et DKIM en langage simple. Si vous déboguez spécifiquement des échecs d’authentification, cette analyse ciblée est utile.

Outils axés sur l’authentification

L’outil d’en-têtes de DMARC Analyzer se concentre spécifiquement sur les résultats d’authentification. Il analyse les résultats SPF, DKIM et DMARC, en expliquant non seulement succès/échec, mais aussi pourquoi. Si DKIM a échoué en raison d’une modification du corps pendant le transit, il vous le dit. Si SPF a échoué parce que l’adresse IP d’envoi n’est pas dans votre enregistrement, il identifie l’IP.

Pour le débogage de l’authentification en particulier, les explications détaillées font gagner beaucoup de temps par rapport à l’interprétation manuelle des en-têtes Authentication-Results.

L’analyseur d’en-têtes de Dmarcian se concentre de la même manière sur l’authentification, avec des visualisations claires de la chaîne d’authentification. Leur outil montre comment l’évaluation DMARC a fonctionné — quels identifiants étaient alignés, quels contrôles ont réussi et quel a été le résultat final.

Si vous implémentez ou dépannez DMARC, leurs outils (y compris l’analyseur d’en-têtes) fournissent les explications les plus claires disponibles.

Outils pour développeurs

Pour les développeurs qui doivent analyser des en-têtes de manière programmatique, il existe des bibliothèques dans la plupart des langages. Le module email.parser de Python gère l’analyse des en-têtes. Node.js dispose de mailparser. Ces outils vous permettent d’intégrer l’analyse des en-têtes à vos propres outils de débogage ou à votre surveillance automatisée.

L’avantage de l’analyse programmatique est l’automatisation. Si vous traitez de gros volumes d’e-mails et devez identifier des schémas dans les problèmes de livraison, une analyse scriptée s’adapte mieux que l’utilisation manuelle d’outils.

Haraka, le serveur SMTP Node.js, inclut l’analyse des en-têtes dans son écosystème de plugins. Si vous exécutez Haraka pour le traitement des e-mails, vous pouvez analyser les en-têtes dans votre flux de courrier plutôt que comme une étape de débogage distincte.

Ce qu’il faut rechercher

Les analyseurs d’en-têtes présentent les données, mais vous devez savoir ce qui importe.

Les horodatages vous renseignent sur les retards. Chaque serveur qui traite l’e-mail ajoute un en-tête Received avec un horodatage. La comparaison des horodatages montre la durée de chaque saut. Un message qui a pris 30 secondes au total mais en a passé 25 sur un seul saut présente un goulet d’étranglement à investiguer.

Les résultats d’authentification indiquent si SPF, DKIM et DMARC ont réussi. Recherchez l’en-tête Authentication-Results ajouté par le serveur destinataire. Les échecs ici expliquent souvent pourquoi les e-mails atterrissent dans le spam. Les analyseurs interprètent ces résultats, mais comprendre ce qu’ils signifient implique de connaître le fonctionnement de l’authentification des e-mails.

Le chemin montre quels serveurs ont traité l’e-mail. Des serveurs inattendus sur le chemin peuvent indiquer un transfert (qui peut casser l’authentification) ou des problèmes de routage. Le chemin doit être cohérent avec votre infrastructure de messagerie.

Les scores de spam, lorsqu’ils sont présents, montrent comment le serveur destinataire a évalué le message. Certains serveurs ajoutent des en-têtes X-Spam-Score ou similaires. Des scores élevés indiquent des problèmes de contenu ou de réputation.

Return-Path et les informations d’enveloppe indiquent l’expéditeur technique, qui peut différer de l’adresse From visible. Des divergences ici peuvent indiquer un transfert ou une usurpation potentielle.

Quand les en-têtes ne suffisent pas

Les en-têtes vous disent ce qui s’est passé, pas toujours pourquoi. Si un e-mail a été rejeté, les en-têtes peuvent montrer le rejet sans en donner la raison détaillée. Pour cela, vous avez besoin des journaux SMTP du serveur d’envoi, qui capturent les messages d’erreur renvoyés pendant la livraison.

Les en-têtes ne peuvent pas non plus vous renseigner sur les e-mails qui n’ont jamais été envoyés. Si votre système a échoué avant de remettre l’e-mail au serveur de courrier, il n’y a pas d’en-têtes à analyser. Les journaux applicatifs sont l’outil de débogage pour les échecs avant l’envoi.

Pour les problèmes de délivrabilité au-delà des e-mails individuels — problèmes de réputation, mise sur liste noire, filtrage de spam systématique — les en-têtes fournissent des points de données mais pas l’image complète. Les outils de surveillance de la délivrabilité complètent l’analyse des en-têtes pour les problèmes plus larges.

Frequently asked questions

Pourquoi les en-têtes affichent-ils plusieurs entrées Received ?

Chaque serveur qui traite un e-mail ajoute son propre en-tête Received. L’e-mail peut passer par votre serveur applicatif, les serveurs de votre ESP, des relais intermédiaires et les serveurs de messagerie du destinataire. Chaque saut ajoute un en-tête, créant la trace du parcours du message.

Que signifie « softfail » dans les résultats SPF ?

Le softfail SPF (~all dans votre enregistrement SPF) signifie que l’IP d’envoi n’est pas autorisée, mais que vous n’êtes pas assez sûr pour demander un rejet. Les serveurs destinataires acceptent généralement l’e-mail mais peuvent le traiter avec suspicion. C’est un signal plus faible que le hardfail (-all), qui demande le rejet.

Les en-têtes peuvent-ils être falsifiés ?

Les en-têtes ajoutés par des serveurs que vous ne contrôlez pas sont dignes de confiance (ils sont ajoutés par l’infrastructure de réception). Les en-têtes présents au moment de l’envoi peuvent potentiellement être falsifiés par l’expéditeur. C’est pourquoi l’authentification (SPF, DKIM, DMARC) est importante — elle fournit des informations vérifiées qui ne peuvent pas être falsifiées.

Comment trouver les en-têtes d’un e-mail qui n’a pas été délivré ?

Si l’e-mail n’a jamais été délivré, le destinataire n’a pas d’en-têtes à partager. Vous devrez consulter les journaux de votre serveur d’envoi pour la transaction SMTP, qui afficheront les réponses d’erreur du serveur destinataire. Les journaux du serveur d’envoi sont votre ressource de débogage pour les livraisons échouées.

e_

Écrit par l'équipe emailr

Nous construisons l'infrastructure email pour les développeurs

Prêt à commencer à envoyer ?

Obtenez votre clé API et envoyez votre premier email en moins de 5 minutes. Aucune carte de crédit requise.