Académique Documents
Professionnel Documents
Culture Documents
Puesta en marcha de un
servidor Proxy
Arquitectura de Sistemas y Aplicaciones Distribuidas U.L.P.G.C.
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
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
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
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
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
1 Padre
interfaz externa
Playboy.com
Playgirl.com
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
cache_peer 172.16.1.10
sibling 3128
3130 proxy-only
Ejemplos de acceso
A continuacin mostramos ejemplos de acceso desde varias estaciones.
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
...
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
...
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
24 0.186011
172.16.1.6
193.146.95.50
25 0.186056
172.16.1.6
172.16.1.10
ICP
26 0.186243
172.16.1.10
172.16.1.6
ICP
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
50 0.257204
172.16.1.6
193.146.95.50
ICP
51 0.278058
172.16.1.6
193.146.95.50
ICP
52 0.278098
172.16.1.6
220.254.20.164
69 0.323775
193.146.95.50
172.16.1.6
ICP
71 0.342718
193.146.95.50
172.16.1.6
ICP
84 0.641992
172.16.1.6
193.146.95.50
ICP
85 0.644674
172.16.1.6
220.254.20.164
86 0.644714
172.16.1.6
193.146.95.50
ICP
87 0.646733
172.16.1.6
193.146.95.50
ICP
88 0.654701
172.16.1.6
193.146.95.50
ICP
89 0.654742
172.16.1.6
220.254.20.164
90 0.705929
193.146.95.50
172.16.1.6
ICP
92 0.708808
193.146.95.50
172.16.1.6
ICP
94 0.712008
193.146.95.50
172.16.1.6
ICP
96 0.720026
193.146.95.50
172.16.1.6
ICP
ICP
ICP
ICP
ICP
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
134 1.461001
220.254.20.164
172.16.1.6
ICP
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
144 1.508235
172.16.1.10
172.16.1.6
ICP
145 1.572886
193.146.95.50
172.16.1.6
ICP
147 1.576190
193.146.95.50
172.16.1.6
ICP
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
172.16.1.6
ICP
172.16.1.6
172.16.1.10
ICP
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
185 1.901951
172.16.1.6
172.16.1.10
ICP
186 1.902068
172.16.1.10
172.16.1.6
ICP
188 1.949582
193.146.95.50
172.16.1.6
ICP
190 1.954109
193.146.95.50
172.16.1.6
ICP
191 1.968175
193.146.95.50
172.16.1.6
ICP
221 2.242718
220.254.20.164
172.16.1.6
ICP
224 2.244791
220.254.20.164
172.16.1.6
ICP
229 2.264353
172.16.1.6
220.254.20.164
ICP
230 2.264383
172.16.1.6
193.146.95.50
ICP
231 2.330102
193.146.95.50
172.16.1.6
ICP
236 2.624775
172.16.1.6
193.146.95.50
ICP
237 2.624805
172.16.1.6
220.254.20.164
ICP
238 2.679557
220.254.20.164
172.16.1.6
ICP
239 2.683286
220.254.20.164
172.16.1.6
ICP
240 2.691326
220.254.20.164
172.16.1.6
ICP
241 2.692708
193.146.95.50
249 3.073764
220.254.20.164
172.16.1.6
ICP
172.16.1.6
ICP
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
3 0.000770
172.16.1.10
172.16.1.6
ICP
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
172.16.1.6
ICP
172.16.1.6
193.146.95.50
ICP
67 1.831171
172.16.1.6
172.16.1.10
ICP
68 1.831361
172.16.1.10
172.16.1.6
ICP
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
172.16.1.6
ICP
172.16.1.6
172.16.1.10
ICP
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
81 2.041328
172.16.1.6
193.146.95.50
82 2.041370
172.16.1.6
172.16.1.10
ICP
83 2.041520
172.16.1.10
172.16.1.6
ICP
84 2.043736
172.16.1.6
172.16.1.10
ICP
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
89 2.095506
193.146.95.50
172.16.1.6
ICP
91 2.107428
193.146.95.50
172.16.1.6
ICP
93 2.108426
193.146.95.50
172.16.1.6
ICP
ICP
172.16.1.6
ICP
ICP
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
114 2.243438
172.16.1.10
172.16.1.6
ICP
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
125 2.366368
193.146.95.50
172.16.1.6
ICP
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
135 2.421774
172.16.1.10
172.16.1.6
ICP
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
149 2.544076
193.146.95.50
172.16.1.6
ICP
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
160 2.596198
172.16.1.10
172.16.1.6
ICP
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
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
172.16.1.6
ICP
172.16.1.6
193.146.95.50
ICP
184 2.753806
172.16.1.6
172.16.1.10
ICP
185 2.753986
172.16.1.10
172.16.1.6
ICP
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
172.16.1.6
ICP
172.16.1.6
193.146.95.50
ICP
205 2.871855
172.16.1.6
172.16.1.10
ICP
206 2.872030
172.16.1.10
172.16.1.6
ICP
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
243 3.003337
193.146.95.50
172.16.1.6
ICP
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
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
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
21
22