Servidor de Correos + Odoo, en Ubuntu 22

En este blog, te enseñaré como configurar tu servidor de correos utilizando Modoboa + SendGrid + Odoo

Para iniciar debemos de considerar lo siguiente:

  1. Hardware:
    1. Odoo por lo menos 4GB de RAM
    2. Modoboa por lo menos 2 GB de RAM
    3. Puerto 25 Abierto (Algunos VPS se debe solicitar, otros VPS si tienen restringido)
  2. Sofware:
    1. Ubuntu vps
  3. Dominio:
    1. Se debe de tener un dominio
  4. Recomendación VPS + Bonush Cash: https://www.vultr.com/?ref=9503184

Validacion puerto 25 abierto:

  1. telnet gmail-smtp-in.l.google.com 25


Iniciaremos colocando los registros de DNS:

  1. Registro MX: @ > mail.DOMINIO.COM*
  2. Registro CNAME:  autoconfig > autoconfig.dominio.com*
  3. Registro CNAME:  autodiscover >  autodiscover.dominio.com*
  4. Registro TXT:  @ >  v=spf1 mx ~all
  5. Registro TXT:  _dmarc > v=DMARC1; p=quarantine; pct=100;

Verificar que esten replicados los DNS previo a continuar, se puede utilizar una pagina como https://www.whatsmydns.net para verificar la propagación del los registros.




Utilizaremos el instalador Modoboa publicado en GitHub.

  1. Iniciaremos actualizado en vps con el comando: sudo apt update && sudo apt upgrade -y
  2. Instalaremos dependencias con el comando: sudo apt-get install -y git python3-virtualenv python3-pip
  3. Crearemos una carpeta en donde alojaremos el instlador con el comando: mkdir mail
  4. Descargar el instalador con el comando: git clone https://github.com/modoboa/modoboa-installer
  5. Luego ingresaremos a la carpeta descargada con el comando: cd modoboa-installer
  6. Crearemos el archivo de configuración con el comando: sudo ./run.py –stop-after-configfile-check dominio.com*
  7. Editaremos el instalador con el comando: sudo nano installer.cfg
    1. Editar [certificate] > Cambiar type de self-signed a letsencrypt
    2. Editar [database] > Cambiar engine de postgres a mysql
    3. Cerrar y guardar con Ctr + X y aceptar los cambios
  8. Cambiaremos el nombre del vps con el comando: sudo hostnamectl set-hostname mail.dominio.com*
  9. Luego realizaremos la instalación: sudo ./run.py –interactive dominio.com*
    1. Si falla utilizar: sudo ./run.py –interactive
  10. Al finalizar ya podremos ingresar a la pantalla de configuración de Modoboa en el sitio: https://mail.dominio.com*
  11. Luego iniciaremos sesion con las credenciales de admin/password (usuario: admin, password: password)
  12. Luego debemos de irnos a Dominios, y debemos de agregar nuestro dominio. (imagen 12)
  13. Luego agregar el usuario maestro, en este caso postmaster@dominio.com, segun el protocolo de SMTP.
  14. Luego ingresar al dominio y agregar una cuenta.
  15. Para luego ya poder enviar correos electronicos desde el webmail.

Log correos: tail -f  /var/log/mail.log


Posibles fallas:

  1. ERROR 1: connect to 127.0.0.1:9999: Connection refused (EN LOG)
    1. Solución:
      1. Reiniciar servicio: sudo systemctl restart supervisor
      2. Editar configuración postfix con el comando: sudo nano /etc/postfix/main.cf
        1. Debemos de comentar la linea de la configuracion check_policy_service (Colocandole un # en el inicio)
      3. Reiniciar servicio postfix con el comando: sudo systemctl restart postfix
  2. ERROR 2: [Errno 111] Connection refused
    1. Solución:
      1. Verificar:
        1. NGINX:
          1. Verificar rutas de ssl en archivos de ruta: /etc/nginx/sites-enabled/
        2. DOVECOT:
          1. Verificar rutas de ssl en archivo: /etc/dovecot/conf.d/10-ssl-keys.try
          2. Verificar estado de dovecot: sudo systemctl status dovecot > debe de estar activo
        3. POSTFIX:
          1. Verificar rutas de ssl en archivo: /etc/postfix/main.cf


Registro de DKIM

  1. Ingresar a la configuración de Modoboa, en la seccion de dominios y hacer click en dominio.com*
  2. Luego en DKIM key, hacer click en "Show key"
    1. Hacer click en el formato RAW para copiarlo
  3. Realizar un registro de DNS con el siguiente valor:
    1. Registro TXT: modoboa._domainkey >  v=DKIM1;k=rsa;p={pegar punto 2.a}


Con eso finalizariamos la configuración del correo electronico.


Ahora estaremos realizando las configuraciónes en Odoo.


Servidor Correos Saliente:

  1. Para ello utilizaremos SendGrid, en el cual consiste en ingresar a https://sendgrid.com, crear una cuenta con el alguna cuenta creada del servidor de correos.
  2. Y realizaremos toda la guia de validacion, siguiendo todos los pasos de verificación con el Dominio via SMTP.
    1. Es importante que la parte de autenticación con el dominio sea finalizada satisfactoria mente.
      1. Aqui observaremos varios cambios en los registros de DNS
    2. Guardar el apikey generado en la configuración
  3. Al finalizar, ya tendremos todos los datos para configurar el servidor saliente en Odoo.
  4. Ingresar en Ajustes / Tecnico / Configuracion Servidor Correos Saliente
  5. Crear un nuevo registro con la siguiente información:
    1. Nombre: SendGrid
    2. Cifrado de la conexion: TLS
    3. Servidor SMTP: smtp.sendgrid.net
    4. Puerto: 25
    5. Nombre de usuario: apikey
    6. Password: Pegar apikey (Punto 2b)
  6. Luego hacer click "Probar conexión", y debera de salir, "Prueba satisfactoria"


Servidor Correos Entrante:

  1. Ingresar en Ajustes / Tecnico / Configuracion Servidor Correos Entrante
  2. Crear un nuevo registro con la siguiente información:
    1. Nombre: dominio.com*
    2. Tipo de Servidor:  Servidor IMAP
    3. Nombre del servidor:  mail.dominio.com*
    4. Puerto: 143
    5. Nombre de usuario: cuenta correo electronico
    6. Password: contraseña correo electronico
  3. Luego hacer click "Confirmar"
  4. Luego obtendremos los correos electronicos por medio de una acción pleada llamada "Correo: servicio de Fetchmail"



Pruebas realizadas en Odoo 17 Community Edition

Servidor de Correos + Odoo, en Ubuntu 22
Rodrigo Contreras 5 de abril de 2024
Compartir
Archivo
Iniciar sesión dejar un comentario
Procedimiento Instalar Odoo en Ubuntu 22
En este blog se te estará enseñando el procedimiento para instalar Odoo en el sistema operativo Ubuntu 22.

To install this Web App in your iPhone/iPad press and then Add to Home Screen.