Problème d'envoi d'e-mails via Namecheap Private Email (SMTP) sur Discourse auto-hébergé

Bonjour à tous,

J’ai essayé de configurer la messagerie sortante sur une installation Discourse auto-hébergée, mais jusqu’à présent, sans succès. Même avec le support de Namecheap impliqué, nous n’avons pas réussi à le faire fonctionner. J’espère que quelqu’un ici pourra me dire ce qui me manque.

Configuration

  • Hébergement : Droplet DigitalOcean, Discourse installé via la méthode Docker officielle (/var/discourse).

  • Domaine : Géré via Cloudflare (enregistrements A proxysés pour le site, DNS uniquement pour les enregistrements MX/mail).

  • Fournisseur de messagerie : Namecheap Private Email.

  • Version de Discourse : Dernière branche tests-passés.

Ce qui fonctionne

  • Je peux recevoir des e-mails à ma boîte hello@domain.com sans problème.

  • Les enregistrements DNS MX, SPF, DKIM et DMARC sont configurés et validés.

  • La réception d’e-mails via Gmail → hello@domain.com fonctionne.

Ce qui échoue

  • Les e-mails sortants (e-mails d’activation, e-mails de test de Discourse) n’arrivent jamais.

  • Le support Namecheap a confirmé que mes identifiants et mes paramètres sont corrects, mais n’a pas pu expliquer pourquoi cela échoue depuis le serveur.

Configuration actuelle de app.yml

DISCOURSE_SMTP_ADDRESS: mail dot privateemail dot com
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: hello at domain dot com
DISCOURSE_SMTP_PASSWORD: “PASSWORD”
DISCOURSE_SMTP_ENABLE_START_TLS: true
DISCOURSE_SMTP_DOMAIN: domain dot com
DISCOURSE_NOTIFICATION_EMAIL: hello at domain dot com DISCOURSE_SMTP_AUTHENTICATION: login

J’ai également essayé le port 465 avec :

DISCOURSE_SMTP_PORT: 465
DISCOURSE_SMTP_ENABLE_START_TLS: false
DISCOURSE_SMTP_SSL: true

Étapes de débogage effectuées

  • Vérification de la correction des enregistrements DNS dans Cloudflare (MX, SPF, DKIM, DMARC).

  • Confirmation que les ports 587 et 465 ne sont pas bloqués localement par UFW/iptables.

  • Essai de forcer la préférence IPv4 dans /etc/gai.conf.

  • Test avec nc et openssl → toujours un timeout.

  • Même les instructions de Namecheap (587 STARTTLS ou 465 SSL) entraînent un échec depuis le serveur.

Question

Quelqu’un a-t-il réussi à configurer Namecheap Private Email avec Discourse SMTP ?

  • Y a-t-il un problème connu avec les droplets DigitalOcean pour atteindre mail.privateemail.com sur les ports 587/465 ?

  • Dois-je abandonner Namecheap SMTP et utiliser un service de messagerie transactionnelle (Postmark, Mailgun, SendGrid) à la place ?

  • Y a-t-il un indicateur spécial app.yml nécessaire pour ce fournisseur ?

Merci d’avance pour toute aide. Je suis bloqué avec cette configuration.

Vous devriez utiliser un service de messagerie transactionnelle comme Mailgun, Brevo ou Amazon SES. C’est la meilleure façon d’envoyer des e-mails depuis votre forum.

Voir discourse/docs/INSTALL-email.md at main · discourse/discourse · GitHub
Vous voudrez peut-être aussi consulter :
Troubleshoot email on a new Discourse install

1 « J'aime »

Quel est le message d’échec ?

DigitalOcean bloque-t-il les e-mails sortants, comme beaucoup d’autres l’ont signalé ?

Avez-vous essayé le port 2525 ?

1 « J'aime »

Merci à tous pour vos réponses, j’apprécie beaucoup.\n\n@pfaffman Je ne suis pas au courant que Digital Ocean bloque les e-mails sortants. Non, je n’ai pas essayé le 2525.\n\nAprès avoir cherché, je suis tombé sur un article indiquant qu’ils bloquent tous les e-mails sortants https://docs.digitalocean.com/support/why-is-smtp-blocked/\n\nJ’ai fait un petit test avec :\n\nnc -vz ``smtp.mailgun.org`` 2525 et le test a réussi. Les ports 587 et 465 ont échoué.\n\nJ’ai ouvert un ticket pour demander l’ouverture de ces ports.\n\nS’ils ne l’ouvrent pas, je devrai me pencher sur Mailgun, j’espère que c’est gratuit.

Si vous contactez leur support pour l’activation du compte, après avoir modifié le paramètre du type de plan, vous devriez être tranquille avec un plan gratuit.

J’ai toujours pensé que c’était très similaire à BT Mail ou Gmail, pas adapté pour Discourse cependant.

Vous pourriez utiliser le sondage POP3 pour recevoir les e-mails, mais comme vous avez un VPS x86, je recommanderais mail-receiver.

1 « J'aime »

Digital Ocean a répondu et a répondu à leur e-mail :

« Nous serions heureux d’explorer la possibilité en demandant à notre équipe de sécurité d’examiner de plus près le déblocage des ports SMTP pour vous. Pour nous aider à mieux comprendre vos besoins et à donner suite à votre demande, pourriez-vous s’il vous plaît partager les détails suivants concernant vos besoins professionnels :

  • Quel type d’e-mails enverrez-vous (par exemple, transactionnels, newsletters, etc.) ?

  • Envisagez-vous d’héberger votre propre e-mail ou d’utiliser un service d’envoi tiers ?

  • Si possible, veuillez fournir le contexte de vos besoins en matière de ports et si des ports non standard ou une API ne peuvent pas être utilisés.

Dès que nous aurons votre réponse, nous transmettrons votre demande à l’équipe avec tous les détails fournis. »

Dans ce cas, vous devriez passer à l’utilisation d’un service de messagerie transactionnelle comme Mailgun (100 e-mails gratuits par jour) ou Brevo (300 e-mails gratuits par jour). Ensuite, vous pouvez passer à l’utilisation du port 2525 dans votre fichier app.yml, car celui-ci n’est pas bloqué.

2 « J'aime »

Salutations du support DigitalOcean !

Nous comprenons que votre application ou votre entreprise nécessite l’activation des ports 25, 465 et 587. Cependant, en raison de notre politique actuelle, nous ne sommes pas en mesure de répondre aux demandes de suppression de la restriction sur ces ports.

Nous vous recommandons d’utiliser des ports alternatifs si votre application le permet, tels que le port 2525. Vous pouvez également utiliser l’API REST avec SendGrid, qui vous permet d’envoyer des e-mails via des requêtes HTTP au lieu du protocole SMTP traditionnel si cela vous convient, ou d’utiliser un autre service d’envoi tiers.

N’hésitez pas à nous contacter si vous avez d’autres questions. Nous sommes toujours là pour vous !

J’essaierai Mailgun

1 « J'aime »

peut-être faire un suivi et dire que vous n’avez pas besoin de 25 ?

@Ethsim2 merci, je pense que c’est clair, comme Linode, ils ont tout fermé pour lutter contre le spam, seul Linode rouvrira les ports sur demande, mais c’est bon.

Je vais opter pour MailGun.

2 « J'aime »

Je n’ai jamais vécu dans ma vie que mon tout nouveau compte soit bloqué LOL
« Mailgun : Votre compte est temporairement désactivé. »

Existe-t-il un service SMTP alternatif que je peux utiliser ?

1 « J'aime »