550 Échec de la vérification « Aucun utilisateur » (vérification par rappel)

Bonjour à tous,
Je rencontre des problèmes d’envoi de courriels avec une nouvelle installation de Discourse sur un sous-domaine. J’ai suivi les étapes de dépannage, mais le problème persiste. En substance, les courriels envoyés par Discourse via MailGun n’arrivent pas aux adresses e-mail de mon hébergement.

Voici quelques détails sur l’environnement d’installation :

  • Hébergé chez Vultr
  • Sous-domaine sur un hébergement standard
  • Utilisation de Cloudflare
  • Utilisation de Mailgun

Autres détails :

  • Les courriels provenant de Mailgun-Discourse parviennent sans problème à d’autres services (comme Gmail) et même à mail-tester.com.
  • D’autres types de courriels arrivent bien au destinataire (par exemple, un courriel normal envoyé depuis mon adresse Gmail).
  • Les enregistrements DNS et MX dans Cloudflare sont configurés et mis à jour dans Mailgun.

Il n’est pas vraiment crucial que les courriels parviennent à ces comptes e-mail de mon hébergement (bien que j’aimerais en utiliser un comme administrateur), mais je m’inquiète que cela puisse également se produire avec d’autres adresses e-mail auto-hébergées.

En-tête du courriel d’échec :

{
    "severity": "permanent",
    "tags": [],
    "storage": {
        "url": "https://sw.api.mailgun.net/v3/domains/[sous-domaine ici]messages/eyJwIjpmYWxzZSwiayI6IjgwYzAzNzQ2LTN.........",
        "key": "eyJwIjp...."
    },
    "delivery-status": {
        "mx-host": "dc-94c828295f73.[domaine ici]",
        "attempt-no": 1,
        "description": "",
        "session-seconds": 0.5889058113098145,
        "code": 550,
        "message": "Échec de vérification pour <bounce+f45d38.b55c5c-[nom d'utilisateur]=[domaine]@[sous-domaine]>\nAucun utilisateur correspondant\nÉchec de vérification de l'expéditeur"
    },
    "recipient-domain": "[domaine ici]",
    "id": "DSLvcNXnTEKYl7gsFOGkDg",
    "campaigns": [],
    "reason": "generic",
    "user-variables": {},
    "flags": {
        "is-routed": false,
        "is-authenticated": true,
        "is-system-test": false,
        "is-test-mode": false
    },
    "log-level": "error",
    "timestamp": 1535055760.1404,
    "envelope": {
        "transport": "smtp",
        "sender": "noreply@[sous-domaine]",
        "sending-ip": "184.173.153.194",
        "targets": "[utilisateur]@[domaine]"
    },
    "message": {
        "headers": {
            "to": "[utilisateur destinataire]@[domaine destinataire]",
            "message-id": "e438348c-9414-48e8-8af3-25df2174d5f7@[sous-domaine Discourse]",
            "from": "Discourse <noreply@[sous-domaine Discourse]>",
            "subject": "Test de délivrabilité des courriels"
        },
        "attachments": [],
        "size": 7127
    },
    "recipient": "[utilisateur destinataire]@[domaine destinataire]",
    "event": "failed"
}

Citation de la réponse du ticket de Mailgun :

L’erreur que vous rencontrez est le résultat de la vérification de l’adresse de l’expéditeur. Vous pouvez en savoir plus à ce sujet sur le lien suivant : Callback verification - Wikipedia. En substance, cela signifie que le domaine destinataire effectue une vérification pour s’assurer que l’adresse d’envoi est valide.

Les options suivantes vous aideront à résoudre cette erreur :

  1. Désactiver la vérification de l’adresse de l’expéditeur (côté serveur).
  2. Ajouter “x-mailgun-native-send: true” à l’en-tête de votre message pour désactiver la réécriture de l’adresse de l’expéditeur.
  3. Envoyer depuis un sous-domaine de votre domaine.
  4. Modifier les enregistrements MX pour qu’ils pointent vers Mailgun à la place. ( Attention : ne faites cela que si vous avez configuré une route pour renvoyer vers le serveur interne.)
  5. Créer une boîte de réception catch_all avec le service où vous recevez les courriels afin que, lorsque le serveur destinataire effectue la vérification, celle-ci réussisse.

Quelqu’un aurait-il des suggestions à ce sujet ?

Merci beaucoup !

Daniel

I see that you have enabled cloudflare on your mx records as well!

Can you try again by disabling cloudflare on your mx domain/subdomain?

I Noticed your forum runs on http not https is there a purpose for that?

Right… So it looks like it is fixed now…
Just for future reference from someone having this problem, I just went to cPanel > Email Routing, and for the subdomain I am using for Discourse (and thus the subdomain Mailgun generates the postmaster/no-reply emails) I chose “Remote Mail Exchanger” and click on “Change”
Seems to work now with all emails… :roll_eyes:

Hi Bhanu,
Thanks for your reply. See below, looks like I managed to sort it out.
Re: SSL, because Let’sEncrypt+Cloudflare was a nightmare to set up for the main site, I am using Cloudflare’s shared certificated for the main site. Not sure how to manage it with Cloudflare + Ubuntu, hence why no HTTPS. If you have any links I can look at, that’d be amazing!
Kind Regards,
Daniel

Just disable cloudflare optimization for your forum subdomain and it should in theory be able to generate ssl for you.