Postal: La alternativa a Sendgrid que todos deberíamos probar

Cada vez es más común que las empresas utilicen sus propios servidores de correo y que implementen email marketing, personalmente creo que una de las herramientas que mejor se adapta a la hora de realizar estas labores es Sendgrid, pero lamentablemente es privativa. Una alternativa a Sendgrid que he testeado desde hace un par de días es Postal, un servidor de correo de código abierto con características muy interesante y que se puede instalar fácilmente en nuestro servidor web.

¿Qué es Postal?

Postal es una herramienta de código abierto, desarrollada en Ruby, Php y Node por el equipo de aTech Media y que nos permite tener un servidor de correo con amplias características en cualquier plataforma o servidor web.

Esta herramienta es una excelente alternativa a SendGrid, Mailgun o incluso el menos popular Postmark, originalmente fue creada para cubrir las necesidades básicas del equipo de aTech pero luego fue liberado para el uso de todos los usuarios.

La herramienta posee una interfaz bastante agradable y ha sido testeado por más de 6 meses, además cuenta con una api sencilla que nos permitirá realizar envíos y recepción de correos de forma más automática.

Una variedad de capturas de la aplicación seguramente dará una explicación más a detalle de las característica de este excelente servidor de correo de código abierto.

¿Cómo instalar Postal?

Antes de instalar Postal necesitamos tener instalado Ruby, MySQL, RabbitMQ, Node.js y git, luego debemos seguir los siguientes pasos:

  1. Crear la database correspondiente y prepararla para el buen funcionamiento de Postal
    mysql -u root -p
    

    Debemos crear la database postal, debes reemplazar la ip local de tu servidor y también la XXX por la contraseña que desee.

    CREATE DATABASE `postal` CHARSET utf8mb4 COLLATE utf8mb4_unicode_ci;
    GRANT ALL ON `postal`.* TO `postal`@`127.0.0.1` IDENTIFIED BY "XXX";

    Permita que un usuario en especifico tenga acceso a todas las bases de datos con prefijo postal-.

    GRANT ALL PRIVILEGES ON `postal-%` . * to `postal`@`%`  IDENTIFIED BY "XXX";
  2. Cree un host virtual RabbitMQ con los siguientes comandos:
    sudo rabbitmqctl add_vhost /postal
    sudo rabbitmqctl add_user postal XXX
    sudo rabbitmqctl set_permissions -p /postal postal ".*" ".*" ".*"
  3. Prepare su distro para ejecutar postal
    sudo useradd -r -m -d /opt/postal -s /bin/bash postal
  4. Instale dos dependencias necesarias y que pocos proyectos necesitan:
    sudo gem install bundler
    sudo gem install procodile
  5. Clone el código fuente en el directorio adecuado con el siguiente comando:
    sudo -u postal git clone https://github.com/atech/postal /opt/postal/app
    

    Podemos crear un enlace simbolico para acceder a postal desde cualquier directorio, con el siguiente comando

    sudo ln -s /opt/postal/app/bin/postal /usr/bin/postal
  6. Instale las dependencias de Ruby que necesita Postal para poder ejecutarse.
    postal bundle /opt/postal/app/vendor/bundle
  7. Ejecute la configuración inicial de la herramienta con el siguiente comando:
    postal initialize-config
  8. Inicialice la database de postal y registre su instalación para que tenga https:
    postal initialize
    

    Registrando nuestra key de lets encrypt

    postal register-lets-encrypt youremail@example.com
  9. Ejecute su servidor de postal y comience a disfrutar:
    postal start
    

Conclusiones sobre Postal

Personalmente creo que Postal es una herramienta ideal para reemplazar los servicios en la nube que ofrecen las mismas características, debido a que nos da más control y una gestión más agradable de nuestra información. Evidentemente Postal tiene sus desventajas y ventajas sobre otras soluciones privativas o libres, por lo que es conveniente un analisis de nuestra situación para determinar si es el adecuado para nuestro uso.

De igual manera, la linea de aprendizaje de Postal es bastante corta, por lo que en ambientes controlados pudiera darse test bastante aceptables sobre el uso y funcionamiento de la herramienta.

Es importante destacar la importancia de contar con una plataforma de e-mail ligera, segura y de código abierto, pero mucho más importante, es tomar el tiempo adecuado para elegir entre la aplicación que más se adapta a sus necesidades. Yo personalmente considero a esta nueva herramienta la alternativa a Sendgrid que más se adapta a mis necesidades, por lo que la recomiendo y desde hoy pasa a estar en cola para el ambiente de producción.


Categorías

Aplicaciones, GNU/Linux

Lic. en Computación, Programador, Consultor ERP, Webmaster, Community Manager y apasionado por el Internet, tengo 8 años sumergido en el mundo del software libre, especializándome en el uso del software libre n las Empresas. La Libertad del Código es directamente proporcional al Crecimiento de una Organización

Un comentario

  1.   Carlos Mauricio dijo

    Muy interesante tu artículo, en cola para probarlo.
    Sabes de alguna opción de software libre para Slack?

    Saludos.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.