He estado intentando configurar el correo saliente en una instalación de Discourse autoalojada, pero hasta ahora no he tenido éxito. Incluso con el soporte de Namecheap involucrado, no pudimos hacerlo funcionar. Espero que alguien aquí pueda señalar lo que me estoy perdiendo.
Configuración
Alojamiento: Droplet de DigitalOcean, Discourse instalado a través del método oficial de Docker (/var/discourse).
Dominio: Gestionado a través de Cloudflare (registros A proxy para el sitio, solo DNS para registros MX/correo).
Proveedor de correo: Namecheap Private Email.
Versión de Discourse: Última rama de pruebas pasadas.
Lo que funciona
Puedo recibir correos electrónicos en mi bandeja de entrada hello@domain.com sin problemas.
Los registros DNS MX, SPF, DKIM y DMARC están configurados y validados.
El correo entrante a través de Gmail → hello@domain.com funciona.
Lo que falla
El correo saliente (correos de activación, correos de prueba de Discourse) nunca llega.
El soporte de Namecheap confirmó que mis credenciales y configuraciones son correctas, pero no pudieron explicar por qué falla desde el servidor.
Configuración actual de app.yml
DISCOURSE_SMTP_ADDRESS: mail punto privateemail punto com
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: hello arroba domain punto com
DISCOURSE_SMTP_PASSWORD: “CONTRASEÑA”
DISCOURSE_SMTP_ENABLE_START_TLS: true
DISCOURSE_SMTP_DOMAIN: domain punto com
DISCOURSE_NOTIFICATION_EMAIL: hello arroba domain punto com DISCOURSE_SMTP_AUTHENTICATION: login
Deberías usar un servicio de correo transaccional como Mailgun, Brevo o Amazon SES. Esa es la forma óptima de enviar correos electrónicos desde tu foro.
Si contactas a su soporte para la activación de la cuenta, después de cambiar la configuración del tipo de plan, deberías estar bien en un plan gratuito.
Siempre pensé que esto era muy similar a BT Mail o Gmail, no adecuado para Discourse.
Podrías hacer sondeo POP3 para recibir correos, pero como tienes un VPS x86, te recomendaría mail-receiver
Digital Ocean ha respondido y respondido a su correo:
"Nos complacería explorar la posibilidad de que nuestro equipo de seguridad analice más a fondo el desbloqueo de los puertos SMTP para usted. Para ayudarnos a comprender mejor sus necesidades y avanzar con su solicitud, ¿podría compartir los siguientes detalles sobre los requisitos de su negocio?:
¿Qué tipo de correos electrónicos enviará (por ejemplo, transaccionales, boletines informativos, etc.)?
¿Planea alojar su propio correo electrónico o utilizar un servicio de envío de terceros?
Si es posible, proporcione contexto sobre sus requisitos de puerto y si no se pueden utilizar puertos no estándar o una API.
Una vez que recibamos su respuesta, reenviaremos su solicitud al equipo con todos los detalles proporcionados."
En ese caso, deberías cambiar a usar un servicio de correo transaccional como Mailgun (100 correos gratis al día) o Brevo (300 correos gratis al día). Luego, puedes cambiar a usar el puerto 2525 en tu archivo app.yml, ya que este no está bloqueado.
Entendemos que tiene un requisito de aplicación o una necesidad comercial para habilitar los puertos 25, 465 y 587. Sin embargo, debido a nuestra política actual, no podemos facilitar las solicitudes para eliminar la restricción en este puerto.
Recomendamos utilizar puertos alternativos si su aplicación lo permite, como el puerto 2525. También puede usar la API REST con SendGrid, que le permite enviar correos electrónicos a través de solicitudes HTTP en lugar del protocolo SMTP tradicional si le resulta adecuado, o utilizar otro servicio de envío de terceros.
¡No dude en contactarnos si tiene alguna consulta adicional. Siempre estamos aquí para usted!
@Ethsim2 gracias, creo que está claro, al igual que Linode, cerraron todo para luchar contra el spam, solo Linode abrirá los puertos a petición, pero está bien.