2 votes

dsn=5.6.0, stat=Erreur de format de données lors du transfert d'un e-mail

Notre hôte Linux (CentOS) a plusieurs domaines partagés, dont l'un est example.com ( faux noms d'hôtes et d'utilisateurs utilisés dans ce message ) ; Nous utilisons /etc/mail/virtusertable pour que tout le courrier destiné à example.com soit remis à l'utilisateur "exmpl", et ~exmpl/.procmailrc transmet le courrier comme il convient. Cette méthode permet à exmpl de maintenir ses propres redirections, ce que /etc/mail/aliases ne fait pas. En fait, virtusertable a des destinataires connus pour example.com, et rejette le courrier à des destinataires inconnus. Nous avons appris cette leçon il y a longtemps.

Cependant, le courrier transmis de cette manière échouait :

Apr 30 21:33:30 bogus sendmail[25645]: r412XUQ8025645: to=person@bogus.org, ctladdr=exmpl (504/504), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30965, relay=[127.0.0.1] [127.0.0.1], dsn=5.6.0, stat=Data format error

Cela semblait assez étrange, car "personne" est un utilisateur valide sur bogus.org, et en fait bogus.org est le domaine principal sur la même machine que example.com !

Comment pouvons-nous régler ce problème ?

0 votes

S'il vous plaît, ne marquez pas cette question comme étant résolue dans le titre. Rédigez votre réponse en tant que réponse et marquez-la comme réponse acceptée. Pouvez-vous corriger cela ?

0 votes

@slm Les nouveaux utilisateurs doivent attendre 8 heures avant de répondre à leur propre question.

0 votes

@MichaelHampton. Merci. Désolé, j'aurais dû le mentionner dans mes commentaires.

2voto

Mike42 Points 849

Beaucoup d'autres personnes ont résolu ce problème en corrigeant l'entrée "localhost" dans le fichier de configuration de l'ordinateur. /etc/hosts et/ou en configurant les entrées DNS appropriées. Nous avons fait cela, et cela n'a pas résolu notre problème.

Nous l'avons finalement remarqué : ctladdr=exmpl Pour le courrier correctement distribué, les entrées du journal indiquaient l'adresse électronique complète, par ex. ctladdr=<person@bogus.org> Ce qui manquait, c'était cette entrée importante dans virtusertable :

exmpl@bogus.org exmpl

Je n'ai pas la prétention de tout comprendre (cela compte comme ma question !) car pour moi, cela ressemble à une utilisation "à l'envers" de virtusertable. utilisation "à l'envers" de virtusertable. Cependant, le courrier transféré comme ci-dessus fonctionne maintenant !

May  6 21:06:40 bogus sendmail[1482]: r4726ejj001480: to=<person@bogus.org>, ctladdr=<exmpl@bogus.org> (504/504), delay=00:00:00, xdelay=00:00:00, mailer=local, pri=62862, dsn=2.0.0, stat=Sent

0 votes

Merci d'avoir rectifié mon post de questions-réponses !

1voto

Shawn George Points 11

Le problème est généralement plus clair si vous vous connectez au serveur MX sur le port 25 et lancez une conversation SMTP manuelle.

Dans l'exemple ci-dessus où ctladdr=exmpl si vous l'avez saisie comme MAIL FROM le serveur MX vous aurait dit que le domaine n'existe pas et que c'est la raison pour laquelle il ne peut pas accepter votre courrier. J'ai eu le problème où somedomain.com est défini dans le DNS et utilisé pour le trafic web, mais Apache essaie d'envoyer le courrier en tant que apache@www.somedomain.com et une conversation SMTP manuelle révélera que le serveur MX ne peut pas trouver www.somedomain.com .

La solution consiste alors à ajouter un A o CNAME pour ce sous-domaine.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X