Montar un servidor de correo «casero» e incluso a nivel de una pequeña empresa en GNU linux no es sencillo si vamos a hacerlo instalando todos los módulos por separado, para qué nos vamos a engañar. Es una tarea lenta que requiere instalar multitud de componentes (apache, php, mysql, dovecot, postfix, spamassasin, antivirus… y un largo etcétera) y configurarlos correctamente para que interactuen ente ellos de la forma en que se espera. Sin embargo hay unas cuantas soluciones integradas y completamente gratuítas que nos permiten poner en marcha algo tan complejo de forma más o menos sencilla.

Espera… ¿Me estás diciendo que has hecho trampa montando esta web y todo el tinglado que tienes en este servidor? ¿Que realmente no has hecho tú la instalación de todo y se lo has dejado a un mísero programa de terceros? Me acabas de decepcionar, tío.

No es exactamente «usar trampas», Usuario Anónimo. Como muchos sabréis, esta web no está alojada en ningún hosting, sinó que cuelga directamente de un equipo que tengo montado en mi casa, en el que, además de esta web, corren un par de páginas más, un servidor de correo y un servidor de archivos en la nube basado en «nextcloud». Montar una página web sobre un apache es bastante sencillo, pero la cosa se complica bastante si quieres integrar todo con un servidor de correo electrónico. Precisamente para eso están estas soluciones. La filosofía de la mayoría de ellas es instalarlas con el sistema operativo limpio (Normalmente la versión servidor de un sistema Linux) y una vez instalada, sobre ellas ya puedes hacer las modificaciones que consideres de forma más o menos sencilla.

En este artículo voy a ir mencionando las soluciones que he ido probando y me parecen más sencillas de instalar (y algunas que aún no he probado, pero que les tengo muchas ganas) e intentaré explicar cómo es la instalación de cada una, sus ventajas y sus inconvenientes, pero antes creo que es conveniente tener claro lo que debemos preparar antes de hacer la instalación de cualquiera de estos servidores.

Requisitos comunes a todos los sistemas de correo.

Básicamente se resumen en cuatro: Tener un sistema operativo base para instalar el servidor de correo, tener un dominio propio (ya sea gratuíto o de pago), dirigir el dominio a la dirección ip de nuestro servidor y mapear determinados puertos del router hacia nuestro servidor.

Sistema base para la instalación

Como os he indicado antes, para mi lo idóneo es instalar el servidor de correo en un sistema GNU/Linux limpio y recién instalado.

¿Pero por qué te empecinas en Linux si todo el mundo usa Windows?

Sííííí, lo sé. Harto estoy de oírtelo a ti y a mucha gente. Pero tienes que tener claras unas cuantas cosas:

  1. Que montemos el servidor de correo sobre Linux no implica que la gente que lo use tenga que tener Linux. Puede tener el sistema operativo que le dé la gana y va a poder gestionar el correo como quiera (por medio de una aplicación como Outlook o BlueMail, desde móvil, táblet u ordenador, por POP o IMAP, mediante webmail…).
  2. Estamos hablando de montar un servidor de correo. Recalco: SERVIDOR. Las versiones servidor de Windows tienen estos precios las más baratas.

Y si por encima quieres montar un servidor de correo exchange (Que es el estándar de Microsoft), tienes que comprarlo aparte y su precio es éste.

Ahora mírame a los ojos y dime que quieres gastarte un mínimo de 932’99 euros para instalar un servidor de correo en un servidor Windows (más aparte el hardware, claro)

Bueno tío... ¡cómo te pasas!. Si yo he encontrado licencias de esas mucho más baratas haciendo una simple búsqueda en Google. 

Ya sé por dónde vas, Usuario Anónimo. Tú has visto cosas como ésta y te están haciendo los ojos chiribitas.

Te lo voy a decir claramente: Los precios de las licencias son los que son y precios como estos últimos son directamente imposibles para licencias nuevas. ¿De dónde sacan estas gangas algunos vendedores? Pues habrá quien te venda un producto pirata como original, habrá quien te venda un producto que ha sido usado ya en otro lado y hace una transferencia de licencia hacia ti (cosa que no es legal por el contrato con Microsoft), habrá quien le venda la misma licencia a cinco personas diferentes… ¿yo qué sé? Pero hazme caso: si no quieres tener problemas legales no tires por este tipo de gangas, que estamos hablando de una licencia de servidor y como te pillen con una licencia trapicheada te pueden buscar las cosquillas (que con licencias de servidor Microsoft no se anda con bromas).

Así que montaremos nuestro servidor de correo sobre un linux, pero sobre un Linux Server. Lo dedicaremos íntegramente al programa de gestión del correo electrónico. ¿Qué distribución de linux vamos a usar? Pues casi lo mejor es primero ver qué servidor de correo vamos a instalar y según requerimientos instalar una distribución u otra. Según vayamos viendo opciones os iré aconsejando sobre qué distribución podríais instalar todo.

Dominio para nuestro correo.

Como sabéis, las direcciones de correo se componen de tres partes. Empiezan por el nombre de la cuenta, luego va una arroba y luego el dominio al que pertenece la cuenta. Debemos asegurarnos de tener un dominio propio para nuestro servidor. Podemos comprar uno en multitud de sitios de internet (yo he tenido buenas experiencias en «dondominio.com») o si no queremos gastarnos mucha pasta podemos recurrir a uno gratuíto, como los que tienen extensión «.tk», o los dominios gratuítos de tercer nivel como los que podemos conseguir en «DNSExit.com».

El gran problema es que los proveedores de dominios gratuítos suelen tener problemas con la reputación de sus dominios. Podemos usar un dominio del tipo «loquesea.linkpc.net» (que nos lo daría gratis DNSExit), pero es habitual que los dominios de segundo nivel que nos permiten usar (como «linkpc.net») estén añadidos en listas negras (cosa que no podremos evitar, porque hay spammers que los usan), así que debemos intentar siempre que sea posible usar dominios de este tipo para servidores de correo.

¿Cómo que listas negras? ¿Qué es eso? ¿Voy a tener problemas con la mafia si monto un servidor de correo?

Más o menos, si consideras como «mafia» a los administradores de las cuentas de hotmail y outlook. Te explico: si cuando montas un servidor de correo en un dominio te pasas de listo y empiezas a enviar spam desde ese dominio (o te «hackean» algo y alguien empieza a enviar spam desde tu dominio), tarde o temprano alguien se va a enterar. En primer lugar empezarán a llegar montones de mails de tu dominio a los dominios más usados de internet (outlook, gmail, yahoo, etc…) y por otro lado hay sistemas que su misión es encontrar dominios como el tuyo que estén enviando mails masivos. En MXtoolbox (en la opción «Email blacklist check») puedes introducir un dominio cualquiera o una dirección IP y ver si alguno de esos sistemas ha agregado tu dominio o tu IP a sus listas de equipos que envían SPAM. Y casi siempre los servicios gratuítos que ofrecen dominios de tercer nivel están listados.

Bueno… vale. Supón que mi dominio está en esas listas negras. ¿Y eso en qué me influye?

Pues supone entrar en la peor de las pesadillas para un administrador de un servidor de correo electrónico. Muchos otros servidores (incluídos algunos de los montados con las herramientas que explicaremos más adelante) se van a negar a recibir correo de cualquier dominio o IP que esté en esas listas negras, precisamente para evitar recibir spam en todas sus cuentas. Además sitios como «outlook.com» tienen una política antispam totalmente abusiva en este sentido, que hacen que aunque no estés en ninguna lista negra, puede que estés en la que se elaboran ellos mismos, y a veces estás ahí por motivos incomprensibles.

¿Ejemplos de la mala praxis de Outlook? Pues que limitan el número de mensajes que otro dominio puede enviar al suyo… ¡Porque ellos lo valen! Mira el mensaje que he llegado a recibir desde su servicio.

Outlook.com limita el número de mensajes que una IP en concreto puede enviar en un periodo de tiempo basándose en la reputación de la IP. Cuando una IP excede su límite de envío, cualquier comando SMTP recibirá el código de error 421 de Outlook.com y la conexión se terminará.

No Usuario Anónimo. No es este SPAM al que nos estamos refiriendo.

Y luego te remiten a esta bonita dirección para que ingreses en su programa de reputación y poder seguirles mandándoles mensajes y bla, bla, bla… Que vale… que si te agregas a su programa puedes solucionarlo, pero si todos los dominios hicieran eso cada vez que reciben muchos mails de otros dominios, nadie podría comunicarse por correo electrónico. Supuestamente es para evitar que a sus clientes les llegue SPAM, pero en la práctica no sirve de gran cosa (porque si en algo es bueno el servicio de outlook es en recibir correo basura), es una forma de abordar el problema lamentable y acaban teniendo cabreados a los administradores de sistemas que quieren enviarles correos.

En fin, resumiendo: si estamos en una lista negra vamos a tener un serio problema para poder enviar correo con normalidad y la mayoría de dominios van a rechazar nuestro correo (y no podremos evitarlo) si hemos usado un dominio gratuíto de tercer nivel.

Yo siempre recomiendo, sobre todo si vais a empezar a hacer pruebas con servidores de correos, comprar un dominio de tercer nivel en «dondominio.com». Son insultántemente baratos (3 euros al año) y además de ser un dominio propio que no va a entrar en listas negras por culpa de otros, tendremos facilidades para apuntarlo a nuestra dirección ip (esto lo explicaré ahora mismo).

IP de nuestro servidor de correo y línea de internet sobre la que está montado.

Es muy importante que el dominio del correo apunte a la ip pública de nuestro servidor de correo (la ip desde la cual nuestro router accede a internet). El gran problema es que si estáis leyendo este tutorial, casi puedo suponer que estáis dando los primeros pasos con este tipo de servidores y estáis haciendo pruebas en alguna línea doméstica. Las líneas domésticas tienen un problema para ser utilizadas en servidores de correos, y es… que están añadidas a listas negras por defecto.

Madre mía. Pues sí que es un problema lo de las listas negras. Ya estoy en la lista negra de alguien y aún no he empezado a montar nada. 

Pues sí. Y además no hay forma humana de dejar de estar baneado. Los servidores de correo siempre asocian que una IP «variable» como la que nos dan la gran mayoría de proveedores de internet es una IP desde la que se envía SPAM. ¿Por qué? Pues porque cuando estas IP’s envían correo directamente (Sin usar un proveedor de correo) suele ser porque hay un ordenador doméstico infectado con un virus enviando SPAM. Así que si usáis una ip que no es fija tendréis un problema para enviar correo, aunque es solucionable con un pequeño ajuste en el servidor de correo que os indicaré en el próximo artículo (haremos lo que se llama un «relay» hacia otro servidor que no tenga este problema). Lo dejamos para otro artículo porque para aplicar esta «ñapa» primero hay que tener un servidor de correo montado y no quiero que este artículo se extienda más de lo que ya se va a extender.

Por otra parte, debemos saber antes de empezar si nuestro proveedor de internet nos ofrece una IP pública en nuestra línea (una ip que, aunque pueda variar, es única en todo internet) o nos conecta mediante CG-NAT (o sea, que la dirección sobre la que salimos la comparte entre varios clientes).

Oye... que yo sé de gente que tiene conexión sobre CG-NAT y tiene una velocidad estupenda, les va todo genial y hasta tienen éxito con el sexo opuesto. 

Ya, ya… todo es muy bonito hasta que te llega la hora de mapear un puerto. Esto lo veremos con más calma en el punto siguiente, pero quedaos con este dato. Si tenéis una línea CG-NAT no podéis montar un servidor de correo. Esta guía ha acabado para vosotros.

¿Cómo? Pero tú siempre eres el de los trucos, las ñapas, las soluciones rarunas para hacer funcionar algo dónde no funciona. ¿Cómo es que directamente tiras la toalla? Si mis amigos tienen chorrocientos mil megas contratados en esas líneas y tienen una velocidad que...

No todo es velocidad en internet, Usuario Anónimo. Las líneas CG-NAT es una aberración informática que nunca debió concebirse (sobre todo sabiendo que la solución correcta este problema es implementar de una vez IPv6 en todas las líneas, no hacer ñapas de tamaña envergadura). Yo soy muy pacífico pero el que implementó CG-NAT por primera vez debería tener una muerte escrita y dirigida por Quentin Tarantino (y me quedo muy corto). Te explico el despropósito de este sistema: Para montar un servidor de correo, otros servidores deben poder llegar a tu ordenador de alguna forma. Si yo les digo «tengo CG-NAT y mi IP es ésta», al llegar a esa IP que usa CG-NAT, un servidor externo se va a encontrar a un montón de clientes de la compañía compartiendo esa dirección. ¿A cuál de ellos dirijo el tráfico? Es como si mandas una carta a un edificio de 20 pisos. La carta puede llegar al portal, pero ¿Cual es la vivienda a la que hay que enviarla? No lo sabes, y la carta no podrá ser entregada en el buzón correcto. Es imposible hacer nada serio en una línea de éstas. Tenéis una lista de proveedores que usan CG-NAT en sus líneas en este enlace.

Oye... me acabo de dar cuenta. Si tengo una IP variable ¿Cómo hago para dirigir el dominio a una ip que se menea más que la compresa de una coja?

Muy buena pregunta, aunque esto ya lo tratamos en el punto 3 de este otro tutorial. Lo más recomendable en este caso es contratar el dominio en un proveedor que nos preste un servicio para redirigir la ip dinámica de nuestro router contínuamente al dominio que le hayamos contratado. ¿Os acordáis que antes hablamos de DNSExit como proveedor de dominios gratuítos de tercer nivel? Pues esta gente tiene un servicio para hacer esto mismo, tanto en dominios gratuítos como en dominios de pago (Sí… a esta gente podéis comprarle un dominio «.com» normal y corriente y ya no tendréis el problema del dominio baneado).

Yo personalmente lo he hecho con «dondominio«. Es un proveedor de dominios español que personalmente me da más confianza que DNSExit. Tienen esta herramienta para dirigir la ip de tu router a tu dominio, y si quieres ahorrar pasta puedes contratarles un dominio «.com.es» por sólo 3 euros al año (por ese precio vas a tener dominio no baneado y redirección). Es el que uso yo para varios dominios que controlo en distintas IP’s (incluído éste de flopy.es) y por el momento no me ha fallado ni una sóla vez (toco madera).

Resumiendo. Siempre que se pueda, IP fija (Sobre todo si va a haber gran volumen de correo saliente), y obligatorio una línea sin CG-NAT y que te permita mapear puertos. Y si tienes IP variable, pues tienes que contratar el dominio en un proveedor que te ofrezca redirección para tu ip dinámica (que no todos lo ofrecen y una vez instalado todo tienes que configurar un relay del correo saliente porque si no todos los servidores a los que envíes correos van a tenerte baneado.

Mapeado de puertos

Por último vamos a necesitar mapear bastantes puertos desde nuestro router hacia el ordenador en el que vamos a instalar el servidor de correo. Serán como mínimo los siguientes:

  • 22 (SSH)
  • 25 (SMTP)
  • 80 (HTTP)
  • 443 (HTTPS)
  • 587 (SMTP)
  • 993 (IMAP)

Aunque puede ser alguno más dependiendo del sistema que pongamos como servidor de correo electrónico. Por ejemplo, Mail-in-a-box os pedirá mapear también el 53 (Servidor de DNS) y Virtualmin os pedirá a mayores el 10000 y el 20000, así que fijaos en los requisitos de cada sistema a la hora de mapear puertos.

El problema aquí de nuevo viene de mano de las operadoras de telefonía. Hay algunas operadoras (Sí, Vodafone, te estoy mirando a ti) que a pesar de no hacer CG-NAT, lo que hacen a sus clientes de residencial es no permitir mapear algunos puertos, y ¡¡Oh, que casualidad!! Los que tienen en el punto de mira suelen ser el 80, el 443, el 587 y el 25, precisamente los más importantes para montar un servidor de correo.

Ajá, pero seguro que tienes algún truco para solucionarlo ¿la solución es...?

Pues la solución es cambiar de compañía. Vodafone te pone unos precios bajos en líneas en las que no puedes mapear estos puertos tan importantes, con el pretexto de que «los usa el router», o «esto es para incrementar tu seguridad. El puerto 25 no deberías tenerlo abierto» y cosas así. Pero ¡Oh, qué sorpresa! Si te vas a líneas más caras de su oferta (más velocidad) estas restricciones dejan de existir. Vale… en la práctica, pagando más a vodafone resuelves el problema, pero yo me negaría aceptar un chantaje (pagarles más todos los meses) cuando realmente no te tiene por qué hacer falta. Yo personalmente me iría a otro lado en el que sí te dan ese servicio en líneas básicas (al menos hasta que no cambien de política con éste tema). Aunque como todo… si te planteas una línea con ip fija o directamente quieres una línea con muchísima velocidad, seguro que esa misma operadora tiene esta tema solucionado si estás dispuesto a gastarte más pasta, mira tu por dónde (ains…).

Sobre cómo mapear los puertos no voy a entrar, porque el mapeo en cada router es diferente. Además, me niego a creer que si estás mirando un tutorial para crear un servidor de correo no sepas mapear puertos. Eres capaz de eso y de mucho más, estoy convencido.

Veamos ahora las opciones que más me han gustado para instalar un servidor de correo.

1- Mail-in-a-box

Empecemos por la que casi más he usado. Mail-in-a-box requiere que sea instalado sobre la última versión LTS de Ubuntu Server. Es sobria y hasta podríamos decir que el panel de control para gestionar los usuarios de correo es algo feo y anticuado, pero sin embargo tiene todo lo que se necesita para gestionar correo electrónico y mucho más. He de decir que he llegado a tener 180 usuarios de correo electrónico en uno de estos sistemas, usando muy activamente el correo tanto en oficina (pop) como en movilidad (imap) y a pesar de verse como una solución muy de andar por casa, es tremendamente robusta y funciona de fábula (Y mira que le he hecho diabluras a este sistema). La sencillez de instalación y gestión no me deja más opción que recomendar este sistema como primera opción si queréis empezar con buen pie en este mundillo y con algo que sea realmente sencillo de instalar y gestionar.

Vamos a hacer un esquema de los puntos fuertes y débiles de esta solución.

Ventajas
  • Principal: Instalación absurdamente sencilla. La más sencilla de todos los sistemas que he probado.
  • Te gestiona automáticamente los certificados de Let’s Encrypt necesarios para que todo te funcione bien.
  • Tienes un control sencillo de todo lo referente a los diferentes dominios que puedas querer gestionar desde su panel de control, así como de la red en la que tienes el sistema instalado (posibles incursiones en listas negras, revisión constante de puertos abiertos, gestión de subdominios, DNS, etc..). Te avisa de cualquier problema que puedas tener en la red o configuración de tus dominios de una forma muy visual y proponiendo soluciones, y te irá diciendo qué cosas tienes que cambiar en tu dominio para asegurar que todo vaya sobre ruedas.
En esta captura podéis ver que distintos parámetros importantes para el servidor de correo están controlados.
  • En cuanto a la seguridad, nos configura fail2ban para evitar posibles incursiones en el servidor. Como sistema anti-spam, además de autoconfigurar spamassassin, también autoconfigura por defecto un sistema de listas grises.
¿Listas grises? ¿No te referirás a las listas negras de las que nos hablaste en el apartado sobre los dominios?

No Usuario Anónimo. Las listas grises es un sistema anti-spam que hoy en día tienen implementado muchos servidores de correo. Si alguien envía un correo por primera vez a una cuenta alojada en nuestro servidor (nos lo envía una cuenta que nunca antes nos había escrito), lo que hará nuestro servidor es rechazar ese correo y devolverlo al servidor que lo envió con un código de error. Si ese servidor que lo envió está correctamente configurado (como lo estará nuestro mail-in-a-box) debería reintentar el envío del correo de nuevo en unos minutos y esa segunda vez entonces nuestro servidor sí que aceptará el correo. ¿Por qué se hace esto? Pues porque normalmente los servidores de la gente que envía SPAM no tienen nada configurado para repetir el envío del mensaje, así que este sistema hará que no recibamos tanto correo basura, algo que siempre es de agradecer.

  • La instalación incluye Nextcloud (que se autoinstala con el resto del sistema) aunque los desarrolladores indican que quieren que sólo se use para gestión de contactos y calendarios (pero sé de buena tinta por los comentarios de los foros del programa que hay gente que usa ese nextcloud para almacenamiento de archivos).
  • Ya que hablo de los foros de mail-in-a-box, decir que son muy activos y puedes resolver cualquier tipo de problemas en ellos (Aunque son en inglés, of course).
  • El sistema te instala la última version de Roundcube para gestionar el correo por Webmail con todas sus funcionalidades activadas.
  • Tiene integrada una funcionalidad para gestionar copias de seguridad de todo el sistema.
  • No tienes por qué preocuparte de las notificaciones push. Ya las integra (Gracias a Z-push) y están configuradas por defecto, así que tendrás el correo en tu móvil nada más llegar al servidor de correo.
  • Algo importante: además de ser un sistema libre es TODO completamente gratuíto. No hay funcionalidades de pago, así que estaréis disfrutando de todo el sistema desde el minuto 1.
  • Consecuencia de ese último punto, es que podemos crear todas las cuentas de correo que queramos dentro del sistema. No hay límites en este sentido (Cosa que en algún otro sistema si hay, pero eso lo veremos cuando analicemos otras opciones).
Inconvenientes:
  • Alguno me va a matar por lo que voy a decir, pero… usa Nginx en lugar de Apache. Lo siento… pero soy un fanboy de Apache (y sé que esto es más cosa de corazón que de cabeza), y me siento incómodo cuando tengo que hacer alguna configuración en Nginx. Esto no tiene por qué ser inconveniente si te da igual este tema, pero para mi es un pequeño trauma aún no superado.
  • A pesar de que se puede alojar una pequeña web en HTML como cabecera del dominio, los desarrolladores no recomiendan alojar webs «complejas», como algo hecho en wordpress ni nada parecido. Así que en principio sólo os sirve como servidor de correo.
  • El servidor de nextcloud que incluye, a pesar de ser completamente funcional, también recomiendan no usarlo para el almacenamiento de archivos, sinó sólo para gestionar contactos y calendarios.
  • No es posible gestionar la capacidad de las cuentas de correo creadas en este sistema. Todas tienen tamaño ilimitado. Además, si quieres ver el espacio que ocupa cada una de las cuentas tendrás que verlo mediante el terminal (son funcionalidades que no hay en el panel de control por ahora).
  • Sólo puede instalarse sobre la última LTS de Ubuntu y con paquetes X64, por lo que si estáis pensando en instalarla en una Raspberry u otro sistema operativo como Debian o Arch siento decepcionaros pero no va a ser posible.
Instalación

Pues tal y cómo os he comentado, es insultántemente sencilla. Tenéis una guía de instalación en el siguiente vídeo.

Pero os lo puedo resumir de una forma muy sencilla. Una vez instalado el servidor de Ubuntu, sólo hay que ejecutar este comando.

curl -s https://mailinabox.email/setup.sh | sudo bash

y seguir instrucciones (que están muy detalladas en el vídeo), pero que básicamente consisten en responder preguntas. Así de sencillo podéis tener este servidor funcionando.

2- iRedMail

En cuestión de sencillez, para mi iRedMail es la segunda opción, ya que también es un sistema muy sencillo de poner en marcha y la destaco claramente como segunda opción porque resuelve un problema de mail-in-a-box, y es que ¡podemos instalarlo en una Raspberry!

Espera, espera... si instalo esto ¿Convierto a mi Raspberry en un servidor de correo?

Efectivamente. ¿Te acuerdas que hace muy poco tiempo esta humilde página web que estás leyendo estaba alojada en una Raspberry? Pues esa Raspberry usaba iRedMail para hacer también de servidor de correo, además de servir como alojamiento para la web. Vamos a detallar ventajas e inconvenientes de este sistema:

Ventajas
  • Es muy sencillo realizar la instalación de este sistema (no tanto como mail-in-a-box pero también es poco más que seguir instrucciones)
  • Cuenta también con un panel de administración para añadir cuentas y en esta ocasión sí que se puede gestionar visualmente el espacio que queremos asignar a cada una de ellas
  • Se puede instalar según su documentación en Debian, CentOS, Ubuntu y OpenBSD, y comprobado que funciona también en Raspbian (que es un derivado de Debian), por lo que se puede instalar en una raspberry siempre y cuando durante la instalación se seleccione que NO se instale SOGo Groupware.
  • Con este programa sí que podremos usar la misma instalación para alojar las páginas web que necesitemos (podemos usar el servidor tanto como servidor de correo como servidor web).
  • Te instala por defecto un roundcube (Cliente de correo) con todo configurado para ser usado en producción (con los filtros habilitados, etc…) y te configura un antivirus y spamassasin.
Inconvenientes
  • A pesar de ser software libre, tiene características que sólo están disponibles para usuarios de pago (Límite de dominios gestionados, de usuarios de correo, etc…). Tenéis la lista de funcionalidades disponibles en las dos versiones en esta página. Si queréis implementar un sistema para vuestra casa o para algo personal, os va a servir perfectamente (Como me sirvió a mi en su día), pero si vais a necesitar usar muchos dominios o cuentas de correo os toca pagar, y no es precisamente barato.

Por si os sirve de referencia, yo en un iRedMail estuve gestionando desde la misma raspberry 2 dominios (con varias páginas web en cada dominio, entre ellas este blog y una instalación de Nextcloud) y unas pocas cuentas de correo en esos dominios (calculo que unas 5 a lo sumo), así que si necesitáis poca cosa os puede servir perfectamente.

  • No instala por defecto servicios push, aunque es sencillo instalarle a mayores Z-Push desde el terminal.
  • iRedMail no nos da información ninguna acerca de si tenemos los dominios o los puertos bien configurados, o si acabamos de entrar en listas negras (cosa que sí hace mail-in-a-box).
  • No instala certificados reconocidos, por lo que tendremos que instalar los de Let’sEncrypt a manubrio.
  • Hace unos años iRedMail te permitía escoger el servidor web que querías instalar (nginx o apache), pero ahora sólo permite hacer la instalación en nginx, y como soy un nginx-hater ahí va un punto negativo para este sistema.

La instalación es casi tan sencilla como la de mail-in-a-box. No es tan simple como sólo teclear un comando, pero poco le falta.

¿Opinión personal de este sistema? Pues tengo claro que es una de las mejores opciones para instalar en una Raspberry, aunque si lo tengo que usar en un sistema linux «normal», optaría por alguna otra opción más completa y sin limitaciones.

Virtualmin

Virtualmin es una verdadera maravilla. La instalación es igual de sencilla que la de mail-in-a-box y…vale: es un poco más complejo que los dos sistemas anteriores en cuanto a gestión de la interfaz, pero os va a permitir montar un verdadero hosting completo en vuestra casa, como el que podríais haber contratado en cualquier albergue de internet. Sólo mirar el panel de control de Virtualmin ya nos hace intuir que esto está jugando en otra liga.

En el momento de escribir este artículo, Virtualmin es el sistema que está generando esta página web (www.flopy.es).

El planteamiento base de este sistema es muy diferente a los anteriores. Mientras que los anteriores se enfocaban a crear un servidor de correo más o menos completo, este lo que te monta es un completo sistema de alojamiento de páginas web y de correo electrónico simultáneamente (nos monta absolutamente todo, así que nada o casi nada tendremos que hacer luego desde el terminal).

Oye, pues esto ¡Pinta muy bien! Pero ¿los requerimientos del sistema dónde instalar esto no van a ser demasiado elevados?

En absoluto. Para que te hagas una idea, tal y cómo os indiqué en ese otro artículo, el Virtualmin sobre el que está corriendo esta web está funcionando sobre una máquina virtual hecha con Proxmox que tiene asignados 4 gigas de ram y 2 núcleos de proceso (el procesador tiene 4 núcleos), pero ojo: el procesador que tiene este sistema es un mísero Intel Core i3, y está corriendo simultáneamente otras dos máquinas virtuales, así que supongo que te estarás imaginando que los requisitos de este sistema son muy bajos (Fijate en la captura que puse arriba y verás que el procesador está ocioso y que sólo estoy usando un 49% de la memoria asignada a esa máquina virtual, y le tengo asignados 4 Gigas). Vamos a ver los puntos fuertes y débiles de este sistema:

Ventajas
  • Se puede instalar sobre CentOS, Debian, Ubuntu o Red Hat Enterprise Linux (vamos… que malo será que nuestra distribución favorita para servidores no esté soportada). Oficialmente no se puede instalar en una Raspberry, pero por lo visto hay gente que lo ha podido instalar (yo no he llegado a probar).
  • De nuevo tenemos una instalación muy sencilla, como en los dos casos anteriores (en este artículo no quiero poner sistemas demasiado complicados, ya que quiero enfocarlo a gente que está dando sus primeros pasos en este mundo).
Que conste, este vídeo no es mío a pesar de usar también Proxmox para alojar Virtualmin.
  • Desde el panel de control puedes ver a la perfección el estado del sistema operativo y de Virtualmin. Si tienes alguna actualización (de cualquier tipo, de sistema o de Virtualmin), podás ver una notificación avisándote y podrás aplicarla desde el panel sin necesidad de ir al terminal (esto no lo hace Mail-in-a-box). Incluso si la actualización es de las que te obligan a reiniciar el sistema operativo, podrás hacer la instalación y el reinicio desde el mismo panel de control.
  • Al igual que en Mail-in-a-box vas a tener todo lo que te imagines instalado y configurado: Cuentas pop, imap, webmail, tendrás un sistema antispam, antivirus y el sistema gestiona automáticamente los certificados de los dominios con LetsEncrypt. Y ¡Usa Apache! (Sí, soy un pesao con apache ¡Qué le voy a hacer!)
  • Vas a poder gestionar todos los dominios completamente por separado, y esto quiere decir que puedes tener una configuración distinta en cada uno de los dominios. Por ejemplo, puedes tener una versión concreta de PHP en la web de un dominio y otra muy distinta en otro dominio.
  • Puedes asociar cada dominio a un usuario de virtualmin diferente, lo que en la práctica significa que puedes montarte tu propio hosting. Por ejemplo, puedes darle un usuario a un amigo y que monte ahí su web y gestione su correo electrónico, sin que pueda tocar el resto de webs.
  • Te permite instalar de forma completamente automatizada cosas como WordPress, roundcube, squirrelmail o phpmyadmin en cualquiera de los dominios gestionados. La versión gratuíta permite instalar hasta 7 CMS’s, pero la de pago te permite instalar unos 100.
  • Vas a poder crear todas las cuentas que necesites de mail o de FTP. No hay ninguna restricción en este sentido.
Inconvenientes
  • Sí… hay una versión de pago. Aunque siendo realistas en la práctica no vas a echar en falta las funcionalidades que puedes obtener pagando. Si optas por pagar, además de soporte técnico obtendrás cosas como poder establecer límites a cada una de las webs alojadas (como ancho de banda, CPU o memoria), obtener más estadísticas de tu sistema o posibilidad de añadir «cuentas de revendedor» (lo que te habilitaría a convertir tu sistema en un negocio para ofrecer hosting a clientes). Pero si es un hosting para uso personal o empresarial, no vas a necesitar ninguna de esas cosas. Esos extras yo los veo más enfocados a hostings que quieren vender alojamientos.
  • No vas a tener avisos en el panel acerca de la entrada de los dominios en listas negras, ni problemas con los puertos o redirección de los dominios. Ojo: el panel sí que te indica cómo tienes que configuar los registros de DNS en tu proveedor de dominio, pero el sistema no está pendiente de que todo permanezca correctamente configurado en el tiempo, como sí lo hace Mail-in-a-box.
  • Este sistema te permite instalar de forma automática Roundcube en los dominios que quieras, pero no todas sus funcionalidades van a estar disponibles. No se pueden gestionar cosas como las reglas de mensajes o los mensajes de vacaciones desde Roundcube y esto es porque el sistema no instala ni utiliza «Sieve» para estas cosas (Sieve es el módulo que usa Roundcube para hacer estos automatismos y no está presente en el sistema).
Mmmm… Me faltan menús en las opciones de RoundCube.
Hombre ¡Esto es grave! Los mensajes de vacaciones se usan mucho en mi empresa. 

Efectivamente, y para mi gusto es el principal problema que le puedo poner a este sistema: un problema que a pesar de ser fácilmente esquivable, la forma de solucionarlo no es para nada elegante.

Los desarrolladores indican que para manejar mail a través de web es mejor que se use el cliente web que ya se instala por defecto y que es propio de Virtualmin, y al que se accede poniendo «webmail.» delante de cada dominio que estemos gestionando. En ese webmail ya tenemos opciones para gestionar los filtros de correo en la pantalla principal, aunque hay más opciones en la pestaña de «usermin» en la misma interfaz.

Sin embargo este sistema de correo se me antoja bastante más complicado de gestionar que Roundcube. Además, no sé si es porque tampoco me maté demasiado con este sistema, pero he sido completamente incapaz de crear una subcarpeta de correo nueva con él. Sí que se pueden crear carpetas personalizadas de correo, pero no subcarpetas que cuelguen de las carpetas principales. Esto me obliga a crear filtros dentro del correo de Virtualmin, pero las subcarpetas hay que crearlas desde Roundcube o desde algún cliente de correo imap. En general, el uso del correo a través de webmail yo lo hago desde Roundcube (ya que me encuentro más cómodo en ese sistema), pero me veo obligado a cambiar al sistema nativo para configurar cosas, así que para mi es un punto negativo respecto a otras opciones.

Para mi estos son los tres sistemas básicos y sencillos que deberíais valorar a la hora de empezar a cacharrear con servidores de correo. Sin embargo hay algunos otros que me gustaría comentar un poco más por encima.

Otros servidores de correo.

En primer lugar, si os habéis dado cuenta, todo esto que hemos hablado de montar en linux se instala desde fuera de los repositorios de las distintas distribuciones. Es curioso que la gran mayoría de las herramientas que estos sistemas usan internamente (dovecot, postfix, mysql, apache, etc…) existan en todos los repositorios de linux pero no haya un comando para instalar y configurar todas a la vez desde los propios repositorios… ¿O sí lo hay? Pues sí que existe algo que puede servir como ñapa, y se llama «Citadel». La instalación en ubuntu no puede ser más sencilla. Sólo tenemos que escribir esto en nuestro terminal.

sudo apt-get install citadel-mta citadel-suite -y

Peeeero… la verdad es que lo que nos instala es tan, tan, tan simple que después de probar esta opción varios días com mucho cariño (porque algo en este sentido me parece lo ideal) al final he tenido que descartarla como opción seria.

El gran problema de todo esto es que el tiempo no llega para probar a fondo todo lo que me gustaría probar, así que tengo algunas opciones en la recámara que os voy a comentar. Eso sí: os advierto que las siguientes que voy a mencionar no he llegado a probarlas.

Postal Mail Server es una de esas opciones que me gustaría probar algún día. Tiene un panel de control muy atractivo y por lo que he podido leer permite tanto el control de cuentas de correo como alojar páginas web. El problema es que su instalación no es tan inmediata como las otras opciones, pero he oído comentarios muy positivos de este sistema.

Otra opción a la que le tengo muchísimas ganas desde hace un montón de tiempo y que por diversas circunstancias al final no he llegado a probar es la de Mailcow. Tiene un interface más que útil y que además puedes probar en esta web con las siguientes credenciales:

La instalación de nuevo no es tan sencilla como las que he indicado antes, pero no es nada complicada de seguir. Tenéis una guía en esta página.

Y bueno… por supuesto que hay otras muchas opciones, como por ejemplo modoboa, pero estas que os he puesto son las que más me han llamado la atención.

Me sorprende que entre todo lo que has puesto sólo hayas indicado una opción para instalar en una raspberry.

Es que lo mejor hay que dejarlo siempre para el final. Voy a hablarte de una opción (que aún no he probado, todo sea dicho) que me parece excelente para que un usuario poco puesto en estos temas se inicie desde una raspberry. Se trata de Yunohost.

Yunohost vas a poder instalarlo tanto en una raspberry (o dispositivo similar) como en un ordenador normal y corriente. Es un sistema tan anti-manazas que va a ser difícil que no seas capaz de instalarlo (Tienes instrucciones de instalación aquí). No sólo te va a permitir montarte de una manera ultra-mega-sencilla un servidor de correo completo (con sus certificados de Let’sEncrypt y su webmail funcionando), sinó que te permite instalar también muchísimas otras herramientas que pueden ser de gran utilidad (tableros de kanban, nextcloud… y mil cosas más).

Creo que con todo esto que hemos visto tenéis ya un montón de opciones dónde escoger para montar vuestro servidor de correo. ¿Has probado alguna de estas opciones y quieres compartir tu experiencia? ¿Has cacharreado con alguna otra alternativa que te ha gustado más que las aquí expuestas? Anímate y déjanos un comentario en la noticia.

Share