Servidor SMTP conecta, envio de e-mail falha

==================== MAIL TEST ====================
For a robust test, get an address from http://www.mail-tester.com/
Sending mail to REDACTED  . . 
Testing sending to callumokane123@gmail.com using support@maniabots.xyz:REDACTED@smtp.zoho.com:587.
SMTP server connection successful.
Sending to callumokane123@gmail.com. . . 
Sending mail failed.

==================== DONE! ====================

And I do not get the activation email for setting up account

Any help is appreciated :stuck_out_tongue_closed_eyes:

My guess is that your forum is called forum.maniabots.xyz and is sending from noreply@forum.maniabots.xyz and your mail server won’t do it. There is a line at the bottom of app.yml that you can change to set the address. You have to edit it by hand.

Can you explain more in detail, my site is located at support.maniabots.xyz and the email is support@maniabots.xyz, my app.yml Config looks fine

## Any custom commands to run after building
run:
  - exec: echo "Beginning of custom commands"
  ## If you want to set the 'From' email address for your first registration, uncomment and change:
  ## After getting the first signup email, re-comment the line. It only needs to run once.
  - exec: rails r "SiteSetting.notification_email='support@maniabots.xyz'"
  - exec: echo "End of custom commands"

I have made sure the lines are uncommented and the email is correct now and I have rebuilt the container but I still receive no verification email

Sorry. That was my best guess.

So, what do I need to do? I can give you access to the server if needed to help me!

Sorry. I’ve done my best here and have no more ideas.

If you want me to solve your problem, then you can see my installation packages: Discourse Installation Packages — Literate Computing, LLC.

I can configure Mailgun for you and it will work. There are a hundred different things that might be causing your custom mail server not to work.

Well, I don’t want to reconfigure my mail stuff with my domain and don’t want to be spending more money for mailgun

You’d not need to change any of your existing mail stuff and Mailgun is free for the first 10K messages/month.

Olá a todos,
Alguém encontrou uma solução para isso?
Configurei o Postfix no meu host Docker para envio de e-mails. Funciona perfeitamente quando envio e-mails via SSH usando o comando mail, mas o Discourse Docker está falhando com o mesmo erro que o OP relatou. Segui uma dica deste tópico: How to set SMTP config to use localhost? e, graças a isso, consegui eliminar o erro de autenticação no Discourse Docker (não forneço nenhum usuário/senha para o Discourse Docker se conectar ao meu servidor de e-mail), mas agora estou recebendo o erro ‘envio de e-mail falhou’. Alguma ideia?

Eu não fazia ideia de que configurar um servidor de e-mail seria a parte mais difícil da minha jornada com o Discourse… :frowning: A instalação do Discourse é simplesmente impecável e muito bem pensada, ao contrário de qualquer configuração de servidor de e-mail Linux.

Obrigado desde já!

É por isso que todas as instruções de instalação dizem para não tentar fazer isso. Executar um servidor de e-mail é muito difícil hoje em dia.

Minha suposição é que o Discourse está usando o nome de host para o endereço de e-mail de envio e seu servidor de e-mail não o enviará. Mas há dezenas de coisas que podem estar erradas, todas fora do escopo da ajuda que você pode obter aqui.

Para aqueles que buscam uma solução para isso: eu resolvi. Este post foi crucial aqui: How to get Discourse to work with Postfix - #11 by shu_kaze - Linux - Level1Techs Forums

O problema era que o Discourse não conseguia se conectar ao meu servidor Postfix a partir do Docker. Tecnicamente, a conexão vem de outra rede e o Postfix não tinha essa rede na lista de redes permitidas. Basta adicionar a rede do Docker (no meu caso 172.17.0.0/16) ao mynetworks na configuração do Postfix e, em seguida, funciona!

Primeiro, você precisa verificar se o Docker consegue se conectar ao seu Postfix em primeiro lugar (ou seja, se a conexão pode ser estabelecida antes que a verificação de rede permitida seja executada no Postfix). Lembre-se de verificar a configuração do Postfix em inet_interfaces. Eu atribuí all, porque o localhost não funcionará para o Discourse no Docker.

Se ainda não funcionar, verifique os logs do Postfix. No meu caso, eles estão no arquivo /var/log/mail.log.

Espero que isso ajude alguém no futuro. Levei vários dias para fazer funcionar, mas agora finalmente não dependo de nenhum serviço de e-mail pago (eu até queria usar um, mas não consegui fazer funcionar) e tenho tudo de graça (lembre-se de adicionar registros SPF ao seu domínio! Caso contrário, o Gmail e outros provedores de e-mail bloquearão seus e-mails — eles nem sequer chegarão à pasta de spam, mas serão considerados não entregues).