Control de SPAM
C@mpus - @cademia Linux

Introducción 

Entre los problemas que existen en los sistemas de correo electrónico está el envío de mensajes sin solicitar, nombrado SPAM.  Para esto se instalará spamassassin que permitirá catalogar los correos de una forma confiable.


Paquetes necesarios

  • Postfix,
  • Procmail,
  • SpamAssassin

Configuración

Spamassassin por si solo puede trabajar como un servidor escuchado el puerto 783/tcp, configurando el MTA o utilizando Procmail de por medio.  Este documento cubrirá el tercer aspecto debido a:

  • El demonio smtpd del MTA debe ejecutarse en una jaula de root por cuestiones de seguridad.  Esto impide directamente la interacción con el cliente de SpamAssassin,

Configuración de Postfix 

Postfix debe estar configurado para poder ejecutar ProcMAIL.  Para esto se tiene que añadir o modificar la siguiente línea en el archivo main.cf:

/etc/postfix/main.cf (parcial)
mailbox_command = /usr/bin/procmail -Y -a $DOMAIN

La línea mailbox_command indica a Postfix qué comando ejecutar para la entrega final del mensaje en el buzón local.


Configuración de ProcMAIL 

También es necesario la configuración básica de ProcMAIL para interactuar con SpamAssasim, por lo tanto se creará o añadiran las siguientes líneas en el archivo por default de procmail /etc/procmailrc.

/etc/procmailrc
PATH="/usr/bin:$PATH:/usr/local/bin"
SHELL=/bin/sh
VERBOSE=ON
LOGABSTRACT=ALL
LOGFILE=/var/log/procmail.log

:0fw
| /usr/bin/spamc -s 256000 -u $LOGNAME

:0
* ^X-Spam-Flag: YES
* ^X-Spam-Level: \*\*\*\*\*\*
spam

Con estas dos reglas indicamos a ProcMAIL que ejecute el cliente de SpamAssassin y espere el resultado final.  Las vanderas f y w indican que se llamara un programa y se le pasará el correo por una redirección de salida.


Con esto se tiene el filtro de correo listo para poder ser afinado.  Hay que recordar que se tiene que iniciar  el demonio de SpamAssassin con el comando service spamassassin start