Vous êtes sur la page 1sur 23

Prctica 6:

Puesta en marcha de un
servidor Proxy
Arquitectura de Sistemas y Aplicaciones Distribuidas U.L.P.G.C.

David Jess Horat Flotats


Enrique Fernndez Perdomo

Prctica 6: Puesta en marcha de un servidor proxy


Arquitectura de Sistemas y Aplicaciones Distribuidas

David Jess Horat Flotats


Enrique Fernndez Perdomo

ndice
Introduccin a Squid...........................................................................................2
Obtencin e Instalacin de Squid....................................................................... 4
Configuracin bsica......................................................................................... 5
Ejemplo de configuracin bsica........................................................................ 8
Configuracin avanzada......................................................................................9
Ejemplo de configuracin avanzada................................................................. 11
Objetivos........................................................................................................11
Archivo de configuracin.............................................................................. 11
Ejemplos de acceso....................................................................................... 12
Desde la interfaz interna........................................................................... 12
Desde la interfaz externa.......................................................................... 14
Comprobacin del funcionamiento de los hermanos y padre....................... 14
Hermano .es.............................................................................................. 14
Hermano .com........................................................................................... 16
Configuracin de un Navegador Web Grfico para que use el Proxy.............. 19

Prctica 6: Puesta en marcha de un servidor proxy


Arquitectura de Sistemas y Aplicaciones Distribuidas

David Jess Horat Flotats


Enrique Fernndez Perdomo

Introduccin a Squid
Squid es un software que cachea datos. Lo realiza guardando las
peticiones que los usuarios realizan. En otras palabras, si una persona quiere
descargar una pgina web, pide a squid que obtenga dicha pgina. Squid se
conecta al servidor remoto (por ejemplo http://www.ulpgc.es) y pide la pgina.
Despus reenva la peticin al usuario, pero al mismo tiempo mantiene una
copia. La prxima vez que alguien desee dicha pgina, squid simplemente la
lee del disco y la transfiere al usuario de forma instantnea. Squid soporta
actualmente los protocolos HTTP, FTP, GOPHER, SSL y WHAIS. No soporta
otros protocolos como RealAudio, Streams, POP3 y similares.
Dentro del campo de las cachs, es necesario tener en cuenta de qu
forma puede ser til el realizar cach y que objetos deben ser cacheados. Es
totalmente inapropiado cachear por ejemplo nmeros de tarjetas de crdito,
los resultados de un script ejecutado remotamente, sitios que cambian muy a
menudo (como www.elprincipalperiodico.com) o incluso sitios que no desean
ser cacheados.
Squid cumple estos requerimientos, siempre y cuando los sitios remotos
sigan los estndares.
Los scripts ejecutables cgi-bin no son cacheados, las pginas que indican
en las cabeceras peridos de caducidad son tenidos en cuenta, y es posible
especificar con reglas extra que se debe y que no se debe cachear, y para
cuanto tiempo.
Para determinar la utilidad y rendimiento de la cache, es necesario tener
en cuenta diversos factores. Utilizando una cache pequea (un par de gigas)
se obtienen unos resultados altos (cercanos al 25%). Este espacio cachea los
sitios mas habituales, tales como ole, marca, y similares. Si se dobla el espacio
en disco, no se dobla este porcentaje. Esto es debido a que se est intentando
capturar el resto de peticiones, que con frecuencia son poco utilizadas. Una
2

Prctica 6: Puesta en marcha de un servidor proxy


Arquitectura de Sistemas y Aplicaciones Distribuidas

David Jess Horat Flotats


Enrique Fernndez Perdomo

cache grande (por encima de 20 Gb) probablemente no llegar al 50%, a no


ser que las pginas se mantengan durante mucho tiempo.

Prctica 6: Puesta en marcha de un servidor proxy


Arquitectura de Sistemas y Aplicaciones Distribuidas

David Jess Horat Flotats


Enrique Fernndez Perdomo

Obtencin e Instalacin de Squid


Squid es el servidor cach ms utilizado, por lo que suele estar incluido
en las distintas distribuciones de Linux que nos podemos encontrar,
especialmente las orientadas a servidores.
En nuestro caso, usamos la distribucin de Linux Fedora Core 31, en la
que viene incluido Squid, por lo que la instalamos directamente desde el CD
sin mayor problema.
En caso de querer compilar e instalar la ltima versin, habra que ir a la
pgina oficial de Squid2 y descargarse, o bien la versin estable (actualmente
la 2.5), o bien la versin en desarrollo (actualmente 3.0). Los formatos de
descarga son o bien tar.gz o bien tar.bz2. En ambos casos deberemos
descomprimirlos, compilarlos e instalarlos.
Una vez descargado un gzipped tarball (squid-*-tar.gz), lo
descomprimimos con el comando:
tar -xvzf squid-*-src.tar.gz
cd squid -*
A continuacin, para configurar, compilar e instalar Squid, ejecutamos:
./configure
make
make install
Esto instalar Squid en /usr/local/squid. Si quiere ver las opciones
disponibles para la instalacin de Squid, ejecute:
./configure help
En la instalacin de Fedora Core 3, por defecto, el Squid se instala en
/usr/sbin/squid y sus archivos de configuracin en /etc/squid/.
1 Fedora Core: http://fedora.redhat.com/
2 Squid Web Proxy Cache: http://www.squid-cache.org/

Prctica 6: Puesta en marcha de un servidor proxy


Arquitectura de Sistemas y Aplicaciones Distribuidas

David Jess Horat Flotats


Enrique Fernndez Perdomo

Configuracin bsica
Todas las opciones de configuracin de Squid se realizan en su fichero de
configuracin. Por defecto se encuentra en /usr/local/squid/etc/squid.conf,
sin embargo en Fedora Core 3, se encuentra en /etc/squid/squid.conf. A
continuacin explicaremos una por una las opciones de configuracin del
Squid.
http_port [host:puerto | puerto]
Especifica el socket donde Squid escuchar peticiones. Por defecto Squid
escucha en todas las ip del ordenador por el puerto 3128. En el caso de tener
un ordenador con dos tarjetas de red: una para la red interna y otra de
conexin a internet, es recomendable especificar a Squid que slo use la de la
red interna mediante su ip. Si elijes un puerto por debajo de 1024 (por
ejemplo el 80), debers ser root para poder usarlo.
cache_mgr [usuario]
Especifica el usuario que recibir un email en caso de que el servidor de
Squid deje de funcionar.
cache_effective_user [usuario]
cache_effective_group [grupo]
En caso de que Squid se ejecute como root, se cambiar su UID y GID a
los especificados por estos parmetros una vez se haya iniciado. Este recurso
se uso como medida de seguridad, ya que una vez iniciados los sockets, ya no
es necesario que Squid siga como administrador del sistema. En caso de no
especificar grupo, Squid se cambiar al grupo del que pertenezca el usuario.
ftp_user [usuario@ | usuario@dominio]
Permite especificar la direccin de correo electrnico que se mandar a
los servidores FTP en donde el login sea annimo. Esto permite que en caso
5

Prctica 6: Puesta en marcha de un servidor proxy


Arquitectura de Sistemas y Aplicaciones Distribuidas

David Jess Horat Flotats


Enrique Fernndez Perdomo

de que un usuario abuse de un FTP, el administrador de dicho FTP tendr una


direccin donde quejarse y advertir de dicho uso. En caso de poner solo
user@, el dominio se autocompletar con el actual.
http_access allow | deny [ip/mscara | nombre-clase]
Especifica qu ips pueden usar el servicio de Squid y cuales no. Esta
regla puede duplicarse cuantas veces se quiera para especifcar la lista entera
de permisos. Ejemplo:
http_access allow 172.16.6.0/255.255.255.0
http_access deny 172.16.0.0/255.255.0.0
La comprobacin se realiza desde arriba hacia abajo y la que primero se
cumple es la que se ejecuta, por ello es aconsejable que las ms restrictivas
estn debajo. Tambin se recomienda usar alguna regla que deniege a todos
al final: http_access deny 0.0.0.0/0.0.0.0 o http_access deny all.
acl [nombre-clase] src [ip/mscara]
Permite definir listas de cara a clasificar el acceso de forma ms clara en
organizaciones grandes. Ejemplo:
# clases
acl red6 src 172.16.6.0/255.255.255.0
acl redes src 172.16.0.0/255.255.0.0
# permisos
http_access allow red6
http_access deny redes
Este ejemplo clasifica las redes del ejemplo del parmetro anterior, sin
embargo no se ve claramente su utilidad al ser una red pequea.
cache_peer [cache-host] [tipo] [puerto_http] [puerto_icp]
Squid soporta el concepto de cach jerrquico, por el cual, si no tienes
una IP se la preguntas a otro cach antes que al servidor original. Esto slo es
6

Prctica 6: Puesta en marcha de un servidor proxy


Arquitectura de Sistemas y Aplicaciones Distribuidas

David Jess Horat Flotats


Enrique Fernndez Perdomo

recomendable si la cach est dentro de la red y por tanto es ms rpido que


preguntarle al servidor original. El host es la mquina a la que le
preguntaremos o nos preguntar. El tipo puede ser parent, sibling o
multicast. Para especificar varios servidores, simplemente se duplica la
lnea.

Prctica 6: Puesta en marcha de un servidor proxy


Arquitectura de Sistemas y Aplicaciones Distribuidas

David Jess Horat Flotats


Enrique Fernndez Perdomo

Ejemplo de configuracin bsica


A continuacin hemos creado un servicio de cach con Squid tal que slo
los ordenadores de la red local sean los que puedan acceder hacia afuera.
# Escucha en la red local por el puerto 8080
http_port 172.16.6.1:8080
# Si el servicio se cae, manda un email a root
cache_mgr root
# Cuando haya una conexin annima a un FTP, manda
# como direccin email: administrador@midominio
ftp_user administrador@
# Desde que el Squid se active, cambia al usuario squid
cache_effective_user squid
# Lista de acceso
acl red6 src 172.16.6.0/255.255.255.0
acl red6ext src 172.16.1.6/255.255.255.255
acl red2 src 172.16.1.2/255.255.255.255
acl redes src 172.16.0.0/255.255.0.0
acl all src 0.0.0.0/0.0.0.0
acl loopback src 127.0.0.1/255.255.255.0
http_access allow loopback
http_access allow red6
http_access allow red6ext
http_access allow red2
http_access deny all

Prctica 6: Puesta en marcha de un servidor proxy


Arquitectura de Sistemas y Aplicaciones Distribuidas

David Jess Horat Flotats


Enrique Fernndez Perdomo

Configuracin avanzada
cache_dir [tipo-fs] [directorio] [opciones-fs]
Permite especificar el lugar donde se almacenar la cach de Squid y sus
parmetros. Tipo-fs representa el sistema de archivos donde estar nuestro
directorio. Por defecto est incluido el ufs que es el sistema tradicional de
Squid. En caso de querer otro formato habra que reconfigurarlo con la opcin
enable-storeio. Para el sistema ufs, que es el que usaremos, existen tres
opciones que hay que especificar: Mbytes L1 L2. Mbytes representa el tamao
mximo de disco que usar Squid para la cach en el directorio especificado.
L1 representa el nmero mximo de subdirectorios que se crearn en el
directorio especificado. El valor por defecto de L1 es 16. L2 representa el
nmero mximo de subdirectorios que se crearn dentro de cada directorio de
L1. El valor por defecto de L2 es 256. El valor por defecto del parmetro es
cache_dir ufs /var/spool/squid 100 16 256.
cache_access_log [ruta/archivo]
Permite especificar el archivo donde se guardar todas las peticiones de
los clientes, tanto HTTP como ICP. Para deshabilitar el logging usar none. El
valor por defecto de este parmetro es: cache_access_log
/var/log/squid/access.log.
cache_peer_domain [cache-host] [dominio | !dominio]
Permite especificar para qu dominios hay que o para que dominios no
hay que preguntarle a otro cach. El cache-host debe estar especificado
previamente mediante la opcin cache_peer.
udp_incoming_address [ip]
udp_outgoing_address [ip]
Permite especificar por qu interfaces de red escuchar (incoming) y

Prctica 6: Puesta en marcha de un servidor proxy


Arquitectura de Sistemas y Aplicaciones Distribuidas

David Jess Horat Flotats


Enrique Fernndez Perdomo

mandar (outgoing) paquetes ICP, que son los usados para preguntar. Si
especificamos 0.0.0.0 para udp_incoming_address, Squid escuchar por
todas las interfaces de red disponibles. Si especificamos 255.255.255.255
para upd_outgoing_address, que es el valor por defecto, Squid mandar
paquetes ICP slo por la interfaz especificada en udp_incoming_address.
acl [nombre-clase] (dst [ip] | dstdomain [dominio])
Permite definir listas de cara a prohibir el acceso a determinadas ips o
dominios como destino. Por ejemplo a sitios para adultos.

10

Prctica 6: Puesta en marcha de un servidor proxy


Arquitectura de Sistemas y Aplicaciones Distribuidas

David Jess Horat Flotats


Enrique Fernndez Perdomo

Ejemplo de configuracin avanzada


Objetivos

Tamao de cach de disco de 50 MB

Realizar el logging de las solicitudes de los clientes

1 Padre

1 hermano slo para .com

1 hermano slo para .es

Permitir solicitudes de clientes slo de la interfaz de la red interna

Permitir solicitar conexiones con servidores y cachs vecinos por la

interfaz externa

Prohibir las siguientes direcciones:

Playboy.com

Playgirl.com

Slo permitimos a nosotros, nuestra red local y a la pasarela de red2 el

acceso al proxy

Archivo de configuracin
# Cach situada en /var/spool/squid cuyo sistema de archivos
# es ufs, ocupa 50 MB y tiene esta cache 7 subdirectorios en el primer nivel
# y 100 en el segundo nivel.
cache_dir ufs /var/spool/squid 50 7 100
# Guarda la actividad de los clientes en el archivo especificado
cache_access_log /var/log/squid/clientes.log
#

# hostname

type

# ------------------ -------- -----

cache_peer proxy.rcanaria.es
cache_peer 220.254.20.164

port port

options

----- ----------parent
sibling 3128
11

3128 3130 proxy-only


3130 proxy-only

Prctica 6: Puesta en marcha de un servidor proxy


Arquitectura de Sistemas y Aplicaciones Distribuidas

cache_peer 172.16.1.10

sibling 3128

David Jess Horat Flotats


Enrique Fernndez Perdomo

3130 proxy-only

# 1 hermano para .es


cache_peer_domain 220.254.20.164 .es !.com
# 1 hermano para .com
cache_peer_domain 172.16.1.10 .com !.es
# Solo permite solicitudes de la red interna por el puerto 3128
http_port 172.16.6.1:3128
# Solo permite enviar preguntas por la red externa
tcp_outgoing_address 172.16.1.6
udp_outgoing_address 172.16.1.6
acl censurado dstdomain .playboy.com .playgirl.com
acl LosDemas src 0.0.0.0/0.0.0.0
acl MisInternos src 172.16.6.0/255.255.255.0
http_access deny censurado
http_access allow MisInternos
http_access deny LosDemas

Ejemplos de acceso
A continuacin mostramos ejemplos de acceso desde varias estaciones.

Desde la interfaz interna


Si intentamos acceder a google nos lo permite perfectamente:
[root@enrique ~]# squidclient -h 172.16.6.1 http://www.google.es
HTTP/1.0 200 OK
Cache-Control: private
Content-Type: text/html
Set-Cookie:
12

Prctica 6: Puesta en marcha de un servidor proxy


Arquitectura de Sistemas y Aplicaciones Distribuidas

David Jess Horat Flotats


Enrique Fernndez Perdomo

PREF=ID=3faa49a75a2d03a5:LD=es:TM=1113931620:LM=1113931620:S=
m-qXtjcXXtJAwwua;
expires=Sun, 17-Jan-2038 19:14:07 GMT; path=/; domain=.google.es
Server: GWS/2.1
Date: Tue, 19 Apr 2005 17:27:00 GMT
X-Cache: MISS from pasarela12.redes.dis.ulpgc.es
Proxy-Connection: close
...
Sin embargo, si intentamos acceder tanto a www.playboy.com como
www.playgirl.com no podemos:
[root@enrique ~]# squidclient -h
172.16.6.1 http://www.playboy.com
HTTP/1.0 403 Forbidden
Server: squid/2.5.STABLE6
Mime-Version: 1.0
Date: Tue, 19 Apr 2005 17:29:23 GMT
Content-Type: text/html
Content-Length: 1063
Expires: Tue, 19 Apr 2005 17:29:23 GMT
X-Squid-Error: ERR_ACCESS_DENIED 0
X-Cache: MISS from pasarela12.redes.dis.ulpgc.es
Proxy-Connection: close
...

[root@enrique ~]# squidclient -h 172.16.6.1 http://www.playgirl.com


HTTP/1.0 403 Forbidden
Server: squid/2.5.STABLE6
Mime-Version: 1.0
Date: Tue, 19 Apr 2005 17:29:34 GMT
Content-Type: text/html
13

Prctica 6: Puesta en marcha de un servidor proxy


Arquitectura de Sistemas y Aplicaciones Distribuidas

David Jess Horat Flotats


Enrique Fernndez Perdomo

Content-Length: 1065
Expires: Tue, 19 Apr 2005 17:29:34 GMT
X-Squid-Error: ERR_ACCESS_DENIED 0
X-Cache: MISS from pasarela12.redes.dis.ulpgc.es
Proxy-Connection: close
...

Desde la interfaz externa


[root@pasarela12 ~]# squidclient -h 172.16.1.6 http://www.gooogle.es
client: ERROR: Cannot connect to 172.16.1.6:3128: Connection refused
Es lgico, ya que Squid no est escuchando la interfaz 172.16.1.6, slo la
172.16.6.1.

Comprobacin del funcionamiento de los hermanos y padre


A continuacin usaremos el Ethereal para comprobar el funcionamiento
de los hermanos y como se mandan los paquetes (las capturas mostradas se
obtienen tras exportarlas a texto plano desde Ethereal).
Los proxys usados son:
-Como padre: proxy.rcanaria.es (193.146.95.50)
-Como hermanos para .es: 220.254.20.164
-Como hermano para .com: 172.16.1.10

Hermano .es
1 0.000000

172.16.1.6

193.146.95.50

ICP

2 0.000031

172.16.1.6

220.254.20.164

4 0.065083

193.146.95.50

172.16.1.6

ICP
ICP
ICP

Opcode: ICP_QUERY (1), Req Nr: 87


Opcode: ICP_QUERY (1), Req Nr: 87
Opcode: ICP_MISS (3), Req Nr: 87

24 0.186011

172.16.1.6

193.146.95.50

25 0.186056

172.16.1.6

172.16.1.10

ICP

Opcode: ICP_QUERY (1), Req Nr: 88

26 0.186243

172.16.1.10

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 88

47 0.253495

193.146.95.50

49 0.257163

172.16.1.6

172.16.1.6

ICP

220.254.20.164

14

ICP

Opcode: ICP_QUERY (1), Req Nr: 88

Opcode: ICP_MISS (3), Req Nr: 88


Opcode: ICP_QUERY (1), Req Nr: 89

Prctica 6: Puesta en marcha de un servidor proxy


Arquitectura de Sistemas y Aplicaciones Distribuidas

David Jess Horat Flotats


Enrique Fernndez Perdomo

50 0.257204

172.16.1.6

193.146.95.50

ICP

Opcode: ICP_QUERY (1), Req Nr: 89

51 0.278058

172.16.1.6

193.146.95.50

ICP

Opcode: ICP_QUERY (1), Req Nr: 90

52 0.278098

172.16.1.6

220.254.20.164

69 0.323775

193.146.95.50

172.16.1.6

ICP

Opcode: ICP_HIT (2), Req Nr: 89

71 0.342718

193.146.95.50

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 90

84 0.641992

172.16.1.6

193.146.95.50

ICP

Opcode: ICP_QUERY (1), Req Nr: 91

85 0.644674

172.16.1.6

220.254.20.164

86 0.644714

172.16.1.6

193.146.95.50

ICP

Opcode: ICP_QUERY (1), Req Nr: 92

87 0.646733

172.16.1.6

193.146.95.50

ICP

Opcode: ICP_QUERY (1), Req Nr: 93

88 0.654701

172.16.1.6

193.146.95.50

ICP

Opcode: ICP_QUERY (1), Req Nr: 94

89 0.654742

172.16.1.6

220.254.20.164

90 0.705929

193.146.95.50

172.16.1.6

ICP

Opcode: ICP_HIT (2), Req Nr: 91

92 0.708808

193.146.95.50

172.16.1.6

ICP

Opcode: ICP_HIT (2), Req Nr: 92

94 0.712008

193.146.95.50

172.16.1.6

ICP

Opcode: ICP_HIT (2), Req Nr: 93

96 0.720026

193.146.95.50

172.16.1.6

ICP

Opcode: ICP_HIT (2), Req Nr: 94

ICP

ICP

ICP

ICP

Opcode: ICP_QUERY (1), Req Nr: 90

Opcode: ICP_QUERY (1), Req Nr: 92

Opcode: ICP_QUERY (1), Req Nr: 94

103 0.774414

172.16.1.6

220.254.20.164

104 0.774447

172.16.1.6

172.16.1.10

105 0.774467

172.16.1.6

193.146.95.50

107 0.774681

172.16.1.10

117 0.841289

193.146.95.50

126 1.105110

220.254.20.164

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 87

134 1.461001

220.254.20.164

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 89

137 1.505319

172.16.1.6

172.16.1.10

138 1.505361

172.16.1.6

193.146.95.50

139 1.505392

172.16.1.6

220.254.20.164

140 1.505496

172.16.1.10

141 1.508053

172.16.1.6

193.146.95.50

142 1.508095

172.16.1.6

220.254.20.164

143 1.508127

172.16.1.6

172.16.1.10

ICP

Opcode: ICP_QUERY (1), Req Nr: 97

144 1.508235

172.16.1.10

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 97

145 1.572886

193.146.95.50

172.16.1.6

ICP

Opcode: ICP_HIT (2), Req Nr: 96

147 1.576190

193.146.95.50

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 97

175 1.882501

172.16.1.6

220.254.20.164

176 1.882542

172.16.1.6

172.16.1.10

177 1.882563

172.16.1.6

193.146.95.50

178 1.882716

172.16.1.10

179 1.887157

ICP

172.16.1.6

ICP
ICP

172.16.1.6

ICP

ICP

172.16.1.6

ICP
ICP
ICP
ICP
ICP

ICP
ICP
ICP

Opcode: ICP_QUERY (1), Req Nr: 95


Opcode: ICP_QUERY (1), Req Nr: 95
Opcode: ICP_QUERY (1), Req Nr: 95
Opcode: ICP_MISS (3), Req Nr: 95
Opcode: ICP_MISS (3), Req Nr: 95

Opcode: ICP_QUERY (1), Req Nr: 96


Opcode: ICP_QUERY (1), Req Nr: 96
Opcode: ICP_QUERY (1), Req Nr: 96
Opcode: ICP_MISS (3), Req Nr: 96
Opcode: ICP_QUERY (1), Req Nr: 97
Opcode: ICP_QUERY (1), Req Nr: 97

Opcode: ICP_QUERY (1), Req Nr: 98


Opcode: ICP_QUERY (1), Req Nr: 98
Opcode: ICP_QUERY (1), Req Nr: 98

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 98

172.16.1.6

172.16.1.10

ICP

Opcode: ICP_QUERY (1), Req Nr: 99

180 1.887196

172.16.1.6

193.146.95.50

181 1.887217

172.16.1.6

220.254.20.164

182 1.887268

172.16.1.10

183 1.901887

172.16.1.6

193.146.95.50

184 1.901929

172.16.1.6

220.254.20.164

172.16.1.6

ICP
ICP
ICP

15

ICP
ICP

Opcode: ICP_QUERY (1), Req Nr: 99


Opcode: ICP_QUERY (1), Req Nr: 99
Opcode: ICP_MISS (3), Req Nr: 99
Opcode: ICP_QUERY (1), Req Nr: 100
Opcode: ICP_QUERY (1), Req Nr: 100

Prctica 6: Puesta en marcha de un servidor proxy


Arquitectura de Sistemas y Aplicaciones Distribuidas

David Jess Horat Flotats


Enrique Fernndez Perdomo

185 1.901951

172.16.1.6

172.16.1.10

ICP

Opcode: ICP_QUERY (1), Req Nr: 100

186 1.902068

172.16.1.10

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 100

188 1.949582

193.146.95.50

172.16.1.6

ICP

Opcode: ICP_HIT (2), Req Nr: 98

190 1.954109

193.146.95.50

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 99

191 1.968175

193.146.95.50

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 100

221 2.242718

220.254.20.164

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 96

224 2.244791

220.254.20.164

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 97

229 2.264353

172.16.1.6

220.254.20.164

ICP

Opcode: ICP_QUERY (1), Req Nr: 101

230 2.264383

172.16.1.6

193.146.95.50

ICP

Opcode: ICP_QUERY (1), Req Nr: 101

231 2.330102

193.146.95.50

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 101

236 2.624775

172.16.1.6

193.146.95.50

ICP

Opcode: ICP_QUERY (1), Req Nr: 102

237 2.624805

172.16.1.6

220.254.20.164

ICP

Opcode: ICP_QUERY (1), Req Nr: 102

238 2.679557

220.254.20.164

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 98

239 2.683286

220.254.20.164

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 99

240 2.691326

220.254.20.164

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 100

241 2.692708

193.146.95.50

249 3.073764

220.254.20.164

172.16.1.6

ICP

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 102


Opcode: ICP_MISS (3), Req Nr: 101

Hermano .com
1 0.000000

172.16.1.6

193.146.95.50

ICP

2 0.000032

172.16.1.6

172.16.1.10

ICP

Opcode: ICP_QUERY (1), Req Nr: 103

3 0.000770

172.16.1.10

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 103

4 0.069223

193.146.95.50

172.16.1.6

18 0.981715

172.16.1.6

172.16.1.10

19 0.981754

172.16.1.6

193.146.95.50

20 0.981913

172.16.1.10

21 1.049196

193.146.95.50

55 1.637087

172.16.1.6

172.16.1.10

56 1.637118

172.16.1.6

193.146.95.50

57 1.637274

172.16.1.10

62 1.709727

193.146.95.50

66 1.831129

ICP
ICP
ICP

172.16.1.6

ICP

172.16.1.6

ICP
ICP
ICP

172.16.1.6

ICP

Opcode: ICP_QUERY (1), Req Nr: 103

Opcode: ICP_MISS (3), Req Nr: 103


Opcode: ICP_QUERY (1), Req Nr: 104
Opcode: ICP_QUERY (1), Req Nr: 104
Opcode: ICP_MISS (3), Req Nr: 104
Opcode: ICP_MISS (3), Req Nr: 104
Opcode: ICP_QUERY (1), Req Nr: 105
Opcode: ICP_QUERY (1), Req Nr: 105
Opcode: ICP_MISS (3), Req Nr: 105

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 105

172.16.1.6

193.146.95.50

ICP

Opcode: ICP_QUERY (1), Req Nr: 106

67 1.831171

172.16.1.6

172.16.1.10

ICP

Opcode: ICP_QUERY (1), Req Nr: 106

68 1.831361

172.16.1.10

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 106

70 1.904041

193.146.95.50

75 2.029253

172.16.1.6

172.16.1.10

76 2.029292

172.16.1.6

193.146.95.50

77 2.029446

172.16.1.10

78 2.031097

172.16.1.6

ICP
ICP
ICP

Opcode: ICP_MISS (3), Req Nr: 106


Opcode: ICP_QUERY (1), Req Nr: 107
Opcode: ICP_QUERY (1), Req Nr: 107

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 107

172.16.1.6

172.16.1.10

ICP

Opcode: ICP_QUERY (1), Req Nr: 108

79 2.031136

172.16.1.6

193.146.95.50

80 2.031207

172.16.1.10

ICP

172.16.1.6

ICP

16

Opcode: ICP_QUERY (1), Req Nr: 108


Opcode: ICP_MISS (3), Req Nr: 108

Prctica 6: Puesta en marcha de un servidor proxy


Arquitectura de Sistemas y Aplicaciones Distribuidas
ICP

David Jess Horat Flotats


Enrique Fernndez Perdomo

81 2.041328

172.16.1.6

193.146.95.50

82 2.041370

172.16.1.6

172.16.1.10

ICP

Opcode: ICP_QUERY (1), Req Nr: 109

83 2.041520

172.16.1.10

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 109

84 2.043736

172.16.1.6

172.16.1.10

ICP

Opcode: ICP_QUERY (1), Req Nr: 110

85 2.043775

172.16.1.6

193.146.95.50

86 2.043843

172.16.1.10

87 2.094220

193.146.95.50

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 107

89 2.095506

193.146.95.50

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 108

91 2.107428

193.146.95.50

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 109

93 2.108426

193.146.95.50

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 110

ICP

172.16.1.6

ICP

ICP

Opcode: ICP_QUERY (1), Req Nr: 109

Opcode: ICP_QUERY (1), Req Nr: 110


Opcode: ICP_MISS (3), Req Nr: 110

105 2.206639

172.16.1.6

172.16.1.10

106 2.206677

172.16.1.6

193.146.95.50

107 2.206830

172.16.1.10

112 2.243211

172.16.1.6

193.146.95.50

113 2.243255

172.16.1.6

172.16.1.10

ICP

Opcode: ICP_QUERY (1), Req Nr: 112

114 2.243438

172.16.1.10

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 112

115 2.273939

193.146.95.50

119 2.297607

172.16.1.6

172.16.1.10

120 2.297649

172.16.1.6

193.146.95.50

121 2.297805

172.16.1.10

122 2.311048

193.146.95.50

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 112

125 2.366368

193.146.95.50

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 113

129 2.398897

172.16.1.6

172.16.1.10

130 2.398939

172.16.1.6

193.146.95.50

131 2.399087

172.16.1.10

133 2.421558

172.16.1.6

193.146.95.50

134 2.421600

172.16.1.6

172.16.1.10

ICP

Opcode: ICP_QUERY (1), Req Nr: 115

135 2.421774

172.16.1.10

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 115

139 2.464199

193.146.95.50

143 2.476763

172.16.1.6

172.16.1.10

144 2.476805

172.16.1.6

193.146.95.50

145 2.476956

172.16.1.10

146 2.486737

193.146.95.50

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 115

149 2.544076

193.146.95.50

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 116

154 2.575494

172.16.1.6

172.16.1.10

155 2.575534

172.16.1.6

193.146.95.50

156 2.575684

172.16.1.10

158 2.595991

172.16.1.6

193.146.95.50

159 2.596035

172.16.1.6

172.16.1.10

ICP

Opcode: ICP_QUERY (1), Req Nr: 118

160 2.596198

172.16.1.10

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 118

163 2.643123

193.146.95.50

167 2.654189

172.16.1.6

172.16.1.6

ICP
ICP

172.16.1.6

ICP

ICP
ICP

172.16.1.6

ICP
ICP

ICP

172.16.1.6

ICP
ICP

172.16.1.6

ICP

ICP
ICP

172.16.1.6

ICP
ICP

ICP

172.16.1.6

ICP
ICP

172.16.1.6

ICP

ICP

172.16.1.10

ICP

17

Opcode: ICP_QUERY (1), Req Nr: 111


Opcode: ICP_QUERY (1), Req Nr: 111
Opcode: ICP_MISS (3), Req Nr: 111
Opcode: ICP_QUERY (1), Req Nr: 112

Opcode: ICP_MISS (3), Req Nr: 111


Opcode: ICP_QUERY (1), Req Nr: 113
Opcode: ICP_QUERY (1), Req Nr: 113
Opcode: ICP_MISS (3), Req Nr: 113

Opcode: ICP_QUERY (1), Req Nr: 114


Opcode: ICP_QUERY (1), Req Nr: 114
Opcode: ICP_MISS (3), Req Nr: 114
Opcode: ICP_QUERY (1), Req Nr: 115

Opcode: ICP_MISS (3), Req Nr: 114


Opcode: ICP_QUERY (1), Req Nr: 116
Opcode: ICP_QUERY (1), Req Nr: 116
Opcode: ICP_MISS (3), Req Nr: 116

Opcode: ICP_QUERY (1), Req Nr: 117


Opcode: ICP_QUERY (1), Req Nr: 117
Opcode: ICP_MISS (3), Req Nr: 117
Opcode: ICP_QUERY (1), Req Nr: 118

Opcode: ICP_MISS (3), Req Nr: 117


Opcode: ICP_QUERY (1), Req Nr: 119

Prctica 6: Puesta en marcha de un servidor proxy


Arquitectura de Sistemas y Aplicaciones Distribuidas
168 2.654231

172.16.1.6

193.146.95.50

169 2.654431

172.16.1.10

170 2.662018

193.146.95.50

174 2.695564

172.16.1.6

172.16.1.10

175 2.695601

172.16.1.6

193.146.95.50

176 2.695748

172.16.1.10

178 2.719482

193.146.95.50

183 2.753764

172.16.1.6

ICP
ICP

172.16.1.6

ICP
ICP

172.16.1.6

ICP
ICP

David Jess Horat Flotats


Enrique Fernndez Perdomo
Opcode: ICP_QUERY (1), Req Nr: 119
Opcode: ICP_MISS (3), Req Nr: 119
Opcode: ICP_MISS (3), Req Nr: 118
Opcode: ICP_QUERY (1), Req Nr: 120
Opcode: ICP_QUERY (1), Req Nr: 120
Opcode: ICP_MISS (3), Req Nr: 120

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 119

172.16.1.6

193.146.95.50

ICP

Opcode: ICP_QUERY (1), Req Nr: 121

184 2.753806

172.16.1.6

172.16.1.10

ICP

Opcode: ICP_QUERY (1), Req Nr: 121

185 2.753986

172.16.1.10

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 121

186 2.761255

193.146.95.50

189 2.773491

172.16.1.6

172.16.1.10

190 2.773531

172.16.1.6

193.146.95.50

191 2.773689

172.16.1.10

194 2.820352

193.146.95.50

198 2.833751

172.16.1.6

172.16.1.10

199 2.833785

172.16.1.6

193.146.95.50

200 2.833941

172.16.1.10

201 2.838678

193.146.95.50

204 2.871813

172.16.1.6

ICP
ICP

172.16.1.6

ICP
ICP

172.16.1.6

ICP
ICP

172.16.1.6

ICP
ICP

Opcode: ICP_MISS (3), Req Nr: 120


Opcode: ICP_QUERY (1), Req Nr: 122
Opcode: ICP_QUERY (1), Req Nr: 122
Opcode: ICP_MISS (3), Req Nr: 122
Opcode: ICP_MISS (3), Req Nr: 121
Opcode: ICP_QUERY (1), Req Nr: 123
Opcode: ICP_QUERY (1), Req Nr: 123
Opcode: ICP_MISS (3), Req Nr: 123

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 122

172.16.1.6

193.146.95.50

ICP

Opcode: ICP_QUERY (1), Req Nr: 124

205 2.871855

172.16.1.6

172.16.1.10

ICP

Opcode: ICP_QUERY (1), Req Nr: 124

206 2.872030

172.16.1.10

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 124

208 2.898910

193.146.95.50

213 2.933488

172.16.1.6

220.254.20.164

214 2.933528

172.16.1.6

172.16.1.10

215 2.933549

172.16.1.6

193.146.95.50

216 2.933718

172.16.1.10

220 2.939842

193.146.95.50

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 124

243 3.003337

193.146.95.50

172.16.1.6

ICP

Opcode: ICP_MISS (3), Req Nr: 125

248 3.514946

172.16.1.6

172.16.1.10

249 3.514979

172.16.1.6

193.146.95.50

250 3.515118

172.16.1.10

252 3.584440

193.146.95.50

255 3.904472

220.254.20.164

172.16.1.6

ICP
ICP
ICP

172.16.1.6

ICP
ICP

ICP

172.16.1.6

ICP
ICP

172.16.1.6

ICP

172.16.1.6

ICP

18

Opcode: ICP_MISS (3), Req Nr: 123


Opcode: ICP_QUERY (1), Req Nr: 125
Opcode: ICP_QUERY (1), Req Nr: 125
Opcode: ICP_QUERY (1), Req Nr: 125
Opcode: ICP_HIT (2), Req Nr: 125

Opcode: ICP_QUERY (1), Req Nr: 126


Opcode: ICP_QUERY (1), Req Nr: 126
Opcode: ICP_MISS (3), Req Nr: 126
Opcode: ICP_MISS (3), Req Nr: 126
Opcode: ICP_MISS (3), Req Nr: 125

Prctica 6: Puesta en marcha de un servidor proxy


Arquitectura de Sistemas y Aplicaciones Distribuidas

David Jess Horat Flotats


Enrique Fernndez Perdomo

Configuracin de un Navegador Web Grfico para


que use el Proxy
Antes de realizar la configuracin del proxy probamos si al navegar
podemos acceder a las pginas prohibidas por nuestro Proxy, como es el caso
de www.playboy.com. Si intentamos el acceso, comprobamos como la
conexin se realiza, tal y como se ve en la Ilustracin 1, que se ha detenido
antes de que se cargue la pgina por completo.

Illustracin 1: Acceso a www.playboy.com (detenido antes de entrar completamente)

Para configura el navegador web para que haga uso de nuestro proxy,
que en este caso se trata del Firefox, seguiremos los siguientes pasos:
1. Ir a Edit-->Preferences.
19

Prctica 6: Puesta en marcha de un servidor proxy


Arquitectura de Sistemas y Aplicaciones Distribuidas

David Jess Horat Flotats


Enrique Fernndez Perdomo

El cuadro del dilogo al que accederemos tras acceder por el men


indicado, es el que se ve en la Ilustracin 2.

Illustracin 2: Cuadro de Dilogo de Preferencias del navegador web Firefox

2. Ir a Connection Settings
Picando en Connection Settings, que se ven el cuadro de dilogo
Preferencias de la Ilustracin 2, accederemos a la configuracin de la
conexin, donde se configura, entre otros parmetros el proxy a usar, en caso
de usarse alguno, como es nuestro caso.
El cuadro de dilogo que se nos abre para configurar la conexin es el de

20

Prctica 6: Puesta en marcha de un servidor proxy


Arquitectura de Sistemas y Aplicaciones Distribuidas

David Jess Horat Flotats


Enrique Fernndez Perdomo

la Ilustracin 3, que se ve en el ltimo punto, pues es ah donde se configura


el proxy para nuestro servidor proxy en concreto.
3. Configurar el proxy poniendo:
El cuadro de dilogo de configuracin de la conexin se ve en la
Ilustracin 3, en la que ya se ha aplicado la configuracin apropiada para
que Firefox haga uso de nuestro proxy, cuya IP es la 172.16.6.1 y que
escucha por el puerto 3128, es decir, los parmetros son los siguientes:
HTTP Proxy: 172.16.6.1Port: 3128
Visto grficamente, lo tenemos en la Ilustracin 3.

Illustracin 3: Configuracin de la Conexin para nuestro proxy

21

Prctica 6: Puesta en marcha de un servidor proxy


Arquitectura de Sistemas y Aplicaciones Distribuidas

David Jess Horat Flotats


Enrique Fernndez Perdomo

Una vez realizado el proceso de configuracin habr que Aceptar (OK)


todos los cuadros de dilogo. Esto aplicar la configuracin. Ahora podemos
probar de nuevo el acceso a una pgina prohibida por nuestro servidor proxy.
Volvemos a intentar acceder a www.playboy.com y el resultado es el de la
Ilustracin 4.

Illustracin 4: Navegacin usando el proxy. Denagacin de acceso a www.playboy.com

En lugar de producirse el acceso a www.playboy.com como en el caso


anterior, en el que no se usaba el proxy configurado por nosotros, se produce
un error. Esto es debido a que el proxy deniega el acceso a
www.playboy.com, pues est prohibida. En su lugar, el proxy de squid
manda al navegador una pgina de error que es la que se ha mostrado en la
Ilustracin 4.

22

Vous aimerez peut-être aussi