MarioDebian, mi devlog

Bitácora de un desarrollador newbie.

Squid 3.0 con soporte a X_FORWARDED_FOR

Cuando se mezcla Dansguardian con Squid en un proxy transparente existen ciertos inconvenientes que es bueno conocer.

  1. Dansguardian escucha las peticiones de la red interna en el puerto 8080, con iptables redirigimos todo el tráfico de salida a este puerto.
  2. Dansguardian pasa su petición a Squid por localhost al puerto 3128.
  3. Squid hace la petición y dansguardian la procesa.

Esto tiene un inconveniente y es que todas reglas acl o delay_pool en squid dejan de trabajar ya que todo el tráfico usa como IP cliente 127.0.0.1.

Existe un parche relativamente antiguo llamado follow_xff (pensado para versiones 2.x) que he reescrito en parte para que Squid3 use la cabecera X_FORWARDED_FOR. El parche se guarda en debian/patches en formato dpatch. Me falta el detalle de que no muestre un mensaje de no reconocer las nuevas reglas, porque funcionar sí lo hace.

Parece que en Debian (#523943) estaba activado, pero solo era un modificador de debian/rules, no había ni rastro de código y también parece que se ha añadido a Squid a partir de la versión 3.1.0.1.

He preparado un repositorio GIT de squid para compilarlo en Debian lenny con el parche y un simple «git-buildpackage».


Articulos relacionados:

Comentarios

  1. Rodolfo Pregunta sobre Dansguardian
    08/05/2009 | 16:51

    hola Mario tengo una duda es posible filtrar paginas seguras https con dansguardian??

  2. Oscar ¿ Cómo aplico el parche ?
    31/05/2009 | 04:21

    Hola Mario, excelente el trabado del parche. Tengo instalada la versión 3.0 STABLE13 desde testing, tengo debian lenny. ¿cual es la manera mas facil para beneficiarme del x-forwarded-for? ¿compilo a mano la version 3.1? ¿aplico este parche a alguna version en especial?

Comentarios cerrados