systemadmin.es » Seguridad » Configuración de squid como proxy transparente

Configuración de squid como proxy transparente

Al activar un proxy transparente con squid hay algunos parámetros que nos pueden ser útiles para evitar que sea detectado por herramientas de deteccion de proxys. Vamos a ver como hacer nuestro proxy indetectable.

Mediante esta configuración evitaremos que el proxy sea fácilmente detectable con herramientas como el proxy test de lagado.com:

#  TAG: httpd_suppress_version_string   on|off
#       Suppress Squid version string info in HTTP headers and HTML error pages.
#
httpd_suppress_version_string on

#       If set (default), Squid will include a Via header in requests and
#       replies as required by RFC2616.
#
via off

#  TAG: forwarded_for   on|off
#       If set, Squid will include your system's IP address or name
#       in the HTTP requests it forwards.  By default it looks like
#       this:
#
#               X-Forwarded-For: 192.1.2.3
#
#       If you disable this, it will appear as
#
#               X-Forwarded-For: unknown
#
forwarded_for off

Para evitar las pruebas relacionadas con la cache idealmente deberíamos deshabilitar la cache con la siguiente instrucción:

cache deny all

Evidentemente esto tiene un fuerte impacto en el rendimiento del proxy, pero en este caso lo que queremos es ser indetectables y no ofrecer un rendimiento optimo por lo que en este caso tendría sentido deshabilitar la cache.

Al configurarlo como proxy transparente deberemos indicarselo con la siguiente directiva:

http_port 3128 transparent

Con las siguientes reglas de iptables podremos redirigir el tráfico a través del proxy:

iptables -t nat -A PREROUTING -i $IFINTERNA -p tcp --dport 80 -j REDIRECT --to-port 3128
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 3128

Deberemos definir la variable $IFINTERNA con la interfaz que corresponda a la red interna (la que deberá pasar por el proxy), por ejemplo eth0

Finalmente para poder ver a exactamente que páginas se visitan seberemos añadir el parámetro strip_query_terms off para evitar que se pierdan del log los parámetros de las páginas dinámicas:

#  TAG: strip_query_terms
#       By default, Squid strips query terms from requested URLs before
#       logging.  This protects your user's privacy.
#
#Default:
strip_query_terms off

Relacionados

Imprimir Imprimir

Deja un comentario:

XHTML - Tags permitidos:<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>