[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Mini como anti spam



Buenas 
	Como dice ayer hago este mini como de bogofilter (anti spam)
maildrop (filtrado de correo, me parece más cómodo que procmail) y mutt.

Antes de empezar he de decir que bogofilter es programa anti spam que
trabaja de forma diferente que spamassassin. Spamassassin esta hecho en
perl y tiene "intelegencia" mientras que bogofilter hay que enseñarlo.
Pero en un pentium 200 mmx con 128 de ram que tengo sirviendo bogofilter
no se nota en la máquina, mientras que spamassassin me paraba la máquina
unos 7 segundos por correo, para mí algo inaceptable. Spamassassin lo
veo apropiado para máquinas a partir de pentium III (700) y con poca
carga en máquina. Por eso me decidí a poner bogofilter, de todas formas
este mini como, lo haré utilizando bogofilter en el cliente.

Primero instalé bogofilter , teniendo instalado maildrop,mutt, y
fetchmail pero para la gente que no los tenga :
	apt-get install bogofilter maildrop mutt fetchmail

Bueno ya tenemos parte del trabajo terminado (debian/rules).

Yo tengo mis correos en formato maildir (santo qmail) con lo cual creo
un maildir para el correo spam.

	kamaxeon@gnosis:~$maildirmake ~/.correo/spam  (Siendo ~/.correo
	$MAILDIR)

Ahora preparo a maildrop para que ejecute bogofilter

	kamaxeon@gnosis:~$vi .mailfilter (Este es el archivo de configuración de
	maildrop)

Suponiendo que tengo esto de inicio:

	MIDIR="$HOME/.correo"

	if (/^Delivered-To: mailing list supervisionpartys@listas.gulic.org/)
	   to "$MIDIR/GULs/GULiC/partys"

Lo cambio para que primero que nada me filtre el spam y pongo esto:

        MIDIR="$HOME/.correo"

	## Configuración para que usa bogofilter y lo deje en la carpeta spam

	xfilter "bogofilter -f -p -u -l -e -v"
	if (/^X-Bogosity: (Spam|Yes)/)
    	   to "$MIDIR/spam"
	
	## Fin de configuración para el spam

        if (/^Delivered-To: mailing list supervisionpartys@listas.gulic.org/)
           to "$MIDIR/GULs/GULiC/partys"

Con esto ya tenemos preparado a maildrop para que filtre los correos,
ahora sólo vamos a crear unas macros en el mutt para cuando veamos un
correo lo eliminemos y además le decimos a bogofilter que lo marque como
spam, y otra para cuando borremos un mail, también poder decirle que no
es spam (esto también es útil, hay que enseñarle lo que es bueno y lo
que es malo :-) ), para eso le añadí al final de muttrc lo siguiente:

	## Macros 

	# Macros para bogofilter (spam)
	set pipe_decode=yes
	macro index <f2> ":unset wait_key\n:unset pipe_decode\n|bogofilter -Sn\nd" "flag message as non-spam"
	macro index <f1> ":unset wait_key\n:unset pipe_decode\n|bogofilter -Ns\nd" "flag message as spam"
	macro pager <f2> ":unset wait_key\n:unset pipe_decode\n|bogofilter -Sn\nd" "flag message as non-spam"
	macro pager <f1> ":unset wait_key\n:unset pipe_decode\n|bogofilter -Ns\nd" "flag message as spam"    

Ahora cuando pulso F1 me borra el mensaje y lo marca como spam, mientras
que con F2 lo borra y lo marca como no spam. Si quieres cambiar las
teclas lo podéis hacer.

Antes de ponerlo en marca yo le dije enseñe un poco, los correos que no
eran spam, y eso lo realizé desde consola.

	kamaxeon@gnosis:~/.correo/hispalinux/socios/cur/$for i in *; do
	bogofilter -nS < $i ; done

Ahora sólo falta volver a entrenarlo con el spam que por desgracia
llegará pero para eso tengo F1 en mutt.


P.D.: Si alguien no sabe como decirle a fetchmail que use maildrop que
lo diga, y escribo otro mail ya que este me parece bastante largo.

	

-- 
Sin más, un saludo

Israel Santana Alemán (aka kamaxeon)



Reply to: