Le serveur SMTP se connecte, mais l'envoi du courrier échoue

==================== 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.

Bonjour à tous,
Quelqu’un a-t-il trouvé une solution à ce problème ?
J’ai configuré Postfix sur mon hôte Docker pour les envois d’e-mails. Cela fonctionne parfaitement lorsque j’envoie des e-mails depuis SSH via la commande mail, mais le conteneur Discourse échoue avec la même erreur que celle rencontrée par l’OP. J’ai suivi un indice de ce fil : How to set SMTP config to use localhost? et grâce à cela, j’ai éliminé l’erreur d’authentification de Discourse dans Docker (je ne fournis aucun nom d’utilisateur/mot de passe à Discourse pour se connecter à mon serveur de messagerie), mais maintenant, j’obtiens l’erreur « l’envoi du courriel a échoué ». Des idées ?

Je ne savais pas que la configuration d’un serveur de messagerie serait la partie la plus difficile de mon aventure avec Discourse… :frowning: L’installation de Discourse est tout simplement parfaite et très bien conçue, contrairement à n’importe quelle configuration de serveur de messagerie Linux.

Merci d’avance !

C’est pourquoi toutes les instructions d’installation recommandent de ne pas essayer de le faire. Héberger un serveur de messagerie est très difficile aujourd’hui.

Je parie que Discourse utilise le nom d’hôte pour l’adresse e-mail depuis laquelle il envoie, et que votre serveur de messagerie refuse de l’envoyer. Mais il y a des dizaines de choses qui pourraient être en panne, toutes hors de portée de l’aide que vous pouvez obtenir ici.

Pour ceux qui cherchent une solution à ce problème : je l’ai résolu. Ce post a été crucial ici : How to get Discourse to work with Postfix - #11 by shu_kaze - Linux - Level1Techs Forums

Le problème était que Discourse ne parvenait pas à se connecter à mon serveur Postfix depuis Docker. Techniquement, la connexion provient d’un autre réseau, et Postfix n’avait pas ce réseau dans la liste des réseaux autorisés. Il suffit d’ajouter le réseau Docker (dans mon cas 172.17.0.0/16) à mynetworks dans la configuration de Postfix, et cela fonctionne !

Vous devez d’abord vérifier si Docker peut se connecter à votre serveur Postfix (c’est-à-dire si la connexion peut être établie avant que la vérification du réseau autorisé ne soit effectuée dans Postfix). N’oubliez pas de vérifier la configuration de Postfix dans inet_interfaces. J’ai défini all car localhost ne fonctionnera pas pour Discourse dans Docker.

Si cela ne fonctionne toujours pas, veuillez vérifier les journaux de Postfix. Dans mon cas, ils se trouvent dans le fichier /var/log/mail.log.

J’espère que cela aidera quelqu’un à l’avenir. Cela m’a pris plusieurs jours pour le faire fonctionner, mais maintenant je ne dépend plus d’aucun service de messagerie payant (j’aurais même voulu l’utiliser, mais je n’ai pas réussi à le faire fonctionner) et je l’ai gratuitement (n’oubliez pas d’ajouter des enregistrements SPF à votre domaine ! Sinon, Gmail et d’autres fournisseurs de messagerie bloqueront vos e-mails : ils n’iront même pas dans les spams, mais seront simplement non livrés).