Professional Documents
Culture Documents
Descargas
Servicios
Portada
Foros
Manuales
Servicios
Cursos Linux
Sondeo
Escritorios alternativos Linux Cul prefieres?
Xfce LXDE Razor-qt Enlightenment 0.17
Prximas fechas Curso Global de Servidores con CentOS 6. Taller de programacin de Python. Curso de programacin de PHP. Prueba ALDOS 1.4.5. Nuestro sistema operativo para escritorio.
Voto Resultados
Other polls | 1,428 v oters | 2 comentarios
siguientes: a) Debe reconocer y citar al autor original. b) No puede utilizar esta obra para fines comerciales (incluyendo su publicacin, a travs de cualquier medio, por entidades con fines de lucro). c) Si altera o transf orma esta obra o genera una obra deriv ada, slo puede distribuir la obra generada bajo una licencia idntica a sta. Al reutilizar o distribuir la obra, tiene que dejar bien claro los trminos de la licencia de esta obra. Alguna de estas condiciones puede no aplicarse si se obtiene el permiso del titular de los derechos de autor. Los derechos deriv ados de usos legtimos u otras limitaciones no se v en af ectados por lo anterior. Licencia completa en castellano. La inf ormacin contenida en este documento y los deriv ados de ste se proporcionan tal cual son y los autores no asumirn responsabilidad alguna si el usuario o lector, hace mal uso de stos.
Introduccin.
Qu es Servidor Intermediario (Proxy)?
El trmino en ingles Proxy tiene un significado muy general y al mismo tiempo ambiguo, aunque invariablemente se considera un sinnimo del concepto de Intermediario. Se suele traducir, en el sentido estricto, como delegado o apoderado (el que tiene poder sobre otro). Un Servidor Intermediario se define como una computadora o dispositivo que ofrece un servicio de red que consiste en permitir a los clientes realizar conexiones de red indirectas hacia otros servicios de red. Durante el proceso ocurre lo siguiente: 1. Cliente se conecta hacia un Servidor Proxy. 2. Cliente solicita una conexin, archivo u otro recurso disponible en un servidor distinto. 3. Servidor Intermediario proporciona el recurso ya sea conectndose hacia el servidor especificado o sirviendo ste desde un cach. 4. En algunos casos el Servidor Intermediario puede alterar la solicitud del cliente o bien la respuesta del servidor para diversos propsitos. Los Servidores Proxy generalmente se hacen trabajar simultneamente como muro cortafuegos operando en el Nivel de Red, actuando como filtro de paquetes, como en el caso de iptables o bien operando en el Nivel de Aplicacin, controlando diversos servicios, como es el caso de TCP Wrapper. Dependiendo del contexto, el muro cortafuegos tambin se conoce como BPD o Border Protection Device o simplemente filtro de paquetes. Una aplicacin comn de los Servidores Proxy es funcionar como cach de contenido de Red (principalmente HTTP), proporcionando en la proximidad de los clientes un cach de pginas y archivos disponibles a travs de la Red en servidores HTTP remotos, permitiendo a los clientes de la red local acceder hacia stos de forma ms rpida y confiable. Cuando se recibe una peticin para un recurso de Red especificado en un URL (Uniform Resource Locator) el Servidor Intermediario busca el resultado del URL dentro del cach. Si ste es encontrado, el Servidor Intermediario responde al cliente proporcionado inmediatamente el contenido solicitado. Si el contenido solicitado estuviera ausente en el cach, el Servidor Intermediario lo traer desde servidor remoto, entregndolo al cliente que lo solicit y guardando una copia en el cach. El contenido en el cach es eliminado luego a travs de un algoritmo de expiracin de acuerdo a la antigedad, tamao e historial de respuestas a solicitudes (hits) (ejemplos: LRU, LFUDA y GDSF). Los Servidores Proxy para contenido de Red (Web Proxies) tambin pueden actuar como filtros del contenido servido, aplicando polticas de censura de acuerdo a criterios arbitrarios.
Acerca de Squid.
Squid es un Servidor Intermediario de alto desempeo que se ha venido desarrollando desde hace varios aos y es hoy en da un muy popular y ampliamente utilizado entre los sistemas operativos como GNU/Linux y derivados de Unix. Es muy confiable, robusto y verstil y se distribuye bajo los trminos de la Licencia Pblica General GNU (GNU/GPL). Siendo
http://www.alcancelibre.org/staticpages/index.php/19-0-como-squid-general
1/8
22/2/2014
URL: http://www.squid-cache.org/
Nota.
En CentOS 5 y Red Hat Enterprise Linux 5, se pude utilizar una poltica adicional. Para que SELinux permita al servicio squid funcionar normalmente, haciendo que todo lo anteriormente descrito en esta seccin pierda sentido, ejecute: s e t s e b o o lPs q u i d _ d i s a b l e _ t r a n s1
Antes de continuar.
Evite dejar espacios vacos en lugares indebidos. El siguiente ejemplo muestra la manera incorrecta de habilitar un opcin. Mal #O p c i ni n c o r r e c t a m e n t eh a b i l i t a d a . h t t p _ p o r t8 0 8 0 El siguiente ejemplo muestra la manera correcta de habilitar un opcin. Bien
http://www.alcancelibre.org/staticpages/index.php/19-0-como-squid-general
2/8
22/2/2014
#O p c i nc o r r e c t a m e n t eh a b i l i t a d a . h t t p _ p o r t8 0 8 0
Configuracin bsica.
Squid utiliza el archivo de configuracin localizado en /etc/squid/squid.conf y podr trabajar sobre este utilizando su editor de texto simple preferido. Existen un gran nmero de opciones, de los cuales recomendamos configurar los siguientes: Al menos una Lista de Control de Acceso Al menos una Regla de Control de Acceso http_port cache_dir error_directory, slo si va a personalizar mensajes de error. El resto de los opciones mencionados en este documento son, valga la redundancia, opcionales. Edite el archivo /etc/squid/squid.conf: v i/ e t c / s q u i d / s q u i d . c o n f
Controles de acceso.
Parapoder controlar el trfico de los clientes hacia Internet, es necesario establecer Listas de Control de Acceso que definan una red o bien ciertos anfitriones en particular. A cada lista se le asignar una Regla de Control de Acceso que permitir o denegar el acceso a Squid.
Regularmente una lista de control de acceso se establece con la siguiente sintaxis: a c l[ n o m b r ed el al i s t a ]s r c[ l oq u ec o m p o n eal al i s t a ] Si se desea establecer una lista de control de acceso que abarque a toda la red local, basta definir la IP correspondiente a la red y la mscara de la sub-red. Por ejemplo, si se tiene una red donde los anfitriones tienen direcciones del segmento IP 172.16.100.0/28, se puede utilizar lo siguiente: a c ll o c a l n e ts r c1 7 2 . 1 6 . 1 0 0 . 0 / 2 8 Tambin puede definirse una Lista de Control de Acceso especificando un archivo localizado en cualquier parte del disco duro y la cual contiene una lista de direcciones IP. Ejemplo: a c lp e r m i t i d o ss r c" / e t c / s q u i d / l i s t a s / p e r m i t i d o s " El archivo /etc/squid/listas/permitidos tendra un contenido similar al siguiente: 1 7 2 . 1 6 . 1 0 0 . 1 1 7 2 . 1 6 . 1 0 0 . 2 1 7 2 . 1 6 . 1 0 0 . 3 1 7 2 . 1 6 . 1 0 0 . 1 5 1 7 2 . 1 6 . 1 0 0 . 1 6 1 7 2 . 1 6 . 1 0 0 . 2 0 1 7 2 . 1 6 . 1 0 0 . 4 0 Lo anterior estara definiendo que la Lista de Control de Acceso denominada permitidos estara compuesta por las direcciones IP incluidas en el archivo /etc/squid/listas/permitidos.
http://www.alcancelibre.org/staticpages/index.php/19-0-como-squid-general
3/8
22/2/2014
Caso 1.
Considerando como ejemplo que se dispone de una red 172.16.100.0/28, si se desea definir toda la red local, se utilizara la siguiente lnea en la seccin de Listas de Control de Acceso: a c ll o c a l n e ts r c1 7 2 . 1 6 . 1 0 0 . 0 / 2 8 Habiendo hecho lo anterior, la seccin de listas de control de acceso debe quedar ms o menos del siguiente modo: Listas de Control de Acceso: definicin de una red local completa # #R e c o m m e n d e dm i n i m u mc o n f i g u r a t i o n : a c la l ls r c0 . 0 . 0 . 0 / 0 a c lm a n a g e rp r o t oc a c h e _ o b j e c t a c ll o c a l h o s ts r c1 2 7 . 0 . 0 . 1 / 8 a c ll o c a l n e ts r c1 7 2 . 1 6 . 1 0 0 . 0 / 2 8 A continuacin se procede a aplicar la regla de control de acceso: h t t p _ a c c e s sa l l o wl o c a l n e t Habiendo hecho lo anterior, la zona de reglas de control de acceso debera quedar de modo similar al siguiente: Reglas de control de acceso: Acceso a una Lista de Control de Acceso. # #I N S E R TY O U RO W NR U L E ( S )H E R ET OA L L O WA C C E S SF R O MY O U RC L I E N T S # h t t p _ a c c e s sa l l o wl o c a l h o s t h t t p _ a c c e s sa l l o wl o c a l n e t h t t p _ a c c e s sd e n ya l l La regla http_access allow localnet permite el acceso a Squid a la Lista de Control de Acceso denominada localnet, la cual, en el siguiente ejemplo, est conformada por 172.16.100.0/28. Esto significa que cualquier anfitrin desde 172.16.100.1 hasta 172.16.100.14 podr acceder a Squid.
Caso 2.
Si slo se desea permitir el acceso a Squid a ciertas direcciones IP de la red local, deberemos crear un archivo que contenga dicha lista. Genere el archivo /etc/squid/listas/localnet, dentro del cual se incluirn slo aquellas direcciones IP que desea confirmen la Lista de Control de acceso. Ejemplo:
http://www.alcancelibre.org/staticpages/index.php/19-0-como-squid-general
4/8
22/2/2014
1 7 2 . 1 6 . 1 0 0 . 1 1 7 2 . 1 6 . 1 0 0 . 2 1 7 2 . 1 6 . 1 0 0 . 3 1 7 2 . 1 6 . 1 0 0 . 4 1 7 2 . 1 6 . 1 0 0 . 5 1 7 2 . 1 6 . 1 0 0 . 6 1 7 2 . 1 6 . 1 0 0 . 7 Denominaremos a esta lista de control de acceso como localnet: a c ll o c a l n e ts r c" / e t c / s q u i d / l i s t a s / l o c a l n e t " Habiendo hecho lo anterior, la seccin de listas de control de acceso debe quedar ms o menos del siguiente modo: Listas de Control de Acceso: definicin de una red local completa # #R e c o m m e n d e dm i n i m u mc o n f i g u r a t i o n : a c la l ls r c0 . 0 . 0 . 0 / 0 a c lm a n a g e rp r o t oc a c h e _ o b j e c t a c ll o c a l h o s ts r c1 2 7 . 0 . 0 . 1 / 2 5 5 . 2 5 5 . 2 5 5 . 2 5 5 a c ll o c a l n e ts r c" / e t c / s q u i d / l i s t a s / l o c a l n e t " A continuacin se procede a aplicar la regla de control de acceso: h t t p _ a c c e s sa l l o wl o c a l n e t Habiendo hecho lo anterior, la zona de reglas de control de acceso debera quedar de modo similar al siguiente: Reglas de control de acceso: Acceso a una Lista de Control de Acceso. # #I N S E R TY O U RO W NR U L E ( S )H E R ET OA L L O WA C C E S SF R O MY O U RC L I E N T S # h t t p _ a c c e s sa l l o wl o c a l h o s t h t t p _ a c c e s sa l l o wl o c a l n e t h t t p _ a c c e s sd e n ya l l La regla http_access allow localnet permite el acceso a Squid a la Lista de Control de Acceso denominada localnet, la cual est conformada por las direcciones IP especificadas en el archivo /etc/squid/listas/localnet. Esto significa que cualquier anfitrin excluido del archivo /etc/squid/listas/localnet se le denegar el acceso a Squid.
Opcin cache_mgr.
Esta opcin es de carcter informativo. De modo predeterminado, si algo ocurre con el cach, como por ejemplo que muera el procesos, se enviar un mensaje de aviso a la cuenta webmaster del servidor. Puede especificarse una distinta si acaso se considera conveniente. c a c h e _ m g rj o s e p e r e z @ m i d o m i n i o . n e t
Opcin http_port.
Esta opcin es utilizado para indicar el puerto a travs del cual escuchar peticiones Squid. EL valor predeterminado es 3128, es deicr, Squid escuchar peticiones a travs del puerto 3128/tcp. h t t p _ p o r t3 1 2 8 El puerto estndar designado para servidores de cach de Internet (webcache) es el puerto 8080. h t t p _ p o r t8 0 8 0 La opcin permite establecer tambin si se quiere utilizar una direccin IP en particular. Esto aade mayor seguridad al servicio, pues si se tiene dos tarjetas de red, una con una direccin IP pblica y otra con una direccin IP privada, se puede establecer que Squid slo permita conexiones desde la direccin IP privada. h t t p _ p o r t1 9 2 . 1 6 8 . 8 0 . 1 : 8 0 8 0 Si se necesita configurar un servidor proxy en modo transparente, slo es necesario aadir la opcin intercept, misma que desde la versin 3.1 de Squid reemplaza a la opcin transparent. h t t p _ p o r t1 9 2 . 1 6 8 . 8 0 . 1 : 8 0 8 0i n t e r c e p t
Nota.
Para configurar un servidor proxy en modo transparente en CentOS 5 y Red Hat EnterpriseLinux 5 y versiones anteriores, utilice la opcin transparent : h t t p _ p o r t1 9 2 . 1 6 8 . 8 0 . 1 : 8 0 8 0t r a n s p a r e n t
Opcin cache_dir.
Esta opcin se utiliza para establecer que tamao se desea que utilice Squid para almacenamiento de cach en el disco duro.
http://www.alcancelibre.org/staticpages/index.php/19-0-como-squid-general
5/8
22/2/2014
Opcin maximum_object_size.
Esta opcin se utiliza para definir el tamao mximo de los objetos en el cach. Se recomienda establecerla en escenarios con alta carga de trabajo, puesto que permite evitar desperdiciar recursos de sistema almacenando en el cach objetos de gran tamao que probablemente slo sean aprovechados por unos pocos usuarios, optimizando el uso del cach con objetos pequeos que de otro modo generaran una gran cantidad de peticiones hacia las redes pblicas. En el siguiente ejemplo se establece un lmite de 48 MB para los objetos del cach. m a x i m u m _ o b j e c t _ s i z e4 8M B
Opcin cache_replacement_policy.
A travs de esta opcin se incluye soporte para los siguientes algoritmos para el cach: LRU Acrnimo de Least Recently Used, que traduce como Menos Recientemente Utilizado. En este algoritmo los objetos que fueron accedidos hace mucho tiempo, son eliminados primero y manteniendo siempre en el cach a los objetos ms recientemente solicitados. sta poltica es la utilizada por Squid de modo predeterminado. LFUDA Acrnimo de Least Frequently Used with Dynamic Aging, que se traduce como Menos Frecuentemente Utilizado con Envejecimiento Dinmico. En este algoritmo los objetos ms solicitados permanecen en el cach sin importar su tamao optimizando la eficiencia (hit rate) por octetos (Bytes) a expensas de la eficiencia misma, de modo que un objeto grande que se solicite con mayor frecuencia impedir que se pueda hacer cach de objetos pequeos que se soliciten con menor frecuencia. GDSF Acrnimo de Greedy Dual Size Frequency, que se traduce como Frecuencia de tamao GreedyDual (codicioso dual), que es el algoritmo sobre el cual se basa GDSF. Optimiza la eficiencia (hit rate) por objeto manteniendo en el cach los objetos pequeos ms frecuentemente solicitados de modo que hay mejores posibilidades de lograr respuesta a una solicitud (hit). Tiene una eficiencia por octetos (Bytes) menor que el algoritmo LFUDA debido a que descarta del cach objetos grandes que sean solicitado con frecuencia. El algoritmo recomendado y que ha demostrado mejor desempeo en escenarios de alta carga de trabajo es LFUDA. c a c h e _ r e p l a c e m e n t _ p o l i c yh e a pL F U D A
Opcin cache_mem.
La opcin cache_mem establece la cantidad ideal de memoria para lo siguiente: Objetos en trnsito. Objetos frecuentemente utilizados (Hot). Objetos negativamente almacenados en el cach. Los datos de estos objetos se almacenan en bloques de 4 Kb. La opcin cache_mem especifica un lmite mximo en el
http://www.alcancelibre.org/staticpages/index.php/19-0-como-squid-general
6/8
22/2/2014
Nota.
En CentOS 5 y Red Hat EnterpriseLinux 5 y versiones anteriores, el valor predeterminado de cache_m em son 8 MB, por lo cual puede incrementar este valor hasta donde se considere pertinente. c a c h e _ m e m3 2M B
Depuracin de errores
Cualquier error al inicio de Squid slo significa que hubo errores de sintaxis, errores de dedo o bien se estn citando incorrectamente las rutas hacia los archivos de las Listas de Control de Acceso. Puede realizar diagnstico de problemas indicndole a Squid que vuelva a leer configuracin, lo cual devolver los errores que existan en el archivo /etc/squid/squid.conf. s e r v i c es q u i dr e l o a d Cuando se trata de errores graves que impiden iniciar el servicio, puede examinarse el contenido del archivo /var/log/squid/squid.out con el mandato less, more o cualquier otro visor de texto: t a i l8 0/ v a r / l o g / s q u i d / s q u i d . o u t
http://www.alcancelibre.org/staticpages/index.php/19-0-como-squid-general
7/8
22/2/2014
! 2 0 1 . 1 4 4 . 1 0 8 . 0 / 2 4 , 2 0 0 . 3 3 . 7 4 . 0 / 2 4
Derechos de autor 2014 Joel Barrios Dueas Todas las marcas y logotipos mencionados en este sitio de Internet son propiedad de sus respectivos dueos.. 1999-2014 Joel Barrios Dueas. Salvo que se indique lo contrario, todo el contenido est disponible bajo los trminos de la licencia Creativ e Commons Reconocimiento 2.5 . Visite nuestro Directorio de noticias y Delti.com.mx .
http://www.alcancelibre.org/staticpages/index.php/19-0-como-squid-general
8/8