Informations :
Dates
- Publish : : Monday 01 february 2010
- Modification : Friday 11 august 2023
- 3767 views
Share :
NdM : 2022/02/21 - Modification rédactionnel (ajout des Status Code des retours des serveurs mails destinataires) ...
NdM : 2023/08/11 - Exemple de scripts pour récupérer les adresses mails fermées/unavailable ...
Status des messages de retour Mail
Si vous souhaitez analyser les messages de retour d'un mail envoyé/réceptionné, ci-dessous quelques informations qui vous aideront.
#SMTPreturnCode #SMTPCode : traduction des messages d'erreur de retour mail.
Message d'erreur standard en anglais | Traduction | |
---|---|---|
|
|
|
Signification : En quelque sorte, le "facteur électronique". | ||
|
|
|
Signification : Une erreur est survenue lors du traitement de votre message. Le "facteur électronique" qui a constaté cette erreur vous envoie un message où il vous indique, la plupart du temps en anglais, quelle erreur il a rencontrée. | ||
|
|
|
Signification : Un ou plusieurs destinataires de votre message n'ont pas reçu ledit message. Ce message d'erreur est généralement suivi d'un autre message plus court comme ceux abordés plus loin où figureront la ou les adresses e-mail qui ont causé l'erreur. |
||
|
|
|
Signification : Fichier joint contenant le rapport détaillé des erreurs rencontrées. Vous pouvez ouvrir ce fichier avec le Bloc-Notes de Windows ou votre traitement de texte par exemple. | ||
|
|
|
Signification : La boîte e-mail de votre correspondant est saturée. Il ne reste plus qu'à lui envoyer un message moins lourd (sans image par exemple) ou à lui téléphoner en lui demandant de faire le vide dans sa boîte... Il se peut que vous receviez ce message sans avoir écrit à personne. Il s'agit alors de votre propre compte e-mail qui est saturé. Allez vite sur votre webmail pour faire de la place en supprimant des messages. Ensuite, si vous utilisez un logiciel de messagerie (ex. : Outlook, Thunderbird...), vous pouvez éventuellement ajuster les paramètres "Conserver les messages sur le serveur" et "Supprimer les messages du serveur après XX jours". |
||
|
|
|
Signification : Vous essayez d'envoyer un message qui est trop volumineux (à cause de la ou des pièces jointes) compte tenu des limites fixées par votre système de messagerie électronique ou par celui du destinataire. Si possible, envoyez vos pièces jointes en plusieurs fois, ou alors utiliser un service tel que dl.free.fr . | ||
|
|
|
Signification : Soit vous avez fait une faute dans l'adresse de votre correspondant au niveau de la partie "utilisateur", soit la boîte e-mail de votre correspondant a été supprimée. Vérifiez l'orthographe, et si elle était erronée, tentez un nouvel envoi. (Vous pouvez éventuellement voir si vous n'avez pas oublié un point quelque part, ou confondu le tiret du 6 avec le tiret du 8...) |
||
|
|
|
Signification : Soit vous avez fait une faute d'orthographe au niveau de l'hôte de votre correspondant, soit le "facteur électronique" de votre correspondant est en panne. Vérifiez l'orthographe de l'hôte et tentez un nouvel envoi. Il se peut également que l'hôte de votre correspondant n'existe plus. Vérifiez si le site web correspondant est toujours en ligne. |
||
|
|
|
Signification : Votre logiciel de messagerie est probablement mal configuré (votre adresse en tant qu'expéditeur est mal orthographiée au niveau de l'hôte). Vérifiez, corrigez et réessayez. | ||
|
|
|
Signification : Le "facteur électronique" de votre correspondant ne répond pas. Votre message est donc en attente depuis 4 heures. De nouvelles tentatives d'envoi seront faites automatiquement et régulièrement pendant généralement 5 jours en tout (laissez faire et attendez). Au-delà de ce délai, votre message sera détruit. Vous recevrez alors un nouveau message d'erreur. Vous pourrez alors réessayer d'envoyer un message en espérant que le "facteur électronique" de votre correspondant soit de nouveau opérationnel. | ||
|
|
|
Signification : Le message que vous avez envoyé initialement vous est rappelé (dans son format brut) pour information. | ||
|
|
|
Signification : Lorsque le message d'erreur vous rappelle votre message initial, la fin de votre message peut avoir été coupée pour éviter que le message d'erreur soit trop volumineux. | ||
|
|
|
Signification : Votre hôte a probablement été banni (peut-être temporairement) par l'hôte de votre destinataire pour avoir été trop laxiste avec les spammeurs. Le plus simple est d'écrire à votre correspondant depuis une autre adresse (avec un hôte différent). Vous pouvez également attendre 4 heures (banissement temporaire, voir explications de Yahoo! ) puis tenter d'envoyer à nouveau le message avec votre adresse initiale. |
||
|
|
|
Signification : Votre message a été bloqué et rejeté , soit parce qu'il ressemblait à un spam, soit parce que votre hôte a la réputation d'envoyer du spam. Essayez de modifier (simplifier, enlever les liens inutiles...) le contenu de votre message, ou envoyez-le depuis une adresse avec un hôte différent.
|
||
Plus d'informations ici : http://www.rfc-editor.org/rfc/rfc1893.txt
SMTP Error Codes ("send" codes dans la console à l'envoie d'un mail)
Ci-dessous la liste des codes d'erreurs SMTP. Traduction de cette page : USPS SMTP Error Codes
Code 420
Délai de connexion au problème : des problèmes sont survenus pendant le transfert du message.
Ce message d'erreur est généré uniquement par les serveurs GroupWise. Soit votre email a été bloqué par le pare-feu du destinataire, soit il y a un problème matériel. Vérifiez auprès de votre fournisseur.
Code 421
Le service est indisponible en raison d'un problème de connexion: il peut s'agir d'un dépassement du nombre de connexions simultanées ou d'un problème temporaire plus général.
Le serveur (le vôtre ou celui du destinataire) n'étant pas disponible pour le moment, l'envoi sera réessayé ultérieurement.
Code 422
La boîte aux lettres du destinataire a dépassé sa limite de stockage.
Le mieux est de contacter l'utilisateur via un autre canal pour le prévenir et lui demander de créer de la place libre dans sa boîte aux lettres.
Code 431
Espace disque insuffisant ou condition mémoire insuffisante en raison d'une surcharge de fichier.
Cette erreur peut dépendre d'un trop grand nombre de messages envoyés à un domaine particulier. Vous devriez essayer à nouveau d'envoyer de plus petits ensembles d'emails au lieu d?un gros envoi mail.
Code 432
Message latéral typique: La file d'attente du courrier entrant du serveur Exchange Server du destinataire a été arrêtée.
C'est un code d'erreur SMTP d'un serveur Microsoft Exchange. Vous devriez le contacter pour obtenir plus d'informations: c'est généralement dû à un problème de connexion.
Code 441
Le serveur du destinataire ne répond pas.
Il y a un problème avec le serveur entrant de l'utilisateur: le vôtre essaiera de le contacter à nouveau.
Code 442
La connexion a été interrompue pendant la transmission.
Un problème de connexion réseau typique, probablement dû à votre routeur: vérifiez-le immédiatement.
Code 446
Le nombre de sauts maximum a été dépassé pour le message: une boucle interne s'est produite.
Demandez à votre fournisseur SMTP de vérifier ce qui s'est passé.
Code 447
Votre message sortant a expiré en raison de problèmes liés au serveur entrant.
Cela se produit généralement lorsque vous avez dépassé le nombre limite de destinataires de votre serveur pour un message. Essayez de l'envoyer à nouveau en segmentant la liste en différentes parties.
Code 449
Une erreur de routage.
Comme l'erreur 432, elle concerne uniquement Microsoft Exchange. Utilisez WinRoute.
Code 450
Action requise non effectuée. La boîte aux lettres de l'utilisateur n'est pas disponible. La boîte aux lettres a été corrompue ou placée sur un serveur hors ligne, ou votre courrier électronique n'a pas été accepté pour des problèmes IP ou une liste noire.
Le serveur réessayera d'envoyer le message à nouveau, après un certain temps. Quoi qu'il en soit, vérifiez que votre adresse IP est fiable.
Code 451
Action demandée annulée. Erreur locale lors du traitement. Le serveur de votre FAI ou le serveur qui a reçu un premier relais de votre part a rencontré un problème de connexion.
Il s'agit normalement d'une erreur transitoire due à une surcharge de messages, mais elle peut également faire référence à un rejet dû à un filtre antispam distant. Si le problème se répète, demandez à votre fournisseur SMTP de vérifier la situation. (Si vous envoyez un gros courrier électronique avec un courrier gratuit, cela peut être un problème courant).
Code 452
Trop d'e-mails envoyés ou trop de destinataires : plus généralement, la limite de stockage du serveur est dépassée.
Encore une fois, la cause typique est une surcharge de messages. Habituellement, le prochain essai aboutira: en cas de problème sur votre serveur, un message latéral du type Mémoire insuffisante s'affichera.
Code 471
Une erreur de votre serveur de messagerie, souvent due à un problème de filtre anti-spam local.
Contactez votre fournisseur de services SMTP pour résoudre le problème.
Code 500
Une erreur de syntaxe: le serveur n'a pas pu reconnaître la commande.
Cela peut être dû à une mauvaise interaction du serveur avec votre pare-feu ou votre antivirus. Lisez attentivement leurs instructions pour le résoudre.
Code 501
Une autre erreur de syntaxe, pas dans la commande mais dans ses paramètres ou arguments.
Dans la plupart des cas, cela est dû à une adresse électronique invalide, mais elle peut également être associée à des problèmes de connexion (et encore une fois, à un problème concernant les paramètres de votre antivirus).
Code 502
La commande n'est pas implémentée.
La commande n'a pas encore été activée sur votre propre serveur. Contactez votre fournisseur pour en savoir plus.
Code 503
Le serveur a rencontré une mauvaise séquence de commandes ou nécessite une authentification.
En cas de séquence incorrecte, le serveur a exécuté ses commandes dans un ordre incorrect, généralement à cause d'une connexion interrompue. Si une authentification est nécessaire, vous devez entrer votre nom d'utilisateur et votre mot de passe.
Code 504
Un paramètre de commande n'est pas implémenté.
Comme l'erreur 501, il s'agit d'un problème de syntaxe. vous devriez demander à votre fournisseur.
Code 510
Mauvaise adresse email.
L'une des adresses de votre ligne TO, CC ou BBC n'existe pas. Vérifiez à nouveau les comptes de vos destinataires et corrigez les fautes d?orthographe.
Code 511
Mauvaise adresse email.
L'une des adresses de votre ligne TO, CC ou BBC n'existe pas. Vérifiez à nouveau les comptes de vos destinataires et corrigez les fautes d?orthographe.
Code 512
Une erreur DNS.
Vérifiez à nouveau toutes les adresses de vos destinataires: il y aura probablement une erreur dans un nom de domaine (comme mail (at) domaine (dot) coom au lieu de mail (at) domaine (dot) com ).
Code 523
La taille totale de votre mailing dépasse les limites du serveur destinataire.
Renvoyez votre message en divisant la liste en sous-ensembles plus petits.
Code 530
Normalement, un problème d'authentification. Mais parfois, il s'agit de la liste noire du serveur du destinataire, ou d'une adresse électronique invalide.
Configurez vos paramètres en fournissant une authentification nom d'utilisateur + mot de passe. Si l'erreur persiste, vérifiez toutes les adresses de vos destinataires et si vous avez été mis sur la liste noire.
Code 541
L'adresse du destinataire a rejeté votre message: normalement, c'est une erreur provoquée par un filtre anti-spam.
Votre message a été détecté et étiqueté comme spam. Vous devez demander au destinataire de vous mettre en liste blanche.
Code 550
Il définit généralement une adresse électronique inexistante du côté distant.
Bien qu'il puisse également être renvoyé par le pare-feu du destinataire (ou lorsque le serveur entrant est en panne), la grande majorité des erreurs 550 indiquent simplement que l'adresse électronique du destinataire n'existe pas. Sinon, vous devez contacter le destinataire et obtenir la bonne adresse.
Code 551
Adresse non locale ou invalide. Relais refusé. Cela signifie que si votre adresse et celle du destinataire ne sont pas hébergées localement par le serveur, un relais peut être interrompu.
C'est une stratégie (pas très intelligente) pour empêcher le spam. Vous devez contacter votre fournisseur de services Internet et lui demander de vous autoriser en tant qu'expéditeur certifié.
Code 552
Actions de messagerie demandées abandonnées. Allocation de stockage dépassée : tout simplement, la boîte aux lettres du destinataire a dépassé ses limites.
Essayez d'envoyer un message plus léger : cela se produit généralement lorsque vous envoyez des e-mails contenant de grandes pièces jointes. Vérifiez-les dabord.
Code 553
Action demandée non prise. Nom de boîte aux lettres invalide. C'est-à-dire qu'il y a une adresse email incorrecte dans la ligne des destinataires.Vérifiez toutes les adresses dans les champs TO, CC et BCC. Il devrait y avoir une erreur ou une faute d'orthographe quelque part.
Code 554
Cela signifie que la transaction a échoué. C'est une erreur permanente et le serveur ne tentera plus d'envoyer le message.
Le serveur entrant pense que votre courrier électronique est du spam ou votre adresse IP a été mise sur la liste noire. Vérifiez attentivement si vous vous êtes retrouvé dans certaines listes de courrier indésirable.
Analyser les retours des serveurs SMTP destinataire
Pour compter les mails en file d'attente Postfix :
Pour savoir quels domaines ont beaucoup de mails deferred en réception :
/opt/zimbra/bin/qshape deferred
Si vous ne trouvez pas ou que vous n'utilisez pas zimbra - rechercher une commande avec which qshape
logiquement dans /usr/sbin/
ou /usr/bin/
Script avec 21 lignes
001T 5 10 20 40 80 160 320 640 1280 1280+
002TOTAL 8380 9 6 5 20 49 82 241 403 816 6749
003yahoo.fr 2866 2 1 0 6 15 30 88 142 315 2267
004free.fr 2259 2 1 3 3 14 15 54 105 203 1859
005aol.com 1189 1 2 0 1 10 24 41 77 123 910
006voila.fr 1003 3 2 0 2 6 6 26 40 100 818
007tele2.fr 286 1 0 1 1 1 0 6 13 21 242
008libertysurf.fr 202 0 0 1 2 1 3 7 5 15 168
009yahoo.com 71 0 0 0 1 0 0 3 4 8 55
010infonie.fr 65 0 0 0 0 1 2 1 4 5 52
011chello.fr 63 0 0 0 0 0 0 3 1 3 56
012ifrance.com 54 0 0 0 0 0 1 1 1 2 49
013aliceadsl.fr 41 0 0 0 1 0 0 2 2 1 35
014worldonline.fr 28 0 0 0 0 0 0 1 0 2 25
015freesbee.fr 21 0 0 0 0 0 0 1 0 0 20
016nomade.fr 12 0 0 0 0 0 0 1 2 0 9
017online.fr 9 0 0 0 0 0 0 0 1 0 8
018boursorama.com 7 0 0 0 0 0 0 0 0 0 7
019laposte.net 6 0 0 0 1 0 0 0 0 2 3
020yahoo.ca 5 0 0 0 1 0 0 0 0 0 4
021clubobs.com 5 0 0 0 0 0 0 0 2 0 3
/opt/zimbra/bin/qshape -s active
Script avec 3 lignes
001T 5 10 20 40 80 160 320 640 1280 1280+
002TOTAL 1 1 0 0 0 0 0 0 0 0 0
003web.zw3b.net 1 1 0 0 0 0 0 0 0 0 0
On pourrait faire une analyse rapide (mais fausse) des les mails en file d'attente Postfix :
Script avec 1 ligne
001/opt/zimbra/common/sbin/postqueue -p | grep '@' -B2 --no-group-separator | awk '{print $1}' | sed -e '/(@)/d' | sed -e '/(suspended|lost|Host|host|delivery|connect)/d' | sed -e '/^$/d' | wc -l
Qui doit retourner logiquement la même valeur que qshape deferred
:/ haha :/ C'est mon expression régulière qui est fausse !
Exemples de commande pour trouver plus particulièrement pour les erreurs 5yz (Permanent Negative Completion Reply) dans les mails deferred
Par exemple - le retour 500 du serveur SMTP destinataire :
Script avec 2 lignes
001// Error : 500
002/usr/sbin/postqueue -p | grep 'said: 500' -B1 --no-group-separator | awk '{print $1}' | sed -e '/(suspended|lost|Host|host|delivery|connect)/d' | wc -l
Par exemple - le retour 422 du serveur SMTP destinataire - La boîte aux lettres du destinataire a dépassé sa limite de stockage :
Script avec 3 lignes
001// La boîte aux lettres du destinataire a dépassé sa limite de stockage.
002// Error : 422
003/usr/sbin/postqueue -p | grep 'said: 422' -B1 --no-group-separator | awk '{print $1}' | sed -e '/(suspended|lost|Host|host|delivery|connect)/d' | wc -l
Les Status de retour mail des serveurs destinataires - Undelivered Mail Returned to Sender
Maintenant que j'ai configuré mon serveur de mail zimbra avec DMARC, l'authentification et la conformité des messages basés sur le domaine et création de rapports.
En passant, en suivant ce super tutoriel :) [Zimbra] Les bonnes pratiques pour un serveur mail SPF / DKIM / DMARC .
DMARC (Domain-based Message Authentication, Reporting, and Conformance) standardise la façon dont les destinataires (au sens des MTA destinataires) réalisent l'authentification des courriels en utilisant les mécanismes de Sender Policy Framework (SPF) et de DomainKeys Identified Mail (DKIM).
Cela signifie que l'expéditeur (au sens d'un MTA expéditeur) recevra les résultats de l'authentification de ses messages par tout destinataire qui implémente DMARC et donc que je reçois les messages de retour des mails non transmis.
J'ai, donc, un serveur mail PHP authentifié et conforme à la RFC 7489 normalisé par l'Internet Engineering Task Force (IETF) .
Et maintenant je reçois les mails non réceptionnés par les destinataires (envoyé depuis mes scripts PHP) avec les erreurs des retour.
- Les messages (mails) ont le titre suivant : "Undelivered Mail Returned to Sender"
- et l'adresse de l'expéditeur "Mail Delivery System : MAILER-DAEMON@mta.zw3b.net"
Tout de plus normal - Mon serveur mail d'envoie a recus un résultat du serveur mail destinataire et me le retourne.
Je peut et doit vider ma base de données des mails invalide maintenant pour ne pas saturer inutilement les serveurs mails destinataires.
Analyse des Status des retours mail de serveurs MTA destinataires
Status code dans le corps des messages de retour (à l'envoyeur) s'il y a eu une erreur de réception.
Ci dessous les différents messsages de retours que j'ai recus.
Les erreurs 550 peuvent avoir plusieurs Status :
Status: 5.0.0
- mailbox unavailable- Diagnostic-Code: smtp; 550 Requested action not taken: mailbox unavailable
Status: 5.5.0
- mailbox unavailable- Diagnostic-Code: smtp; 550 5.5.0 Requested action not taken: mailbox unavailable
- Diagnostic-Code: smtp; 552 1 Requested mail action aborted, mailbox not found
- Diagnostic-Code: smtp; 552 3 Requested mail action aborted, mailbox not found
Status: 5.1.1
- Adresse destinataire invalide. Invalid recipient- Diagnostic-Code: smtp; 550 5.1.1: Adresse destinataire invalide. Invalid recipient.
- Diagnostic-Code: smtp; 550 5.1.1 <email (at) domain (dot) tld >: Recipient address rejected: User unknown
Status: 5.1.10
- RESOLVER.ADR.RecipientNotFound; Recipient not found by SMTP address lookup- Diagnostic-Code: 5.1.10 RESOLVER.ADR.RecipientNotFound; NDR error when an Office 365 user tries to send mail to on-premises users in a hybrid deployment
Status: 5.2.1
- Receiving Rate Perm - 550-5.2.1- Diagnostic-Code: smtp; 550-5.2.1 The user you are trying to contact is receiving mail at a rate that 550-5.2.1 https://support.google.com/mail/?p=ReceivingRatePerm prevents additional messages from being delivered.
Status: 5.4.14
- Hop count exceeded - possible mail loop ATTR34.- Diagnostic-Code: smtp; "554 5.4.14 Hop count exceeded - possible mail loop" NDR for outgoing email that's sent to an on-premises application in Exchange Server
Indique une boucle de messagerie ou un problème de routage dans Exchange Server sur site, que vous rencontrerez probablement dans un environnement hybride.
- Diagnostic-Code: smtp; "554 5.4.14 Hop count exceeded - possible mail loop" NDR for outgoing email that's sent to an on-premises application in Exchange Server
Status: 5.4.4
- Domain Lookup Failed.- Diagnostic-Code: X-Postfix; Host or domain name not found. Name service error for name=domain.tld type=AAAA: Host not found
Status: 5.4.6
- Domain Lookup Failed.- Diagnostic-Code: X-Postfix; mail for buzzter.com loops back to myself
Indique une boucle de messagerie ou un problème de routage dans Exchange Server sur site, que vous rencontrerez probablement dans un environnement hybride.
- Diagnostic-Code: X-Postfix; mail for buzzter.com loops back to myself
Status: 5.7.1
- Email rejected per SPAM policy - Very low reputation of the sending IP address. 550 5.7.1 https://support.google.com/mail/answer/188131- Diagnostic-Code: smtp; 554 5.7.1 <email (at) domain (dot) tld >: Relay access denied
- Diagnostic-Code: smtp; 550-5.7.1 Our system has detected that this message is 550-5.7.1 likely suspicious due to the very low reputation of the sending IP 550-5.7.1 address. To best protect our users from spam, the message has been 550-5.7.1 blocked.
Status: 5.7.606
- Access denied, banned sending IP- Diagnostic-Code: smtp; 550 5.7.606 Access denied, banned sending IP [ADDRESS_IP_SENDER_MAILSERVER]. To request removal from this list please visit https://sender.office.com/ and follow the directions. For more information please go to http://go.microsoft.com/fwlink/?LinkID=526655 AS(1430) [PR2FRA01FT003.eop-fra01.prod.protection.outlook.com]
Les erreurs 400 peuvent avoir plusieurs Status :
Status: 4.0.0
- Diagnostic-Code: smtp; 451 too many errors detected from your IP (ADDRESS_IP_SENDER_MAILSERVER), please visit http://postmaster.free.fr/
Status: 4.4.1
- delivery temporarily suspended: connect to destdomain.tld[ADDRESS_IP_DEST_MAILSERVER]:25: Connection timed out- Diagnostic-Code: X-Postfix; delivery temporarily suspended: connect to destdomain.tld[ADDRESS_IP_DEST_MAILSERVER]:25: Connection timed out
Status: 4.4.2
- delivery temporarily suspended: lost connection with mailgw.destdomain.tld[ADDRESS_IP_DEST_MAILSERVER] while receiving the initial server greeting- Diagnostic-Code: X-Postfix; delivery temporarily suspended: lost connection with mailgw.destdomain.tld[ADDRESS_IP_DEST_MAILSERVER] while receiving the initial server greeting
Status: 4.4.3
- delivery temporarily suspended: Host or domain name not found.- Diagnostic-Code: X-Postfix; delivery temporarily suspended: Host or domain name not found. Name service error for name=domain.tld type=MX: Host not found, try again
Status: 4.4.4
- no MX or A for domain.- Diagnostic-Code: X-Postfix; Host or domain name not found. Name service error for name=domain.tld type=AAAA: Host not found
Status: 4.7.0
- Messages from "Address IP" temporarily deferred due to unexpected volume or user complaints- Diagnostic-Code: smtp; 421 4.7.0 [TSS04] Messages from "Address IP" temporarily deferred due to unexpected volume or user complaints - 4.16.55.1; see https://postmaster.yahooinc.com/error-codes
Ligne de commande pour ressortir toutes les adresses invalide Status: 5.1.1
J'ai dû récupérer ma boite mail pour lire tous les fichiers mails.eml (parce qu'il n'y plus la commande zmmboxsearch
dans Zimbra 8 OpenSource ).
J'ai écris une commande pour récupérer toutes les adresses mails des destinataires invalide / des boîtes mails qui n'existe plus.
Je souhaite rechercher une expression dans les mails des dossiers :
./Inbox/Undelivered_Mail_Returned_to_Sender/20220212/
./Inbox/Undelivered_Mail_Returned_to_Sender/20220212!1/
./Inbox/Undelivered_Mail_Returned_to_Sender/20220212!2/
....
de ma boite de réception (Inbox). Et trouver les adresses mails avec les Status: 5.1.1 - donc des boîtes aux lettres mails invalide.
Script avec 1 ligne
001for m in /home/lab3w_orj/Inbox/Undelivered_Mail_Returned_to_Sender/20220212\!*/*; do cat "$m" | grep 'Status: 5.1.1' -B2 --no-group-separator | sed 's/Original-Recipient: rfc822;//' | sed -e '/Action: failed/d' | sed -e '/Status: 5.1.1/d' | sed -e '/^$/d' >> /home/lab3w_orj/mail-`date +%Y%m%d`-5.1.1.txt ; done;
Qui me retourne le fichier mail-20220212-5.1.1.txt
avec toutes les adresses mails de destinataire invalide (Status: 5.1.1)
Faire pareil avec les autres Status: 5.0.0, Status: 5.1.10, Status: 5.5.0, Status: 4.4.4 et Status: 5.4.4 ;-)
Vérifiez avec cette commande par exemple que le fichier ne contient pas de ligne particulière :/
cat mail-20220212-5.1.1.txt | grep ";"
il se peut qu'il y est quelles lignes particulières - Final-Recipient: rfc822;email@domain.tld
Utiliser la commande sed
pour rechercher et pour remplacer (substituer) les lignes contenant "Final-Recipient: rfc822;"
Script avec 1 ligne
001sed -ri 's/Final-Recipient:(.*)rfc822;([[:space:]])?//gi' mail-20220212-5.1.1.txt
L'option -r
(--regexp-extended
) permet de faire des regex (les caractères étendues) : +
; ?
; |
; (
)
; [
]
; {
}
L'option -i
permet de modifier la sortie (donc le fichier) - Sans l'option -i
les substitutions sont juste affichées sur la sortie standard :)
- Debian-Facile.org
Puis j'ai fais un script PHP/MySQL pour supprimer toutes ces adresses mails de la base de données ;) entre autre !
SELECT email FROM usr WHERE email = $email LIMIT 1; DELETE .....
Pour exemple 2 scripts à l'arache :
Je vous mets l'adresse https://download.zw3b.fr/scripting/php/mail-smtp-return-error/ d'un des répertoire "public" où il y 2 scripts dont je me sert toutes les semaines (c'est précaire mais çà fonctionne) :
mail-search-unavailable.sh
: scanne tous les mails d'un de vos répertoire (par exemple, Undelivered_Mail_Returned_to_Sender) de votre boite mails et stocke les adresses mails des boites mails fermées/unavailable dans des fichiers (Status: 5.0.0|5.1.1|5.1.10|5.5.0|4.4.4|5.4.4 (et 4.0.0|5.7.1|4.7.0 à ne pas supprimer).mails-in-mailing-del.phps
: suprime les mails fermées/unavailable (un compte inscript à la newseltter) de votre base de données MySQL.
:-)
Sources :
- RFC 1893 (Enhanced Mail System Status Codes) - RFC 1846 : SMTP 521 Reply Code
- IANA : Simple Mail Transfer Protocol (SMTP) Enhanced Status Codes Registry
- USPS SMTP Error Codes
- WikipediA : List of SMTP server return codes
- Stéphane Bortzmeyer : RFC 7504 : SMTP 521 and 556 Reply Codes
Informations DMARC :
- DMARC Site Web Officiel
- DMARC : Directives de mise en oeuvre de protection du domaine de courrier (ITSP.40.065 v1.1) du Centre canadien pour la cybersécurité .
- Seznam Nápoveda : DMARCinfos
Supports DMARC :
- Google Support : Postmaster - A propos de DMARC - Limites d'envoi et de réception des messages
- Outlook.com - Office365 : Support - Supprimez-vous de la liste des expéditeurs bloqués - Delist Status - Delist IP - Code d'erreurs SMTP dans Exchange Online
- Free.fr : Postmaster
- Pour la vérification SPF, DKIM, DMARC et consorts, j'ai pas mal utilisé les diagnostics proposés sur le site MX Lookup Tool - Check your DNS MX Records online
- Learn and Test DMARC : Visualiser la communication entre les serveurs de messagerie vous aidera à comprendre ce que font SPF, DKIM et DMARC et comment ces mécanismes fonctionnent.
- Mail-tester : Testez l'indésirabilité (spam) de vos emails
- Pourquoi l'authentification SPF échoue : aucune, neutre, échec (échec dur), échec logiciel, temporisation et permerror expliqués - (en) - Why SPF Authentication Fails: none, neutral, fail(hard fail), soft fail, temperror, and permerror Explained
- DMARC Analyzer Tool sur DMARC Advisor
J'ajoute ce lien où l'on parle de comment lire les Rapports DMARC des fichiers XML..
-
Debian-FR.org : Servers Mails - Reports DMARC (SPF - DKIM) - analyse file XML?
- Visualisation du rendu de mon tableau HTML des rapports DMARC des serveurs destinataires.
- Mon code source PHP du tableau HTML des rapports DMARC des serveurs destinataires - à copier/coller sur votre serveur Web - si cela peut vous être utile ;-)
- J'ai écris un code BaSH pour dé-zipper les fichiers DMARC dans le répertoire du mois ;) Cà permet de ne pas oubliez de fichiers non dézipper - Au cas où l'Humain que je suis en aurais oublié.
- L'intégration finale des rapports DMARC sur mon site Web ZW3B.Site : Authentification et conformité des messages basés sur le domaine avec création de rapports.
Comment mettre de la couleur en sortie de lecture d'une commande, d'un fichier etc..
- Debian-FR.org : Read logs with command tail -f file with strings color?
Quelques liens utiles de gestion/configuration/administration de serveurs de mails (MTA) :
- Comment supprimer définitivement les e-mails de la file d'attente sendmail et les empêcher de revenir?
- Traitement de Queue mail Postfix
- Commandes utiles pour Postfix
- Postfix Commands Administration Cheat Sheet
- Analyse des goulots d'étranglement (qshape)
Ce document présente le programme qshape(1) qui aide l'administrateur à voir la distribution des messages dans la file d'attente triés par date, expéditeur ou domaine destinataire.