You are on page 1of 9

INFORME III - PROXY

I. PROXY Y FUNCIONAMIENTO:
1. PROXY: Un proxy es un programa o dispositivo que realiza una tarea acceso a Internet en lugar de otro ordenador. Es un punto intermedio entre un ordenador conectado a Internet y el servidor que est accediendo. Cuando navegamos a travs de un proxy, nosotros en realidad no estamos accediendo directamente al servidor, sino que realizamos una solicitud sobre el proxy y es ste quien se conecta con el servidor que queremos acceder y nos devuelve el resultado de la solicitud. Cuando nos conectamos con un proxy, el servidor al que accedemos en realidad recibe la solicitud del proxy, en vez de recibirla directamente desde nuestro ordenador. Puede haber sistemas proxy que interceptan diversos servicios de Internet. Lo ms habitual es el proxy web, que sirve para interceptar las conexiones con la web y puede ser til para incrementar la seguridad, rapidez de navegacin o anonimato.

2. FUNCIONAMIENTO: PRIMERO: El cliente realiza una peticin (puede ser mediante un navegador web) de un recurso de Internet (una pgina web o cualquier otro archivo) especificado por una URL. SEGUNDO: Cuando el proxy cach recibe la peticin, busca la URL resultante en su cach local. Si la encuentra, contrasta la fecha y hora de la versin de la pgina demanda con el servidor remoto. Si la pgina no ha cambiado desde que se cargo en cach la devuelve inmediatamente, ahorrndose de esta manera mucho trfico pues slo intercambia un paquete para comprobar la versin. Si la versin es antigua o simplemente no se encuentra en la cach, lo captura del servidor remoto, lo devuelve al que lo pidi y guarda o actualiza una copia en su cach para futuras peticiones.

II. PARA QU SIRVE UN SERVIDOR PROXY?


El comn de los usos es el proxy Web, el cual lo que hace es recibir las solicitudes de muchos usuarios a una determinada pgina, luego accede al servidor de destino y de ah sube la ltima versin de esta pgina a su propio servidor para alimentar a los usuarios solicitantes; esta copia de la pgina es lo que conocemos como Cache y es lo que usan programas que permiten acceso sin conexin.

Reduccin del trfico mediante la implementacin de cach en el proxy. Las peticiones de pginas Web se hacen al servidor Proxy y no a Internet directamente. Por lo tanto se aligera el trfico en la red y descarga los servidores destino, a los que llegan menos peticiones. El cach utiliza normalmente un algoritmo configurable para determinar cundo un documento est obsoleto y debe ser eliminado de la cach. Como parmetros de configuracin utiliza la antigedad, tamao e histrico de acceso. Dos de esos algoritmos bsicos son el LRU (el usado menos recientemente, en ingls "Least Recently Used") y el LFU (el usado menos frecuentemente, "Least Frequently Used").

Mejora de la velocidad en tiempo de respuesta mediante la implementacin de cach en el proxy. El servidor Proxy crea un cach que evita transferencias idnticas de la informacin entre servidores

durante un tiempo (configurado por el administrador) as que el usuario recibe una respuesta ms rpida. Por ejemplo supongamos que tenemos un ISP que tiene un servidor Proxy con cach. Si un cliente de ese ISP manda una peticin por ejemplo a Google esta llegar al servidor Proxy que tiene este ISP y no ir directamente a la direccin IP del dominio de Google. Esta pgina concreta suele ser muy solicitada por un alto porcentaje de usuarios, por lo tanto el ISP la retiene en su Proxy por un cierto tiempo y crea una respuesta en mucho menor tiempo. Cuando el usuario crea una bsqueda en Google el servidor Proxy ya no es utilizado; el ISP enva su peticin y el cliente recibe su respuesta ahora s desde Google.

El proxy puede servir para implementar funciones de filtrado de contenidos. Para ello es necesaria la configuracin de una serie restricciones que indiquen lo que no se permite. Observar que esta funcionalidad puede ser aprovechada no slo para que ciertos usuarios no accedan a ciertos contenidos sino tambin para filtrar ciertos ficheros que se pueden considerar como peligrosos como pueden ser virus y otros contenidos hostiles servidos por servidores web remotos.

Un proxy puede permitir esconder al servidor web la identidad del que solicita cierto contenido. El servidor web lo nico que detecta es que la ip del proxy solicita cierto contenido. Sin embargo no puede determinar la ip origen de la peticin. Adems, si se usa una cach, puede darse el caso de que el contenido sea accedido muchas ms veces que las detectadas por el servidor web que aloja ese contenido. Los proxys pueden ser aprovechados para dar un servicio web a una demanda de usuarios superior a la que sera posible sin ellos.

El servidor proxy puede modificar los contenidos que sirven los servidores web originales. Puede haber diferentes motivaciones para hacer esto. Veamos algunos ejemplos:

o Algunos proxys pueden cambiar el formato de las pginas web para un propsito o una audiencia especficos (Ej. mostrar

una pgina en un telfono mvil o una PDA) traduciendo los contenidos. o Hay proxys que modifican el trfico web para mejorar la privacidad del trfico web con el servidor. Para ello se establecen unas reglas que el proxy tiene que cumplir. Por ejemplo el proxy puede ser configurado para bloquear direcciones y Cookies, para modificar cabeceras de las peticiones o quitar javascript que se considere peligroso. o Es frecuente el uso de este tipo de proxys en las propias mquinas de los usuarios (proxys locales) para implementar un paso intermedio y que las peticiones no sean liberadas/recibidas a/de la red sin haber sido previamente limpiadas de informacin o contenido peligroso o privado. Este tipo de proxys es tpico en entornos donde hay mucha preocupacin sobre la privacidad y se suele usar como paso previo a la peticin del contenido a travs de una red que persiga el anonimato como puede ser Tor. Los programas ms frecuentes para hacer este tipo de funcionalidad son: o Privoxy: Se centra en el contenido web. No presta servicio de cache. Analiza el trfico basndose en reglas predefinidas que se asocian a direcciones especificadas con expresiones regulares y que aplica a cabeceras, contenido, etc. Es altamente configurable. Tiene extensa documentacin. o Polipo: Tiene caractersticas que lo hacen ms rpido que privoxy (cacheo, pipeline, uso inteligente de rango de peticiones) pero tiene la pega de que no viene configurado por defecto para proveer anonimicidad a nivel de la capa de aplicacin. o El servidor proxy proporciona un punto desde el que se pueden gestionar de forma centralizada el trfico web de muchos usuarios. Eso puede aprovecharse para muchas funciones adicionales a las tpicas vistas anteriormente. Por ejemplo puede usarse para el establecimiento de controlar el trfico de web de individuos concretos, establecer cmo se va a llegar a los servidores web de los que se quieren obtener los contenidos (por ejemplo el proxy puede configurarse para que en lugar de obtener los contenidos directamente, lo haga a travs de la red Tor).

III. SERVIDOR PROXY TRANSPARENTE


Los proxies transparentes mejoran la calidad del servicio en la navegacin por Internet, entregando contenido a un mayor ancho de banda y reduciendo la latencia en la transmisin. Si no usramos proxies, los usuarios estaran atravesando Internet en muchas ocasiones, por servidores y enlaces lentos o con problemas, dependiendo del pas donde estn localizados los equipos. Dicho de otra manera, Si alguien ya ha bajado un archivo que queremos o ha visto una pgina Web que nosotros queremos visualizar, es mucho ms rpido que nos lo provea la infraestructura del proxy transparente, que volver a Internet y conseguirlo desde ah.

DIFERENCIA ENTRE TRANSPARENTE

UN

PROXY

NORMAL

UN

PROXY

Lo cierto es que no hay una gran diferencia en el papel que realizan o en su funcionamiento. De hecho, en muchos casos suelen ser la misma mquina. La mayor diferencia es que con un Proxy transparente, no tienes que hacer configuraciones de red para que el trfico http sea capturado. Al estar construido como parte de la arquitectura de red, todo el trfico del puerto 80 tiene que pasar por este Proxy transparente. Un pequeo inconveniente que ha sido motivo de muchas quejas por parte de usuarios, es que en ocasiones no vemos la pgina actualizada, y esto se nota sobre todo si la Web a la que estamos accediendo, cambia cada poco tiempo. Si la pgina a sido modificada con respecto a la que el proxy transparente tiene en cach, no veremos ese cambio a no ser que hagamos un refresco de pgina con la tecla F5, o la opcin Actualizar en el propio navegador. Un proxy transparente combina un servidor proxy con NAT (Network Address Translation) de manera que las conexiones son enrutadas dentro del proxy sin configuracin por parte del cliente, y habitualmente sin que el propio cliente conozca de su existencia. Este es el tipo de proxy que utilizan los proveedores de servicios de internet (ISP).

IV. INSTALACIN DE UN SERVIDOR PROXY EN UBUNTU


1. Instalacin de SQUID:

Para ellos escribimos el siguiente comando:

sudo apt-get install squid

V.

CONFIGURACIN DE UN SERVIDOR PROXY

1. Configuracin del archivo squid.conf: Para ellos escribimos el siguiente comando:

sudo pico /etc/squid3/squid.conf

2. Nombramos el proxy:

Squid necesita conocer el nombre de la mquina. Para ello, ubica la lnea visible_hostname. visible_hostname BROTHYAM

3. Elegimos el puerto: Por defecto, el puerto de escucha del servidor proxy ser 3128. Para elegir otro puerto, ubica la lnea: http_port 3128 Y cambia el nmero de puerto, por ejemplo: http_port 3177

4. Elegimos la interfaz: Por defecto el servidor proxy escucha por todas las interfaces. Por razones de seguridad, slo debes hacer que escuche en tu red local.

Por ejemplo si la tarjeta de red ligada a tu LAN tiene el IP 10.0.0.1, modifica la lnea a: http_port 10.0.0.1:3177

5. Definimos los derechos de acceso: Por defecto, nadie est autorizado a conectarse al servidor proxy, excepto tu mquina. Entonces hay que crear una lista de autorizacin. Por ejemplo vamos a definir un grupo que abarca toda la red local. Ubica la lnea del archivo que comienza por acl localhost. Al final de la seccin, agrega: acl lanhome src 10.0.0.0/255.255.255.0

(lanhome es un nombre arbitrario que hemos elegido)


6. Autorizar al grupo:

Ahora que el grupo est definido, vamos a autorizar para que utilice el proxy. Ubica la lnea http_access allow. Y agrega debajo (antes de la lnea http_access deny all) http_access allow lanhome

7. Autorizar puertos no estndar:

Por defecto, Squid slo autoriza el trafico HTTP en algunos puertos (80, etc.) Esto puede ocasionar problemas a algunas pginas web que utilizan otros puertos. Ejemplo: http://toto.com/: 81/images/titi.png seria bloqueado por Squid. Para evitar que lo bloquee, encuentra la lnea: http_access deny !Safe_ports Y agrega un comentario: #http_access deny !Safe_ports

8. Iniciar el proxy:

Reinicia el proxy para que tome en cuenta la nueva configuracin que acabamos de realizar. Escribe:

sudo /etc/init.d/squid restart


A partir de ahora el proxy debera funcionar. Slo hay que configurar los diversos programas para que lo utilicen.

VI.

VIDEO TUTORIAL