Para iniciar debemos de considerar lo siguiente:
- Hardware:
- Odoo por lo menos 4GB de RAM
- Modoboa por lo menos 2 GB de RAM
- Puerto 25 Abierto (Algunos VPS se debe solicitar, otros VPS si tienen restringido)
- Sofware:
- Ubuntu vps
- Dominio:
- Se debe de tener un dominio
- Recomendación VPS + Bonush Cash: https://www.vultr.com/?ref=9503184
Validacion puerto 25 abierto:
- telnet gmail-smtp-in.l.google.com 25
Iniciaremos colocando los registros de DNS:
- Registro MX: @ > mail.DOMINIO.COM*
- Registro CNAME: autoconfig > autoconfig.dominio.com*
- Registro CNAME: autodiscover > autodiscover.dominio.com*
- Registro TXT: @ > v=spf1 mx ~all
- 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.
- Iniciaremos actualizado en vps con el comando: sudo apt update && sudo apt upgrade -y
- Instalaremos dependencias con el comando: sudo apt-get install -y git python3-virtualenv python3-pip
- Crearemos una carpeta en donde alojaremos el instlador con el comando: mkdir mail
- Descargar el instalador con el comando: git clone https://github.com/modoboa/modoboa-installer
- Luego ingresaremos a la carpeta descargada con el comando: cd modoboa-installer
- Crearemos el archivo de configuración con el comando: sudo ./run.py –stop-after-configfile-check dominio.com*
- Editaremos el instalador con el comando: sudo nano installer.cfg
- Editar [certificate] > Cambiar type de self-signed a letsencrypt
- Editar [database] > Cambiar engine de postgres a mysql
- Cerrar y guardar con Ctr + X y aceptar los cambios
- Cambiaremos el nombre del vps con el comando: sudo hostnamectl set-hostname mail.dominio.com*
- Luego realizaremos la instalación: sudo ./run.py –interactive dominio.com*
- Si falla utilizar: sudo ./run.py –interactive
- Al finalizar ya podremos ingresar a la pantalla de configuración de Modoboa en el sitio: https://mail.dominio.com*
- Luego iniciaremos sesion con las credenciales de admin/password (usuario: admin, password: password)
- Luego debemos de irnos a Dominios, y debemos de agregar nuestro dominio. (imagen 12)
- Luego agregar el usuario maestro, en este caso postmaster@dominio.com, segun el protocolo de SMTP.
- Luego ingresar al dominio y agregar una cuenta.
- Para luego ya poder enviar correos electronicos desde el webmail.
Log correos: tail -f /var/log/mail.log
Posibles fallas:
- ERROR 1: connect to 127.0.0.1:9999: Connection refused (EN LOG)
- Solución:
- Reiniciar servicio: sudo systemctl restart supervisor
- Editar configuración postfix con el comando: sudo nano /etc/postfix/main.cf
- Debemos de comentar la linea de la configuracion check_policy_service (Colocandole un # en el inicio)
- Reiniciar servicio postfix con el comando: sudo systemctl restart postfix
- ERROR 2: [Errno 111] Connection refused
- Solución:
- Verificar:
- NGINX:
- Verificar rutas de ssl en archivos de ruta: /etc/nginx/sites-enabled/
- DOVECOT:
- Verificar rutas de ssl en archivo: /etc/dovecot/conf.d/10-ssl-keys.try
- Verificar estado de dovecot: sudo systemctl status dovecot > debe de estar activo
- POSTFIX:
- Verificar rutas de ssl en archivo: /etc/postfix/main.cf
Registro de DKIM
- Ingresar a la configuración de Modoboa, en la seccion de dominios y hacer click en dominio.com*
- Luego en DKIM key, hacer click en "Show key"
- Hacer click en el formato RAW para copiarlo
- Realizar un registro de DNS con el siguiente valor:
- 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:
- 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.
- Y realizaremos toda la guia de validacion, siguiendo todos los pasos de verificación con el Dominio via SMTP.
- Es importante que la parte de autenticación con el dominio sea finalizada satisfactoria mente.
- Aqui observaremos varios cambios en los registros de DNS
- Guardar el apikey generado en la configuración
- Al finalizar, ya tendremos todos los datos para configurar el servidor saliente en Odoo.
- Ingresar en Ajustes / Tecnico / Configuracion Servidor Correos Saliente
- Crear un nuevo registro con la siguiente información:
- Nombre: SendGrid
- Cifrado de la conexion: TLS
- Servidor SMTP: smtp.sendgrid.net
- Puerto: 25
- Nombre de usuario: apikey
- Password: Pegar apikey (Punto 2b)
- Luego hacer click "Probar conexión", y debera de salir, "Prueba satisfactoria"
Servidor Correos Entrante:
- Ingresar en Ajustes / Tecnico / Configuracion Servidor Correos Entrante
- Crear un nuevo registro con la siguiente información:
- Nombre: dominio.com*
- Tipo de Servidor: Servidor IMAP
- Nombre del servidor: mail.dominio.com*
- Puerto: 143
- Nombre de usuario: cuenta correo electronico
- Password: contraseña correo electronico
- Luego hacer click "Confirmar"
- Luego obtendremos los correos electronicos por medio de una acción pleada llamada "Correo: servicio de Fetchmail"
Pruebas realizadas en Odoo 17 Community Edition