Servidor de correo con Postfix + Spamassassin + Dovecot

Transcripción

Servidor de correo con Postfix + Spamassassin + Dovecot
Servidor casero V: Servidor de correo con
Postfix + Spamassassin + Dovecot
He estado tiempo utilizando qmail como servidor de correo. En mi servidor casero lo sigo haciendo
por pereza a cambiarlo pero cualquier dia le echaré esos 10 minutos de tiempo que cuesta poner otro a
funcionar.
Pero tras muchos fallos con algunos proveedores y acabar aterrizando en un sitio totalmente decente (al
menos hasta el momento) me he dado cuenta de que qmail seguia fallando como antes. Obviamente no
era el culpable de que la máquina se parase casi cada dia o de que los dominios dejarán de funcionar, o
de que el Plesk no hiciera lo que tenia que hacer. Pero si que es cierto que en el nuevo servidor, donde
todo funciona a la perfección, qmail se sigue parando sin motivo aparente. Quizás sea una mala
administración por mi parte pero sigo siendo tan malo como siempre y desde que he puesto postfix, sin
mucho esfuerzo, todo funciona a la perfección. Funciona tan bien que el filtro anti-spam que utilizamos
(spamassassin) se ha puesto a funcionar nada más instalarle como compañero al nuevo servidor de
correo Postfix. Antes no hacia ni caso y nunca supe porqué.
Instalación
La instalación es sencilla, simplemente instalar el paquete postfix con apt:
apt-get install postfix
Configuración
La configuración esta almacenada en /etc/postfix. No hace falta tocar mucho. Los ficheros importantes
son:
• /etc/postfix/main.cf: Almacena la configuración principal del servidor.
• /etc/postfix/virtual: Almacena la información de los dominios virtuales
Dentro del fichero main.cf (que ya contendrá algunas líneas) hay que asegurarse de añadir esta
información:
myhostname = midominio.com
mydestination = midominio.com, midominio, localhost.localdomain, localhost,
hash:/etc/postfix/virtual
mynetworks = 127.0.0.1
mailbox_command = procmail -a "$EXTENSION"
virtual_alias_maps = hash:/etc/postfix/virtual
virtual_alias_domains =
home_mailbox = Maildir/
Se presupone que midominio.com es el dominio asociado a la máquina donde has instalado el servidor
de correo.
Tal y como se puede ver en el ejemplo del fichero de configuración, estoy utilizando el formato
Maildir para almacenar el correo en el disco duro. Me parece bastante más eficiente que mbox puesto
que éste almacena todo en un mismo fichero de texto. Es de suponer que cuando se tenga un gran
volumen de correo almacenado empezará a ser menos eficiente que Maildir. Para utilizarlo
simplemente es necesario ejecutar el comando
maildirmake Maildir
en cada una de las carpetas de los usuarios que utilizarán el correo. También conviene ejecutarlo sobre
/etc/skel de manera que cualquier nuevo usuario ya incorpore dicha carpeta en su “home” simplemente
dándolo de alta en el sistema.
El siguiente paso es configurar correctamente procmail, puesto que se ejecuta para procesar cada correo
que llega a nuestro servidor postfix. Esta configuración se almacena en /etc/procmailrc y en mi caso
tengo lo siguiente:
DROPPRIVS=yes
DEFAULT=$HOME/Maildir/
:0fw
| /usr/bin/spamassassin
:0
* ^X-Spam-Status: Yes
$DEFAULT
Indicando la carpeta donde cada usuario almacena su correo e indicando la ruta al filtro anti-spam que
utilizado (spamassassin), el cual he de decir que funciona muy bien. Un poco más abajo comentaré
como configurarlo.
Direcciones de correo y usuarios
Sólo queda indicar a postfix que hacer con las direcciones de correo que vayamos queriendo utilizar y a
qué usuarios asociarlas. Existe la forma de crear usuarios en base de datos de manera que se
independizan las direcciones de correo de los usuarios reales del sistema. Muy útil en entornos
multidominio donde se puede necesitar el mismo usuario para más de un dominio:
[email protected] y [email protected], donde los dos usuarios realmente no tienen nada
que ver.
Para esto debemos editar el fichero /etc/postfix/virtual, cuyo uso ya hemos indicado en el fichero de
configuración inicial anteriormente. Si suponemos que tengo algunos usaurios y un par de dominios,
quedaría asi:
midominio.com
otrodominio.com
midominio
otrodominio
[email protected] astable
[email protected] otrotio
[email protected] astable-otro
Se puede ver como asociar una dirección de correo a un usuario real del sistema. De esa manera cuando
postfix reciba un correo para una dirección determinada lo depositará en el buzón del usuario del
sistema que corresponda.
Filtro Anti-Spam
Actualmente uso spamassassin como filtro. No se entera de todos los correos no deseados pero está
teniendo cerca de un 95% de eficiencia, lo que me parece dificil de superar. Apenas se le escapa algún
correo spam sin marcarlo. En este caso tengo el filtro configurado para que me marque los correos no
deseados añadiendome el texto [SPAM] al inicio del asunto de cada uno. Asi, puedo filtrarlo
automaticamente según llega a mi bandeja de entrada y comprobar si todo lo marcado como spam lo es
realmente. La opción borrarlo definitivamente me parece demasiado agresiva. Para ello he añadido la
siguiente línea al fichero de configuración de spamassassin, en /etc/spamassassin/local.cf:
rewrite_header subject [SPAM]
Por lo demás, el filtro se las apaña muy bien sin tocar nada más.
Cómo ver el correo
Para poder ver el correo tenemos dos opciones. Una pasa por consultarlo a través de la web utilizando
un sistema webmail o bien descargarlo a nuestro ordenador a través del protocolo POP.
Para el primer caso utilizo squirrelmail. Solución gratuita, sencilla, quizás algo “fea” pero muy
eficiente y sin demasiadas historias de esas que jamás llegas a usar nunca. Además, dispone de muchos
plugins que permiten ampliar su funcionalidad. En este caso hay que instalar un servidor IMAP (en mi
caso dovecot) y el sistema webmail:
apt-get install dovecot-imapd
Y para el caso de squirrelmail nos vamos a su página y lo instalamos en algún subdominio de nuestra
máquina. Prácticamente nos apañaremos con la configuración por defecto que trae.
Para el segundo caso, estoy utilizando dovecot como servidor POP y ya que cada uno utilice en su
ordenador el cliente de correo que prefiera (Outlook, Mozilla Thunderbird, . . .):
apt-get install dovecot-pop3d
En definitiva, un sistema de correo con Postfix como servidor de correo, spamassasin como filtro antispam, dovecot como servidor IMAP y POP3, y Squirrelmail como sistema webmail. Software libre
funcionando a la perfección, coste económico cero y coste de administración también cero. Como
habéis podido ver no es díficil instalarlo y configurarlo y una vez puesto en marcha no hay que hacer
nada. Funciona solo.
Una solución que no sólo nos servirá para nuestro servidor casero. Es una solución totalmente operativa
y muy recomendable para entornos más profesionales en servidores que necesiten un buen rendimiento
en el sistema de correo y tengan un gran volumen de tráfico.
http://blog.arkabytes.com/software-libre/servidor-casero-v-servidor-de-correo-con-postfix/

Documentos relacionados