bash: hack: orden no encontrada!!

viernes, 16 de abril de 2010

Combatiendo el SPAM - Postfix

hoy voy a mostrar una de las tecnicas que he empleado para bloquear los correos SPAM que llegan diariamente a los buzones de los usuarios, esta vez me enfoque en los Asuntos y el Contenido del Mensaje, es algo similar a lo implementado por mi amigo hollman para bloquear el contenido adjunto del mensaje.
ahora si vamos a la practica.

Queremos bloquear la palabra Viagra tanto en Asunto del Mensaje y tambien si esta hace parte del contenido del mensaje, lo hariamos de la siguiente forma

"editamos el archivo main.cf"
#vi /etc/postfix/main.cf

"agregamos estas dos lineas"

body_checks = regexp:/etc/postfix/body_checks
header_checks = regexp:/etc/postfix/header_checks.regexp


bien ahora tenemos que crear estos archivos ( son archivos de texto normales)

#vi /postfix/header_checks.regexp

"agregamos el siguiente contenido"

/^Subject:.*Viagra.*$/ REJECT "Asunto no valido" (1)

"dentro de la comillas colocamos el mensaje que saldra en los LOGS para saber que es lo que estamos filtrando, normalmente enumero los bloqueos linea por linea con (1)(2), para dar mas facil con este por si se presenta algun problema o bloqueo no debido."

el archivo con algunos de los asuntos luce asi:

/^Subject:.*Viagra.*$/ REJECT "Asunto no valido" (1)
/^Subject:.*V1agra.*$/ REJECT "Asunto no valido" (2)
/^Subject:.*V!agra.*$/ REJECT "Asunto no valido" (3)
/^Subject:.*V1 agra.*$/ REJECT "Asunto no valido" (4)
/^Subject:.*Cialis.*$/ REJECT "Asunto no valido" (5)
/^Subject:.*sex.*$/ REJECT "Asunto no valido" (6)
/^Subject:.*strong.*$/ REJECT "Asunto no valido" (7)
/^Subject:.*herbal.*$/ REJECT "Asunto no valido" (8)
/^Subject:.*Herbal Formule.*$/ REJECT "Asunto no valido" (9)


"guardamos"

bien lo que acabamos de crear fue el archivo para los asuntos.

ahora crearemos los que chequearan el cuerpo del mensaje.

#vi /etc/postfix/body_checks

"ingresamos el contenido"

/Viagra & Cialis/ REJECT

colocamos la palabra(s) a bloquear dentro de los "/" y acompañado por la palabra REJECT.

un archivo con varias palabras para bloquear luce mas o menos asi:

/casino en linea/ REJECT
/real casino/ REJECT
/seven casino/ REJECT
/union europea/ REJECT
/juegos sensacionales/ REJECT
/http://www.bestlux-games.net/ REJECT
/female/ REJECT
/Click here to view as a web page/ REJECT
/drudgery/ REJECT


"guardamos"

NOTA: debemos verificar bien que palabras o frases vamos a bloquear, ya que este metodo es muy exacto, pero en ocaciones bloquea coincidencias"

bien ahora le damos:

#postmap /etc/postfix/body_checks
#postmap /etc/postfix/header_checks.regexp


luego de esto podemos ver que se crean los archivos con el mismo nombre pero acompañado de .db ; bien ahora si reiniciamos nuestro postfix para que tome los cambios

#/etc/init.d/postfix restart


si tratamos de enviar un correo y este contiene las palabras que ingresamos en nuestro archivo veremos como es rechazado por el servidor.

usted puede alimentar su "base de datos" para que su correo contenga menos SPAM.

RECUERDE siempre que ingrese palabras en estos archivos reiniciar postfix para que este tome los cambios.