Listmonk con reenvío de correo electrónico para la entrega segura de boletines informativos

Esta guía proporciona a los desarrolladores instrucciones paso a paso para configurar Listmonk, un potente administrador de boletines y listas de correo de código abierto, para usar Redirigir correo Como proveedor SMTP. Esta combinación le permite gestionar sus campañas eficazmente, garantizando al mismo tiempo una entrega de correo electrónico segura, privada y confiable.

  • Listmonk:Maneja la gestión de suscriptores, la organización de listas, la creación de campañas y el seguimiento del rendimiento.
  • Redirigir correo:Actúa como servidor SMTP seguro, gestionando el envío real de correos electrónicos con funciones de seguridad integradas como SPF, DKIM, DMARC y cifrado TLS.

Al integrar estos dos, usted conserva el control total sobre sus datos e infraestructura mientras aprovecha el sólido sistema de entrega de Forward Email.

  • Fuente abiertaTanto Listmonk como los principios de Forward Email priorizan la transparencia y el control. Usted mismo aloja Listmonk y es el propietario de sus datos.
  • Centrado en la privacidad:Forward Email está diseñado con la privacidad como base, minimizando la retención de datos y centrándose en la transmisión segura.
  • RentableListmonk es gratuito y Forward Email ofrece generosos niveles gratuitos y planes pagos asequibles, lo que lo convierte en una solución económica.
  • EscalabilidadListmonk tiene un alto rendimiento y la infraestructura de Forward Email está diseñada para una entrega confiable a escala.
  • Amigable para desarrolladoresListmonk ofrece una API sólida y Forward Email proporciona una integración SMTP y webhooks sencillos.

Antes de comenzar, asegúrese de tener lo siguiente:

  • Un servidor privado virtual (VPS) que ejecute una distribución Linux reciente (se recomienda Ubuntu 20.04+) con al menos 1 CPU y 1 GB de RAM (se recomiendan 2 GB).
  • Un nombre de dominio que usted controla (se requiere acceso DNS).
  • Una cuenta activa con Redirigir correo.
  • Raíz o sudo acceso a su VPS.
  • Familiaridad básica con las operaciones de línea de comandos de Linux.

Estos pasos lo guiarán a través de la instalación de Listmonk usando Docker y Docker Compose en su VPS.

1. Actualice su servidor

Asegúrese de que la lista de paquetes de su sistema y los paquetes instalados estén actualizados.

sudo apt update && sudo apt upgrade -y

2. Instalar dependencias

Instalar Docker, Docker Compose y UFW (Uncomplicated Firewall).

sudo apt install -y docker.io docker-compose ufw

3. Descargar la configuración de Listmonk

Crea un directorio para Listmonk y descarga el archivo oficial docker-compose.yml archivo.

mkdir listmonk && cd listmonk
curl -Lo docker-compose.yml https://raw.githubusercontent.com/knadh/listmonk/master/docker-compose.yml

Este archivo define el contenedor de la aplicación Listmonk y el contenedor de base de datos PostgreSQL requerido.

4. Configurar el firewall (UFW)

Permita el tráfico esencial (SSH, HTTP, HTTPS) a través del firewall. Si su SSH se ejecuta en un puerto no estándar, ajústelo según corresponda.

sudo ufw allow ssh
sudo ufw allow http
sudo ufw allow https
sudo ufw enable

Confirme la habilitación del firewall cuando se le solicite.

5. Configurar el acceso HTTPS

Ejecutar Listmonk mediante HTTPS es crucial para la seguridad. Tiene dos opciones principales:

Si el DNS de su dominio está administrado por Cloudflare, puede aprovechar su función de proxy para facilitar el acceso HTTPS.

  1. Punto DNS:Crear un A registro en Cloudflare para su subdominio Listmonk (por ejemplo, listmonk.yourdomain.com) apuntando a la dirección IP de su VPS. Asegúrese de que Estado de proxy está configurado para Proxy (nube naranja).
  2. Modificar Docker Compose:Editar el docker-compose.yml archivo que descargaste:
    sed -i 's/9000:9000/80:9000/' docker-compose.yml
    
    Esto hace que Listmonk sea accesible internamente en el puerto 80, que Cloudflare puede luego usar como proxy y proteger con HTTPS.

Opción B: Usar un proxy inverso (Nginx, Caddy, etc.)

Como alternativa, puede configurar un proxy inverso como Nginx o Caddy en su VPS para manejar la terminación HTTPS y las solicitudes de proxy a Listmonk (que se ejecuta en el puerto 9000 de manera predeterminada).

  • Mantener el valor predeterminado ports: - "127.0.0.1:9000:9000" en docker-compose.yml para garantizar que Listmonk solo sea accesible localmente.
  • Configure el proxy inverso elegido para escuchar en los puertos 80 y 443, gestionar la adquisición de certificados SSL (por ejemplo, a través de Let's Encrypt) y reenviar el tráfico a http://127.0.0.1:9000.
  • La configuración detallada del proxy inverso está más allá del alcance de esta guía, pero hay muchos tutoriales disponibles en línea.

6. Iniciar Listmonk

Navega de regreso a tu listmonk directorio (si aún no está allí) e inicie los contenedores en modo separado.

cd ~/listmonk # Or the directory where you saved docker-compose.yml
docker compose up -d

Docker descargará las imágenes necesarias e iniciará la aplicación Listmonk y los contenedores de la base de datos. La primera vez, podría tardar uno o dos minutos.

Acceder a Listmonk:Ahora debería poder acceder a la interfaz web de Listmonk a través del dominio que configuró (por ejemplo, https://listmonk.yourdomain.com).

7. Configurar el reenvío de correo electrónico SMTP en Listmonk

A continuación, configure Listmonk para enviar correos electrónicos utilizando su cuenta de reenvío de correo electrónico.

  1. Habilitar SMTP en el reenvío de correo electrónicoAsegúrese de haber generado las credenciales SMTP en el panel de control de su cuenta de reenvío de correo electrónico. Siga las instrucciones. Guía de reenvío de correo electrónico para enviar correo electrónico con un dominio personalizado a través de SMTP Si aún no lo has hecho.
  2. Configurar Listmonk:Inicie sesión en su panel de administración de Listmonk.
    • Navegar a Configuración -> SMTP.

    • Listmonk tiene soporte integrado para reenviar correo electrónico. Seleccione Reenviar correo electrónico de la lista de proveedores, o ingrese manualmente los siguientes detalles:

      ConfiguraciónValor
      Anfitriónsmtp.forwardemail.net
      Puerto465
      Protocolo de autenticaciónLOGIN
      Nombre de usuarioSu correo electrónico de reenvío Nombre de usuario SMTP
      ContraseñaSu correo electrónico de reenvío Contraseña SMTP
      TLSSSL/TLS
      Desde el correo electrónicoTu deseado From dirección (por ejemplo, newsletter@yourdomain.com) Asegúrese de que este dominio esté configurado en Reenvío de correo electrónico.
    • Importante:Utilice siempre el puerto 465 con SSL/TLS Para conexiones seguras con reenvío de correo electrónico. No utilice STARTTLS (puerto 587).

    • Hacer clic Salvar.

  3. Enviar correo electrónico de pruebaUtilice el botón "Enviar correo electrónico de prueba" en la página de configuración de SMTP. Introduzca una dirección de destinatario accesible y haga clic en Enviar. Verificar que el correo electrónico llegue a la bandeja de entrada del destinatario.

8. Configurar el procesamiento de rebotes

El procesamiento de rebotes permite a Listmonk gestionar automáticamente los correos electrónicos que no se pudieron entregar (por ejemplo, debido a direcciones no válidas). Forward Email proporciona un webhook para notificar a Listmonk sobre los rebotes.

Configuración de reenvío de correo electrónico

  1. Inicia sesión en tu Panel de control de reenvío de correo electrónico.
  2. Navegar a Dominios, selecciona el dominio que estás usando para enviar y ve a su Ajustes página.
  3. Desplácese hacia abajo hasta la URL de webhook rebotada sección.
  4. Introduzca la siguiente URL, reemplazando <your_listmonk_domain> con el dominio o subdominio real donde se puede acceder a su instancia de Listmonk:
    https://<your_listmonk_domain>/webhooks/service/forwardemail
    
    Ejemplo: https://listmonk.yourdomain.com/webhooks/service/forwardemail
  5. Desplácese hacia abajo hasta el Clave de verificación de carga útil de firma de Webhook sección.
  6. Copiar La clave de verificación generada. La necesitarás en Listmonk.
  7. Guarde los cambios en la configuración de su dominio de reenvío de correo electrónico.

Configuración de Listmonk

  1. En el panel de administración de Listmonk, navegue hasta Configuración -> Rebotes.
  2. Permitir Habilitar el procesamiento de rebotes.
  3. Permitir Habilitar webhooks de rebote.
  4. Desplácese hacia abajo hasta la Proveedores de webhooks sección.
  5. Permitir Redirigir correo.
  6. Pegar el Clave de verificación de carga útil de firma de Webhook Copiaste del panel de Reenvío de correo electrónico al Clave de reenvío de correo electrónico campo.
  7. Hacer clic Salvar al final de la página.
  8. ¡El procesamiento de rebotes ya está configurado! Cuando Forward Email detecta un rebote en un correo electrónico enviado por Listmonk, notificará a su instancia de Listmonk mediante el webhook, y Listmonk marcará al suscriptor como corresponde.
  9. Complete los pasos a continuación en Pruebas para garantizar que todo funcione.

A continuación se muestra una descripción general rápida de las funciones principales de Listmonk:

Crear una lista de correo

  • Ir Liza en la barra lateral.
  • Hacer clic Nueva lista.
  • Complete los detalles (Nombre, Tipo: Público/Privado, Descripción, Etiquetas) y Salvar.

Agregar suscriptores

  • Navegar hasta el Suscriptores sección.
  • Puedes agregar suscriptores:
    • A mano:Haga clic Nuevo suscriptor.
    • Importar:Haga clic Importar suscriptores para cargar un archivo CSV.
    • API:Utilice la API de Listmonk para adiciones programáticas.
  • Asignar suscriptores a una o más listas durante la creación o importación.
  • Mejores prácticasUtilice un proceso de doble confirmación. Configure esto en Configuración -> Suscripciones y suscripción.

Crear y enviar una campaña

  • Ir Campañas -> Nueva campaña.
  • Complete los detalles de la campaña (nombre, asunto, correo electrónico del remitente, lista(s) a las que enviar).
  • Elija su tipo de contenido (Texto enriquecido/HTML, Texto simple, HTML sin procesar).
  • Redacta el contenido de tu correo electrónico. Puedes usar variables de plantilla como {{ .Subscriber.Email }} o {{ .Subscriber.FirstName }}.
  • ¡Envíe siempre primero un correo electrónico de prueba! Utilice la opción "Enviar prueba" para obtener una vista previa del correo electrónico en su bandeja de entrada.
  • Una vez satisfecho, haga clic en Iniciar campaña para enviar inmediatamente o programarlo para más tarde.

  • Entrega SMTPEnvíe periódicamente correos electrónicos de prueba a través de la página de configuración SMTP de Listmonk y pruebe campañas para garantizar que los correos electrónicos se entreguen correctamente.
  • Manejo de rebotes: Envíe una campaña de prueba a una dirección de correo electrónico que se sabe que no es válida (por ejemplo, bounce-test@yourdomain.com Si no tienes uno real a mano (aunque los resultados pueden variar), revisa las estadísticas de la campaña en Listmonk después de un rato para ver si se registra el rebote.
  • Encabezados de correo electrónico:Utilice herramientas como Probador de correo o inspeccione los encabezados de correo electrónico manualmente para verificar que SPF, DKIM y DMARC estén pasando, lo que indica una configuración adecuada a través de Reenvío de correo electrónico.
  • Reenviar registros de correo electrónico:Consulte los registros del panel de control de reenvío de correo electrónico si sospecha que hay problemas de entrega que se originan en el servidor SMTP.

  • PlantillasListmonk utiliza el motor de plantillas de Go. Consulta su documentación para obtener opciones de personalización avanzadas. {{ .Subscriber.Attribs.your_custom_field }}.
  • APIListmonk ofrece una API REST completa para gestionar listas, suscriptores, campañas, plantillas y más. Encuentra el enlace a la documentación de la API en el pie de página de tu instancia de Listmonk.
  • Campos personalizados:Defina campos de suscriptor personalizados en Configuración -> Campos de suscriptor para almacenar datos adicionales.
  • Ganchos web:Además de los rebotes, Listmonk puede enviar webhooks para otros eventos (por ejemplo, suscripciones), lo que permite la integración con otros sistemas.

Al integrar la potencia de Listmonk con la entrega segura y respetuosa con la privacidad de Forward Email, crea una plataforma de email marketing robusta y ética. Mantiene la plena propiedad de los datos de su audiencia y se beneficia de una alta capacidad de entrega y funciones de seguridad automatizadas.

Esta configuración proporciona una alternativa escalable, rentable y amigable para los desarrolladores a los servicios de correo electrónico propietarios, alineándose perfectamente con el espíritu del software de código abierto y la privacidad del usuario.

¡Feliz envío! 🚀