4 - Bajo *nix

[editar]
Tutorial creado por Max & Piezas. Extraido de: http://www.bandaancha.st/documentos.php?docid=77
05 de Enero de 2006

Squid


¿Y si tenemos una red? ¿Tenemos que ir instalando las aplicaciones anteriores puesto por puesto? ¿Y si no utilizamos Windows?

Una solución a todo esto es meter por medio nuestro propio proxy. ¿Para qué? Él será el que se encargue de forzar el refresco. Este sistema para una red es muy interesante, pues sólo hay que configurar el servidor y los navegadores (incluso ni eso, si hacemos que el proxy sea transparente también).

Además, podemos meter reglas de filtrado en el proxy para evitar los sitios de publicidad.

Una guía más exhaustiva sobre Squid la podéis encontrar .

La parte de la instalación me la salto, en el sitio oficial tenéis toda la . Aquí vamos a ir al grano.

Antes de nada, tengo que decir que no soy ningún experto en Squid, y todo esto ha sido sacado a base de pruebas. Si hay algún error, os pido que me corrijais ;)

Para forzar el refresco, lo único que tenemos que hacer es decirle que no queremos que coja nada de nuestra caché, con ello conseguimos que los datos sean siempre "frescos". Nos vamos al /etc/squid.conf (o donde tengas el archivo de configuración) y modificamos las directivas no_cache y refresh_pattern de la siguiente manera (dejad lo originales con comentarios, y el resto del archivo sin tocar):


acl QUERY urlpath_regex cgi-bin \? . no_cache deny QUERY refresh_pattern . 0 0% 0

Digamos que aquí estamos usando un pequeño truco (chapuza lo llaman a veces).
Con las 2 primeras líneas hacemos que no se cachee ninguna dirección que contenga los caracteres "cgi-bin" o "?" o "." (*). Buscadme una sola dirección que no tenga un punto :) ¿La encontrásteis?

Realmente se podría dejar solo el punto, pero por vaguería no lo he probado.

Con el refresh_pattern le estamos diciendo que la edad máxima de un elemento en la caché es 0.

Esta configuración podemos irla afinando. ¿Qué os parece si cacheamos las imágenes mientras no sean nuevas? Pues a modificar la acl:


acl IMAGENES urlpath_regex jpg gif png swf JPG GIF PNG SWF acl QUERY urlpath_regex cgi-bin cgi \? php asp html htm xml pl no_cache allow IMAGENES no_cache deny QUERY refresh_pattern . 0 0% 0

Creo que os podéis imaginar como funciona. Desconozco si Squid es case sensitive (me imagino que sí), por eso están repetidas las extensiones de las imágenes.

No quería pararme mucho más en la configuración de Squid, si queréis algo más técnico se puede estudiar el realizar otro documento.

Comprobaremos si la configuración es correcta mediante el test de Lagado.






* * *



Parches para Mozilla


Hace tiempo alguien envió a Barrapunto.com instrucciones para aplicar un parche aplicable en el proceso de compilación de Mozilla, para que éste obligase al proxy en cada solicitud a entregar contenidos actualizados:

barrapunto.com/article.pl?sid=03/02/05/2241234

El parche se puede bajar de aquí; la segunda dirección la utilizamos por si el archivo desaparece del server original, que es el de la primera URL:

213.96.133.176/nocache/patch-no-cache-mozilla-1.2.1.tgz
piezas.bandaancha.st/box/patch-no-cache-mozilla-1.2.1.tgz

Se debe aplicar al directorio netwerk/protocol/http/src, al fichero nsHttpChannel.cpp del código fuente de Mozilla (1.2.1) así:


cd netwerk/protocol/http/src tar xvzf patch-no-cache-mozilla-1.2.1.tgz patch nsHttpChacnnel.cpp patch-no-cache-mozilla-1.2.1.diff

Y a continuación se compila.

Una vez más, podremos comprobar si la configuración es correcta mediante el test de Lagado.
[editar]

Sé el primero en opinar


Tutoriales relacionados con 'Medidas contra los proxies transparentes'

De la implantación del proxy transparente por parte de Telefónica hace ya algún tiempo. De... Más »

Autor y licencia de 'Medidas contra los proxies transparentes'


Tutorial de Max & Piezas. Extraido de: http://www.bandaancha.st/documentos.php?docid=77 CopyLeft
Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.