On Tue, 5 Jul 2005 12:36:39 -0500
"Alejandro Aleman" wrote:
jaleman> Hola amigos, Quisiera saber como puedo hacer para que el SpamAssasin borre
jaleman> automáticamente el correo SPAM, ya tengo el score adecuado y ha sido
jaleman> aprovado, he buscado pero no encuentro nada mas que filtros en clientes de
jaleman> correo. Como puedo hacer para borrar automaticamente los correos
jaleman> directamente desde el servidor?
SpamAssasin no borra, solo marca el correo.
Para borrar a nivel de servidor lo mejor es activar el filtro ProcMail
para trabajar conjuntamente con SpamAssassin
Procmail utiliza un fichero de configuración llamado ".procmailrc" y es
configurable bien a través de Webmin o bien manualmente.
En la lista se han publicado varios ejemplos de filtro Procmail y ha
habido algunas discusiones muy interesantes sobre el mismo. Busca en el
archivo de la lista en este último trimestre.
El primer bloque del fichero .procmailrc sería las opciones generales
con algo así:
:0fw
| /usr/bin/spamassassin #también se puede usar "spamc"
MAILDIR=$HOME/
PATH=/usr/bin:/bin
LOGFILE=$HOME/procmail.log
VERBOSE=no
COMSAT=no
SENDMAIL=/usr/sbin/sendmail
En la segunda línea se le dice que trabaje con spamassassin
Para eliminar el correo marcado como "Spam" por SpamAssassin sería:
:0D:
* ^Subject:.*****SPAM*****
/dev/null
siendo "*****SPAM*****" la marca que pone Spamassassin.
Tambien se puede filtrar por cualquier otro campo incluidas determinadas
palabras en el cuerpo del mensaje, por ejemplo:
:0B:
* (remove@|remover@|unsubscribe@)
/dev/null
o también
:0B:
* Limited Time Offer
/dev/null
En el primer caso eliminará los mensajes que lleven en el cuerpo una
dirección de borrado "remove@" "remover@" etc...
En el segundo los mensajes que contengan la frase "Limited Time Offer"
Procmail se puede "sofisticar" a niveles muy altos, por ejemplo, con
filtros para rechazar correos con ejecutables adjuntos:
:0B
* ^Content-.*name=.*\.(exe|pif|bat|xls|scr)
* !^FROM_DAEMON
* !^X-Loop: postmaster@dominio.com
{
:0Whc: noexe.lock
| (formail -t -r -I"Subject: Rejected mail: Recipient refusal" \
-I"From: postmaster@dominio.com" \
-A"X-Loop: postmaster@dominio.com" ; cat $HOME/rejected.txt) | $SENDMAIL -t
:0:
/dev/null
}
X-Loop impide que se ejecute un "loop" infinito, noexe.lock es el
fichero de bloqueo y rejected.txt es el fichero con el texto que
contendrá el correo de devolución.
--
Salutacions - Saludos,
Josep M. Queralt