header_checks en Postfix
Este será (espero) el primero de unos cuantos artículos que quiero hacer con carácter técnico sobre las cosas que voy tocando y que normalmente me dan dolores de cabeza o más de un enfado, si no sois techies simplemente ignorarlos o leerlos para ver si os enteráis de algo
![]()
Una manera fácil de quitarte un poco de SPAM en Postfix sin andar configurando filtros bayesianos como SpamAssasin, puede ser controlando las cabeceras, aunque puede ser peligroso ya que os podéis comer falsos positivos y ni si quiera llegar a recibirlos, ya que el servidor directamente rechaza el mail directamente, aunque esto se puede configurar. En mi caso, también lo uso para cuando “empresas” envían correos comerciales sin consentimiento y por mucho que te des de baja en sus listas siguen llegando mails, así que directamente lo controlamos con las cabeceras y rechazamos el correo, ahora la parte técnica:
Debemos configurar el main.cf de Postfix y poner la siguiente línea:
header_checks = regexp:/etc/postfix/header_checks.regexp
Ahora deberemos crear el fichero y seguir la siguiente sintaxis:
/^tipo_encabezado: .*regla/ ACCIÓN comentario
Siendo:
- tipo_encabezado: será el tipo de encabezado que usaremos para aplicar los chequeos, por ejemplo podremos poner el asunto, fecha, software desde el cual se envió el correo, etc…
- regla: al ir con el * delante significa que con tan solo contener dicha cadena de caracteres, ya sea al principio, por el medio o al final será identificada
- ACCIÓN: aquí, como dije antes, podremos especificar que acción hacer en el caso de que sea identificado por dicho filtro
- comentario: para identificar lo que ha hecho el header_checks y poder verlo en nuestros LOGs, podemos añadir un comentario identificando la acción
Posibilidades de ACCIÓN (las más comunes o usadas):
- REJECT: Postfix rechaza el mail antes de entrar a nuestro servidor, notificándoselo al servidor que envía dicho correo
- IGNORE: elimina el encabezado que ha identificado
- WARN: el correo entra sin problema, pero deja un aviso en nuestro LOG. Se usa para probar las reglas antes de aplicarlas
- HOLD: lo deja en espera hasta que un administrador decida que hacer con él
- DISCARD: Postfix rechaza dicho correo pero no avisa al servidor que lo envía, por lo tanto cree que ha entrado sin problema
- FILTER: puede enviar el correo a otro sistema de filtros de Postfix, como transport.map
Y a continuación los ejemplos:
/^Subject: .*pleasure$/ REJECT SPAM Header pleasure word
/^Subject: .*viagra$/ REJECT SPAM Header viagra word
/^Subject: .*cialis$/ REJECT SPAM Header cialis word
/^Subject: .*Pharmacy$/ REJECT SPAM Header Pharmacy word
/^Subject: .*Pharmacies$/ REJECT SPAM Header Pharmacies word
/^Subject: .*nice prices$/ REJECT SPAM Header nice prices word
/^Subject: .*penis$/ REJECT SPAM Header penis word
/^Subject: .*enlargement$/ REJECT SPAM Header enlargement word
/^Subject: .*bonus$/ REJECT SPAM Header bonus word
/^Subject: .*orgasm$/ REJECT SPAM Header orgasm word
/^Subject: .*sex$/ REJECT SPAM Header sex word
Todos estos son para que todos los correos que en el asunto contengan alguna de dichas palabras, directamente los rechaza y se lo notifica al servidor en cuestión. A su vez deja un comentario en el LOG con lo que ha pasado.
/^Date: .* 200[0-8]/ REJECT SPAM Header Past date 1
/^Date: .* 19[0-9][0-9]/ REJECT SPAM Header Past date 2
Estas dos reglas son para rechazar correo que llegue con fecha anterior o posterior al año en el que estamos y con un comentario, lo especifica en el LOG.
/^From: .*@creacionesarteidea.com.*/ REJECT SPAM Header newsletter 1
/^From: comunicacion@einforma.com.*/ REJECT SPAM Header newsletter 3
/^From: noreply@proyectosinformaticos.biz.*/ REHECT SPAM Header newsletter 4
Estas 3 reglas rechazan correos de un dominio o de una dirección de correo en cuestión y haciendo constancia en el LOG.
/^Subjet: Alerta de noticias La Voz Libre*/ REJECT SPAM Header newsletter 2
Esta regla rechaza los correos que lleguen con el asunto en cuestión y como no, lo notifica en el LOG.
Para finalizar, comentar que hay que reiniciar Postfix para asegurarnos de que se aplicarán estás reglas.
Tags: filtros, header_checks, postfix, SPAM



Agosto 10th, 2009 a las 13:48
Mi reino por un postfix y no la cafetera esta de Exchange xDDDDDDD
Ya de paso dejo claro que Microsoft se podría meter el Forefront por el …. y a nadie le importaría un pijo
Un abrazu techie!
Wi®
Agosto 11th, 2009 a las 10:27
techie?? :S :S :S, esa era novia de paquirrin no??
willy que ye eso?? donde el campo de futbol?? el pueblo ese grande?? XDDD!!!
Agosto 12th, 2009 a las 8:00
vicen xDDDDDDDDDDDDDD
casi la afuego..
Agosto 12th, 2009 a las 10:35
#xfw: pues yo al contrario, el Postfix está muy muy bien, pero está a años luz de Exchange, porque para “4 amigos” está muy bien, pero si quieres entornos más profesionales, el Postfix es de juguete, aunque vaya mucho mejor que un Exchange, pero para integración con muchos usuarios es una locura, está muy bien Zimbra, que se podría considerar competencia a Exchange, hablaré de él en algún post futuro
#exnorlax: voy date yo a ti Paquirrín xDD
Junio 25th, 2010 a las 16:21
Muy útil esto post.
¿Se podría hacer un filtraje de “From” y “To:”? de forma que no se permita una dirección para un dominio concreto?