martes, 22 de octubre de 2013

Mejorando el filtrado del spamassassin en Zimbra

En este resumen vamos a ver los pasos para poder agregar herramientas ya conocidas que nos permitan mejorar la capacidad del filtrado del spam en Zimbra.

Datos:
Version de Zimbra: 8.0.4
SO: CentOS 6.2

Se asume que ya tenemos nuestro servidor Zimbra corriendo ...

A continuacion un breve resumen de lo que se usara...

- SPF(Sender Policy Framework)
Cuando un correo ingresa a nuestro servidor, el SPF revisa los datos de origen(IP), luego realiza una consulta a los servidores DNS(registro TXT para SPF) del dominio origen, comprueba si dicha IP esta autorizada a enviar o no.

- Razor
Es una red colaborativa de detección/notificación de spam. Cuando se recibe un spam nuevo, se informa a esa red de ese mensaje y a partir de ese momento, los servidores que reciban ese mismo mensaje y utilicen razor, lo detectará también como spam sin tener que configurar nada.

- Pyzor
Similar a Razor, se complementan de manera mutua.

Procedemos a instalar

1. SPF

# rpm -Uvh http://mirror.as24220.net/pub/epel/6/i386/epel-release-6-8.noarch.rpm
yum install perl-Mail-SPF -y

Nos aseguramos que dentro del archivo /opt/zimbra/conf/spamassassin/init.pre tenga descomentado la linea
loadplugin Mail::SpamAssassin::Plugin::SPF


2. Razor

# yum install -y perl-Razor-Agent razor-agents

Configuramos Razor

# mkdir /opt/zimbra/amavisd/.razor
# chown -Rf zimbra:zimbra /opt/zimbra/amavisd/.razor
# su - zimbra
$ razor-admin -home=/opt/zimbra/amavisd/.razor -create
$ razor-admin -home=/opt/zimbra/amavisd/.razor -discover
$ razor-admin -home=/opt/zimbra/amavisd/.razor -register

Nos aseguramos que en el archivo /opt/zimbra/conf/spamassassin/v310.pre tenga descomentado la linea
loadplugin Mail::SpamAssassin::Plugin::Razor2

3. Pyzor

# yum -y install pyzor python

Configuramos pyzor

mkdir /opt/zimbra/amavisd/.pyzor
# chown zimbra:zimbra /opt/zimbra/amavisd/.pyzor
# su - zimbra
$ pyzor --homedir /opt/zimbra/amavisd/.pyzor discover


Nos aseguramos que en el archivo /opt/zimbra/conf/spamassassin/v310.pre tenga descomentado la linea
loadplugin Mail::SpamAssassin::Plugin::Pyzor

Adicionalmente instalaremos DCC, el cual tambien es una base de datos colaborativa com el Razor..

# wget http://rhyolite.com/anti-spam/dcc/source/dcc.tar.Z
# tar xzf dcc.tar.Z
# cd dcc-1.3.152
# ./configure --with-uid=zimbra
# make
# make install
# chown -R zimbra:zimbra /var/dcc

Hecho lo de arriba, ahora vamos al archivo /opt/zimbra/conf/spamassassin/local.cf y le agregamos al final

# vim /opt/zimbra/conf/spamassassin/local.cf
...

ok_languages en es 
ok_locales en es 
trusted_networks 127. 172.16.
skip_rbl_checks 0
use_razor2 1
use_pyzor 1
use_dcc 1
dcc_path /usr/local/bin/dccproc
dns_available yes 
score DCC_CHECK 4.000
score SPF_FAIL 10.000  
score SPF_HELO_FAIL 10.000
score RAZOR2_CHECK 2.500
score PYZOR_CHECK 2.500
score BAYES_99 4.300
score BAYES_90 3.500
score BAYES_80 3.000
bayes_ignore_header Received: from localhost
bayes_ignore_header Received: from mail.dominiolocal.com
...


Habilitamos el DCC en el archivo /opt/zimbra/conf/spamassassin/v310.pre

# vim /opt/zimbra/conf/spamassassin/v310.pre
...
loadplugin Mail::SpamAssassin::Plugin::DCC
...


Tambien habilitaremos el DSPAM, esto examina el contenido de cada mensaje y aprende qué tipo de contenido el usuario considera como spam...

Para ello, hacemos lo siguiente:
# su - zimbra
$ zmlocalconfig -e amavis_dspam_enabled=true

Finalmente reiniciamos el zimbra...

# su - zimbra
$ zmcontrol restart








No hay comentarios:

Publicar un comentario