550 Falha na verificação 'No Such User' (Verificação de callback)

Olá pessoal,

Estou enfrentando alguns problemas de e-mail com uma nova instalação do Discourse em um subdomínio. Já revisei as soluções de troubleshooting e ainda tenho esse problema. Basicamente, e-mails do Discourse via MailGun não chegam aos endereços de e-mail na minha hospedagem.

Algumas detalhes do ambiente de instalação:

  • Hospedado na Vultr
  • Subdomínio na hospedagem padrão
  • Usando Cloudflare
  • Usando Mailgun

Outros detalhes:

  • E-mails do Mailgun-Discourse chegam a outros serviços (como o Gmail) e até ao mail-tester.com sem problemas.
  • Outros tipos de e-mail chegam ao destinatário (ou seja, e-mail normal enviado pelo meu endereço do Gmail).
  • Registros DNS e MX no Cloudflare configurados e atualizados no Mailgun.

Não é realmente importante que os e-mails cheguem às contas de e-mail na minha hospedagem (embora eu quisesse usar uma delas como administrador), mas estou preocupado que isso possa acontecer também com outros endereços de e-mail auto-hospedados.

Cabeçalho do e-mail de falha:

{
    "severity": "permanent",
    "tags": [],
    "storage": {
        "url": "https://sw.api.mailgun.net/v3/domains/[subdomain here]messages/eyJwIjpmYWxzZSwiayI6IjgwYzAzNzQ2LTN.........",
        "key": "eyJwIjp...."
    },
    "delivery-status": {
        "mx-host": "dc-94c828295f73.[domain here[",
        "attempt-no": 1,
        "description": "",
        "session-seconds": 0.5889058113098145,
        "code": 550,
        "message": "Verification failed for <bounce+f45d38.b55c5c-[username]=[domain]@[subdomain]>\nNo Such User Here\nSender verify failed"
    },
    "recipient-domain": "[domain here]",
    "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@[subdomain]",
        "sending-ip": "184.173.153.194",
        "targets": "[user]@[domain]"
    },
    "message": {
        "headers": {
            "to": "[recipient user]@[recipient-domain]",
            "message-id": "e438348c-9414-48e8-8af3-25df2174d5f7@[discourse subdomain]",
            "from": "Discourse <noreply@[discourse subdomain]>",
            "subject": "Email Deliverability Test"
        },
        "attachments": [],
        "size": 7127
    },
    "recipient": "[recipient user]@[recipient-domain]",
    "event": "failed"
}

Citando resposta do ticket do Mailgun:

O erro que você está vendo é resultado da verificação do endereço do remetente, e você pode ler mais sobre isso no seguinte link: Callback verification - Wikipedia. Basicamente, isso significa que o domínio do destinatário está realizando uma verificação para garantir que o endereço de envio seja válido.

As seguintes opções ajudarão você a resolver esse erro:

  1. Desative a verificação do endereço do remetente (isso é feito no lado do servidor).
  2. Adicione “x-mailgun-native-send: true” ao cabeçalho da sua mensagem para desativar a reescrita do endereço do remetente.
  3. Envie de um subdomínio do seu domínio.
  4. Altere os registros MX para apontar para o Mailgun. ( Aviso : não faça isso a menos que tenha uma configuração de roteamento para retornar ao servidor interno.)
  5. Crie um catch_all com o serviço onde você recebe e-mail para que, quando o servidor do destinatário verificar, a verificação seja aprovada.

Alguém tem alguma sugestão sobre isso?

Muito obrigado!

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.