manuales:servidor_squid
Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| manuales:servidor_squid [2011/04/15 18:24] – cayu | manuales:servidor_squid [2012/04/16 15:39] (actual) – [Permisos] cayu | ||
|---|---|---|---|
| Línea 70: | Línea 70: | ||
| === Comandos === | === Comandos === | ||
| - | ^^ Comando ^ Descripción | + | ^ Comando ^ Descripción ^ |
| |GET|Solicita el recurso ubicado en la URL especificada| | |GET|Solicita el recurso ubicado en la URL especificada| | ||
| |HEAD|Solicita el encabezado del recurso ubicado en la URL especificada| | |HEAD|Solicita el encabezado del recurso ubicado en la URL especificada| | ||
| Línea 79: | Línea 79: | ||
| === Encabezados === | === Encabezados === | ||
| - | ^^ Nombre del encabezado ^ Descripción | + | ^ Nombre del encabezado ^ Descripción ^ |
| |Accept|Tipo de contenido aceptado por el navegador| | |Accept|Tipo de contenido aceptado por el navegador| | ||
| |Accept-Charset|Juego de caracteres que el navegador espera| | |Accept-Charset|Juego de caracteres que el navegador espera| | ||
| Línea 109: | Línea 109: | ||
| === Códigos de respuesta === | === Códigos de respuesta === | ||
| - | ^^ Código ^ Mensaje ^ Descripción | + | ^ Código ^ Mensaje ^ Descripción ^ |
| |200|OK|La solicitud se llevó a cabo de manera correcta| | |200|OK|La solicitud se llevó a cabo de manera correcta| | ||
| |201|CREATED|Sigue a un comando POST e indica el éxito, la parte restante del cuerpo indica la dirección URL donde se ubicará el documento creado recientemente| | |201|CREATED|Sigue a un comando POST e indica el éxito, la parte restante del cuerpo indica la dirección URL donde se ubicará el documento creado recientemente| | ||
| Línea 482: | Línea 482: | ||
| * **cachemgr.conf** - Es el archivo de configuración principal del **Cache manager** | * **cachemgr.conf** - Es el archivo de configuración principal del **Cache manager** | ||
| + | |||
| + | == Archivos de LOG == | ||
| + | |||
| + | * **/ | ||
| + | * En este archivo se registran todos los pedidos HTTP, siendo sus campos : | ||
| + | * timestamp de la recepción de la petición | ||
| + | * Tiempo transcurrido entre la petición y la recepción | ||
| + | * Dirección IP del cliente | ||
| + | * Código de resultado HTTP | ||
| + | * Cantidad de bytes entregados al cliente | ||
| + | * Método HTTP utilizado - GET, POST, CONNECT | ||
| + | * URL solicitada | ||
| + | * Si hay autenticación, | ||
| + | * Desde donde se resolvió la petición, DIRECT o desde un PARENT proxy | ||
| + | * Tipo de contenido mime | ||
| + | * **/ | ||
| + | * Mensajes informativos o de error sobre el cache interno de Squid | ||
| + | * **/ | ||
| + | * Información de los objetos que pasaron por el cache | ||
| + | * **/ | ||
| + | * Información general del proceso squidGuard | ||
| + | * **/ | ||
| + | * Información del filtrado de reglas de squidGuard | ||
| ===== Controles de acceso ===== | ===== Controles de acceso ===== | ||
| Línea 540: | Línea 563: | ||
| ==== Autenticacion ==== | ==== Autenticacion ==== | ||
| + | Squid puede utilizar diferentes métodos de validación de usuarios, los mismo pueden ser independientes de Squid y se llamados por un helper. | ||
| + | |||
| + | |||
| + | |||
| + | Básicamente el helper nos devolvera **OK** ó **ERR** en base a la información que le hayamos proporcionado | ||
| + | |||
| + | === LDAP === | ||
| + | |||
| + | Ejemplo de configuración para un LDAP común | ||
| + | < | ||
| + | auth_param basic program / | ||
| + | |||
| + | auth_param basic children 5 | ||
| + | auth_param basic realm Web-Proxy | ||
| + | auth_param basic credentialsttl 1 minute | ||
| + | |||
| + | acl ldap-auth proxy_auth REQUIRED | ||
| + | |||
| + | http_access allow ldap-auth | ||
| + | http_access allow localhost | ||
| + | http_access deny all | ||
| + | </ | ||
| + | |||
| + | === ActiveDirectory W2003 - LDAP === | ||
| + | |||
| + | < | ||
| + | auth_param basic program / | ||
| + | </ | ||
| ==== Permisos ==== | ==== Permisos ==== | ||
| Línea 683: | Línea 734: | ||
| delay_access 1 allow all ancho_de_banda | delay_access 1 allow all ancho_de_banda | ||
| </ | </ | ||
| + | |||
| + | **Clases de Delay Pools** | ||
| + | |||
| + | * Clase 1 : Limita el ancho de banda total para todos los que sean afectados por el delay pool | ||
| + | * Clase 2 : Limita el ancho de banda total y por cada usuario | ||
| + | * Clase 3 : Limita en total, por usuario y por red | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| Línea 1179: | Línea 1245: | ||
| Listado de sitios prohibidos organizados por categorias. A continuacion describimos cada unas de las mismas: | Listado de sitios prohibidos organizados por categorias. A continuacion describimos cada unas de las mismas: | ||
| - | ^^Categoria^Descripcion^^ | + | ^Categoria^Descripcion^ |
| |ads | |ads | ||
| |adult | |adult | ||
| Línea 1254: | Línea 1320: | ||
| === Referencias === | === Referencias === | ||
| - | ^^URL^Descripción^^ | + | ^URL^Descripción^ |
| |http:// | |http:// | ||
| |http:// | |http:// | ||
| Línea 1260: | Línea 1326: | ||
| |http:// | |http:// | ||
| - | ===== Referencias | + | ===== Balanceo de Carga y Alta Disponibilidad |
| - | http://es.kioskea.net/contents/internet/http.php3 | + | ==== LVS (Linux Virtual Server) + Heartbeat ==== |
| - | http://www.cibernetia.com/manuales/introduccion_aplicaciones_web/2_1_fundamentos_web.php | + | |
| - | http://es.wikipedia.org/wiki/Squid_(programa) | + | ==== Red Hat Cluster Suite ==== |
| + | |||
| + | Supongamos que tenemos dos servidores proxy 10.1.2.103 y 10.1.2.105 y ambos atienden por una ip virtual 10.1.2.106 | ||
| + | |||
| + | === LVS === | ||
| + | |||
| + | Configuracion de la utilidad IPVS de Linux Virtual Server | ||
| + | |||
| + | |||
| + | == / | ||
| + | |||
| + | |||
| + | < | ||
| + | -A -t 10.1.2.106:8080 -s wlc | ||
| + | -a -t 10.1.2.106: | ||
| + | -a -t 10.1.2.106: | ||
| + | </code> | ||
| + | |||
| + | |||
| + | == ipvsadm -L == | ||
| + | |||
| + | < | ||
| + | IP Virtual Server version 1.2.1 (size=4096) | ||
| + | Prot LocalAddress: | ||
| + | -> RemoteAddress: | ||
| + | TCP lvs-proxy.cayu.com.ar: | ||
| + | -> proxy2.cayu.com.ar: | ||
| + | -> proxy1.cayu.com.ar: | ||
| + | </code> | ||
| + | |||
| + | El sistema balancea por medio del algoritmo wlc. | ||
| + | |||
| + | === Piranha === | ||
| + | |||
| + | Piranha | ||
| + | |||
| + | La herramienta de monitoreo de piranha tiene dos caracteristicas principales : | ||
| + | |||
| + | |||
| + | * Soporte integrado de Heartbeat. | ||
| + | * Chequeo de disponibilidad de servicios en los servidores. | ||
| + | |||
| + | |||
| + | La herramienta de monitoreo de piranha usa el proceso heartbeat por medio de mensajes UDP entre los nodos balanceados y un servicio que se encarga de monitorear que ciertos procesos esten corriendo. | ||
| + | |||
| + | Configuracion de Piranha en el servidor primario | ||
| + | |||
| + | == /etc/sysconfig/ha/lvs.cf == | ||
| + | |||
| + | |||
| + | <code java> | ||
| + | serial_no = 69 | ||
| + | primary = 10.1.2.103 | ||
| + | service = lvs | ||
| + | backup_active = 1 | ||
| + | backup = 10.1.2.105 | ||
| + | heartbeat = 1 | ||
| + | heartbeat_port = 539 | ||
| + | keepalive = 4 | ||
| + | deadtime = 18 | ||
| + | network = direct | ||
| + | debug_level = NONE | ||
| + | monitor_links = 0 | ||
| + | virtual proxy { | ||
| + | | ||
| + | | ||
| + | | ||
| + | port = 8080 | ||
| + | pmask = 255.255.255.0 | ||
| + | send = "GET cache_object://localhost/ | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | } | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | } | ||
| + | } | ||
| + | </code> | ||
| + | |||
| + | Configuracion de Piranha en el servidor secundario | ||
| + | |||
| + | == /etc/sysconfig/ | ||
| + | |||
| + | |||
| + | <code java> | ||
| + | serial_no = 55 | ||
| + | primary = 10.1.2.103 | ||
| + | service = lvs | ||
| + | backup_active = 1 | ||
| + | backup = 10.1.2.105 | ||
| + | heartbeat = 1 | ||
| + | heartbeat_port = 539 | ||
| + | keepalive = 4 | ||
| + | deadtime = 18 | ||
| + | network = direct | ||
| + | debug_level = NONE | ||
| + | monitor_links = 0 | ||
| + | virtual proxy { | ||
| + | | ||
| + | | ||
| + | | ||
| + | port = 8080 | ||
| + | pmask = 255.255.255.0 | ||
| + | send = "GET cache_object://localhost/ | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | } | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | } | ||
| + | } | ||
| + | </code> | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | Se agrego la configuracion para la interface virtual lo:0 /etc/ | ||
| + | < | ||
| + | DEVICE=lo: | ||
| + | IPADDR=10.1.2.106 | ||
| + | NETMASK=255.255.255.255 | ||
| + | # | ||
| + | # If you're having problems with gated making 127.0.0.0/8 a martian, | ||
| + | # you can change this to something else (255.255.255.255, | ||
| + | # | ||
| + | ONBOOT=yes | ||
| + | NAME=lvsIP | ||
| + | </ | ||
| + | |||
| + | |||
| + | |||
| + | ===== Errores comúnes ===== | ||
| + | |||
| + | Si nuestro Squid no responde y encontramos mensaje como este en nuestro // | ||
| + | |||
| + | < | ||
| + | 2011/05/31 02:13:19| WARNING! Your cache is running out of filedescriptors | ||
| + | </ | ||
| + | |||
| + | Dentro de nuestro archivo **/ | ||
| + | |||
| + | < | ||
| + | * - nofile 8192 | ||
| + | </ | ||
| + | |||
| + | |||
| + | Y en nuestro **squid.conf** | ||
| + | |||
| + | < | ||
| + | max_filedesc 8192 | ||
| + | </ | ||
| + | |||
| + | Otras opciones de configuración de Squid que nos pueden ayudar con cierto manejo de sockets o recursos son: | ||
| + | |||
| + | < | ||
| + | pconn_timeout 30 seconds | ||
| + | server_persistent_connections off | ||
| + | </ | ||
| + | |||
| + | ===== Referencias ===== | ||
| + | http:// | ||
| + | http:// | ||
| + | http:// | ||
| + | http:// | ||
| http:// | http:// | ||
| --- // | --- // | ||
manuales/servidor_squid.1302891887.txt.gz · Última modificación: 2011/04/15 18:24 por cayu
