Filtrando mensajes con Postfix


Hola, soy Coco, y hoy veremos como colocar filtros en Postfix para bloquear mails que puedan ser potencialmente malos, como por ejemplo, spam, virus, etc.

Bueno, en este miniarticulín veremos como configurar postfix para poder filtrar mensajes segun su contenido, tanto en la cabecera como en el cuerpo del mensaje.
Suponemos que Postfix ya está instalado y corriendo perfectamente.

En este caso usaremos expresiones regulares normales para hacer los filtros, tambien podemos usar pcre (perl compatible regular expressions) para ello si lo tenemos habilitado en nuestro postix

Para empezar, debemos añadir al fichero /etc/postfix/main.cf dos lineas para indicarle que realice chequeos, tanto en las cabeceras como como en el cuerpo:

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

Ahora, deberemos editar sendos ficheros, para indicarle que han de filtrar, y que hacer con los mensajes que coincidan con el filtro:

–regexp.header–
# No queremos ver la tranca del enanito
/^Subject: Enanito si, pero con que pedazo!$/ REJECT

# Nos tragamos todo lo de hotmail
/^From: [email protected]$/ ACCEPT
# Y rechazamos todo lo que tenga sex en el subject
/^Subject:.*sex.*$/ REJECT
–regexp.header–

Básicamente, el fichero se procesa de arriba a abajo y la primera expresion que coincide con el mensaje, se aplica y listo.
Si no tienes claro que es cada cosa, quizas debas echarle un ojo a los artículos sobre expresiones regulares que podrás encontrar en el apartado de “enlaces relacionados”.

Si lo que queremos filtrar es el cuerpo del mensaje, hacemos lo mismo, pero con el fichero regexp.body que hemos definido en main.cf:

–regexp.body–
# SirCAM
#/^Te mando este archivo para que me des tu punto de vista$/ REJECT

# Virusetes de mierda
/filename=”.*\..{1,4}\.(exe|com|bat|lnk|pif|vbs)/ REJECT
/^begin [0-9]{3} .*\..{1,4}\.(exe|com|bat|lnk|pif|vbs)$/ REJECT
–regexp.body–

Como vemos el formato es exactamente igual. La única diferencia es que estas expresiones regulares se chequean contra el cuerpo del mensaje, y NO contra la cabecera
Una vez creados los ficheros, solo tenemos que hacer postfix reload para que postfix relea la configuración y demás, y ale, a correr a mirar los logs para ver como filtra la basura 🙂
Como añadido, aquí está el repositorio no oficial de body/header checks para postfix

Este post ha sido traido de forma automatica desde https://web.archive.org/web/20140625063149/http:/bulma.net/body.phtml?nIdNoticia=878 por un robot nigromante, si crees que puede mejorarse, por favor, contactanos.


Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.