Documentos de Académico
Documentos de Profesional
Documentos de Cultura
3 Proxys Interceptores
Como se ha comentado, las ventajas de los proxys cache son varias, sin embargo el
hecho de tener que configurar cada uno de los agentes de usuarios puede ser
incómodo, políticamente complicado o simplemente imposible. Distintas
situaciones en donde esto puede ocurrir incluyen cuando en una organización se
desea obligar a todos los clientes de la red utilicen el proxy, quieran estos o no;
cuando se desea que los clientes utilicen el proxy, pero no se quiere que estos
conozcan que lo están utilizando; cuando existe una gran cantidad de clientes para
configurar, pero no se puede acceder a cada uno de ellos para configuarlo, como en
los ISP; etc.
Son en estas situaciones en donde los proxys interceptores se vuelven
necesarios. Una solicitud de un recurso de la web puede ser interceptado por el
proxy en forma transparente para los clientes, es decir que para estos se están
comunicando con el servidor original, cuando en realidad se están comunicando con
el proxy. Los proxy interceptores se incorporan a la red “sin costuras”, agregando
un overhead despreciable frente al esquema tradicional.
Existen diversas formas de lograr que el flujo de solicitudes del cliente llegue al
proxy interceptor. Una forma de realizar esta tarea es mediante switchers L4[3].
Estos atrapan paquetes IP cuyo
puerto de destino sea 80, y lo
redirigen hacia el proxy cache.
Se realiza una conección TCP
entre el cliente y el proxy, el
cual responde a los mensajes
con el número IP del servidor
original. Los productos de
Cisco [4] incorporan, mediante
4 Caso de Estudio
4.2 Despliegue
El despliegue se realizó en el laboratorio de redes del departamento de sistemas
de la Universidad Nacional de Luján. Toda la red de dicha universidad está detrás
de un firewall, pudiéndose acceder a Internet a través de un proxy cache Squid, el
cual no opera como interceptor.
En dicho laboratorio se designó una estación de trabajo para que opere como
proxy interceptor, el cual dependía del proxy de la universidad en una relación
padre/hijo. Además se configuró las 2 estaciones Windows 98 para que utilicen a
nuestro proxy como ruteador. Todas las computadoras del laboratorio son IBM-PC
compatibles, con discos rígidos de 2 GB. La estación designada como servidor
posee 64 MB de memoria RAM, y un procesador Celerón de 333 MHZ. Los
clientes son Pentium-MMX de 200 MHZ.
http_port 8080
La primera línea define una lista de control de acceso (Acces Control List,
ACL) para todos los nodos, y la segunda niega el acceso a los que forman parte de
este grupo (todos).
Para permitir que los nodos de la red 170.210.98.0, correspondiente al
laboratorio de redes, puedan acceder al proxy se modifica:
La segunda línea define un ACL para los nodos de la red local. En la tercera
permitimos el acceso a estos, y en la cuarta negamos a cualquier otro nodo acceder
al proxy.
Debido a que nos encontrábamos detrás de un firewall, no es posible realizar
conexiones directas, sino siempre a través del proxy principal. Para indicar este
comportamiento se incluyeron las siguientes líneas al archivo de configuración:
Esta línea especifica que no se abran conexiones directas con estos destinos
(todos).
Para utilizar las características de proxy interceptor deben agregarse
(descomentarse) las siguientes líneas:
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
Para que el Squid relea el archivo de configuración con todos los cambios
realzados, se introduce el comando “squid –k reconfigure”. Por defecto, todos los
mensajes de log son escritos en el archivo cache.log, ubicado en el directorio
/var/logs/squid/.
Esta misma sentencia debe ser agregada a alguno de los scripts de inicio, para
que se ejecute cada vez. Básicamente, lo que hace es definir una regla de pre-ruteo
que indica que los paquetes llegados por la interface de red eth0, con el protocolo
TCP, puerto 80 deben ser redirijidos al puerto 8080.
Referencias
1. Cooper, I., Melve, I. and G. Tomlinson, "Internet Web Replication and Caching
Taxonomy", RFC 3040, Enero 2001.
2. Fielding, R., Gettys, J., Mogul, J., Frystyk, H., Masinter, L., Leach, P. y T.
Berners-Lee, "Hypertext Transfer Protocol --HTTP/1.1", RFC 2616, Junio
1999.
3. Chandhok, N. “Web Distribution Systems: Caching and Replication”,
Noviembre 1999.
4. Cisco System Inc., “Network Caching”,2000.
5. Cieslak, M. y D. Forster, "Cisco Web Cache Coordination Protocol V1.0", en
desarrollo.
6. Cieslak, M., Forster, D., Tiwana, G. y R. Wilson, "Cisco Web Cache
Coordination Protocol V2.0", en desarrollo.
7. Wessels, D., “Squid Frequently Asked Questions”, 2001, disponible en
http://www.squid-cache.org/Doc/FAQ/.
8. Cooper, I. y J. Dilley, "Known HTTP Proxy/Caching Problems", RFC 3143,
Junio 2001.
9. Kiracofe, D., “Transparent Proxy with Squid mini-HOWTO” v1.3, Enero 2001.