Herramientas de usuario

Herramientas del sitio


manuales:servidor_squid

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
manuales:servidor_squid [2011/04/15 17:29] cayumanuales: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 ==
 +
 +  * **/var/log/squid/access.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, usuario que realizo la petición
 +    * Desde donde se resolvió la petición, DIRECT o desde un PARENT proxy
 +    * Tipo de contenido mime
 +  * **/var/log/squid/cache.log**
 +    * Mensajes informativos o de error sobre el cache interno de Squid
 +  * **/var/log/squid/store.log**
 +    * Información de los objetos que pasaron por el cache
 +  * **/var/log/squid/squidGuard.log**
 +    * Información general del proceso squidGuard
 +  * **/var/log/squid/squidguard.log**
 +    * 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
 +<code>
 +auth_param basic program /usr/lib/squid/squid_ldap_auth -v 3 -b "dc=yourcompany,dc=com" -D uid=some-user,ou=People,dc=yourcompany,dc=com  -w password -f uid=%s ldap.yourcompany.com
 +
 +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
 +</code>
 +
 +=== ActiveDirectory W2003 - LDAP ===
 +
 +<code>
 +auth_param basic program /usr/lib/squid/squid_ldap_auth -v 3 -b ou="something",ou=something,dc=svbmt,dc=net -D cn=LDAPUSER,ou="Generic User Accounts",ou=something",dc=svbmt,dc=net -w password -f sAMAccountName=%s -h ldap.yourcompany.com
 +</code>
  
 ==== Permisos ==== ==== Permisos ====
Línea 684: Línea 735:
 </code> </code>
  
 +**Clases de Delay Pools**
  
-===== Referencias =====+  * 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
  
-http://es.kioskea.net/contents/internet/http.php3 
-http://www.cibernetia.com/manuales/introduccion_aplicaciones_web/2_1_fundamentos_web.php 
-http://es.wikipedia.org/wiki/Squid_(programa) 
  
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +=== Filtrado ===
 +
 +Dentro del archivo **/etc/squid/squid.conf** deberemos incluir lo siguiente :
 +
 +<code>
 +redirect_program /usr/bin/squidGuard -c /etc/squid/squidguard.conf
 +redirect_children 6
 +</code>
 +
 +
 +== Configuración de SquidGuard ==
 +
 +**/etc/squid/squidguard.conf**
 +<code>
 +dbhome /var/lib/squidguard/db
 +logdir /var/log/squid
 +
 +destination bl_homerepair {
 + urllist blacklists/homerepair/urls
 + domainlist blacklists/homerepair/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_gardening {
 + urllist blacklists/gardening/urls
 + domainlist blacklists/gardening/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_culinary {
 + domainlist blacklists/culinary/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_porn {
 + urllist blacklists/porn/urls
 + domainlist blacklists/porn/domains
 + expressionlist blacklists/porn/expressions
 + logfile squidguard.log
 +}
 +
 +destination bl_ringtones {
 + domainlist blacklists/ringtones/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_whitelist {
 + urllist blacklists/whitelist/urls
 + domainlist blacklists/whitelist/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_weapons {
 + urllist blacklists/weapons/urls
 + domainlist blacklists/weapons/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_kidstimewasting {
 + urllist blacklists/kidstimewasting/urls
 + domainlist blacklists/kidstimewasting/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_spyware {
 + domainlist blacklists/spyware/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_audio-video {
 + urllist blacklists/audio-video/urls
 + domainlist blacklists/audio-video/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_webmail {
 + urllist blacklists/webmail/urls
 + domainlist blacklists/webmail/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_financial {
 + domainlist blacklists/financial/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_weather {
 + urllist blacklists/weather/urls
 + domainlist blacklists/weather/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_childcare {
 + urllist blacklists/childcare/urls
 + domainlist blacklists/childcare/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_virusinfected {
 + urllist blacklists/virusinfected/urls
 + domainlist blacklists/virusinfected/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_chat {
 + urllist blacklists/chat/urls
 + domainlist blacklists/chat/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_desktopsillies {
 + urllist blacklists/desktopsillies/urls
 + domainlist blacklists/desktopsillies/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_searchengines {
 + domainlist blacklists/searchengines/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_naturism {
 + urllist blacklists/naturism/urls
 + domainlist blacklists/naturism/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_aggressive {
 + urllist blacklists/aggressive/urls
 + domainlist blacklists/aggressive/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_clothing {
 + domainlist blacklists/clothing/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_ecommerce {
 + urllist blacklists/ecommerce/urls
 + domainlist blacklists/ecommerce/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_marketingware {
 + domainlist blacklists/marketingware/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_astrology {
 + domainlist blacklists/astrology/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_jobsearch {
 + urllist blacklists/jobsearch/urls
 + domainlist blacklists/jobsearch/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_gambling {
 + urllist blacklists/gambling/urls
 + domainlist blacklists/gambling/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_updatesites {
 + urllist blacklists/updatesites/urls
 + domainlist blacklists/updatesites/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_ads {
 + urllist blacklists/ads/urls
 + domainlist blacklists/ads/domains
 + expressionlist blacklists/ads/expressions
 + logfile squidguard.log
 +}
 +
 +destination bl_entertainment {
 + urllist blacklists/entertainment/urls
 + domainlist blacklists/entertainment/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_cleaning {
 + domainlist blacklists/cleaning/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_artnudes {
 + urllist blacklists/artnudes/urls
 + domainlist blacklists/artnudes/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_vacation {
 + urllist blacklists/vacation/urls
 + domainlist blacklists/vacation/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_sports {
 + urllist blacklists/sports/urls
 + domainlist blacklists/sports/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_blog {
 + urllist blacklists/blog/urls
 + domainlist blacklists/blog/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_religion {
 + urllist blacklists/religion/urls
 + domainlist blacklists/religion/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_mixed_adult {
 + domainlist blacklists/mixed_adult/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_frencheducation {
 + urllist blacklists/frencheducation/urls
 + domainlist blacklists/frencheducation/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_pets {
 + urllist blacklists/pets/urls
 + domainlist blacklists/pets/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_mobile-phone {
 + domainlist blacklists/mobile-phone/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_mail {
 + urllist blacklists/mail/urls
 + domainlist blacklists/mail/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_dating {
 + urllist blacklists/dating/urls
 + domainlist blacklists/dating/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_guns {
 + urllist blacklists/guns/urls
 + domainlist blacklists/guns/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_verisign {
 + domainlist blacklists/verisign/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_cellphones {
 + domainlist blacklists/cellphones/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_beerliquorinfo {
 + domainlist blacklists/beerliquorinfo/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_onlinepayment {
 + domainlist blacklists/onlinepayment/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_government {
 + urllist blacklists/government/urls
 + domainlist blacklists/government/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_drugs {
 + urllist blacklists/drugs/urls
 + domainlist blacklists/drugs/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_beerliquorsale {
 + domainlist blacklists/beerliquorsale/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_hygiene {
 + domainlist blacklists/hygiene/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_onlineauctions {
 + urllist blacklists/onlineauctions/urls
 + domainlist blacklists/onlineauctions/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_warez {
 + urllist blacklists/warez/urls
 + domainlist blacklists/warez/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_dialers {
 + urllist blacklists/dialers/urls
 + domainlist blacklists/dialers/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_antispyware {
 + urllist blacklists/antispyware/urls
 + domainlist blacklists/antispyware/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_adult {
 + urllist blacklists/adult/urls
 + domainlist blacklists/adult/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_instantmessaging {
 + urllist blacklists/instantmessaging/urls
 + domainlist blacklists/instantmessaging/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_news {
 + urllist blacklists/news/urls
 + domainlist blacklists/news/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_socialnetworking {
 + urllist blacklists/socialnetworking/urls
 + domainlist blacklists/socialnetworking/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_jewelry {
 + domainlist blacklists/jewelry/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_filehosting {
 + domainlist blacklists/filehosting/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_reaffected {
 + domainlist blacklists/reaffected/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_phishing {
 + urllist blacklists/phishing/urls
 + domainlist blacklists/phishing/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_medical {
 + urllist blacklists/medical/urls
 + domainlist blacklists/medical/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_violence {
 + urllist blacklists/violence/urls
 + domainlist blacklists/violence/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_personalfinance {
 + urllist blacklists/personalfinance/urls
 + domainlist blacklists/personalfinance/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_sportnews {
 + urllist blacklists/sportnews/urls
 + domainlist blacklists/sportnews/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_banking {
 + urllist blacklists/banking/urls
 + domainlist blacklists/banking/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_sexuality {
 + urllist blacklists/sexuality/urls
 + domainlist blacklists/sexuality/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_games {
 + urllist blacklists/games/urls
 + domainlist blacklists/games/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_sect {
 + domainlist blacklists/sect/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_onlinegames {
 + urllist blacklists/onlinegames/urls
 + domainlist blacklists/onlinegames/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_hacking {
 + urllist blacklists/hacking/urls
 + domainlist blacklists/hacking/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_shopping {
 + domainlist blacklists/shopping/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_radio {
 + urllist blacklists/radio/urls
 + domainlist blacklists/radio/domains
 + logfile squidguard.log
 +}
 +
 +destination bl_proxy {
 + urllist blacklists/proxy/urls
 + domainlist blacklists/proxy/domains
 + logfile squidguard.log
 +}
 +
 +
 +
 +destination excepciones {
 + expressionlist excepciones.destexprlist
 + urllist excepciones.desturllist
 + domainlist excepciones.destdomainlist
 + logfile squidguard.log
 +}
 +
 +destination Restricciones_a_mano {
 + urllist Restricciones_a_mano.desturllist
 + domainlist Restricciones_a_mano.destdomainlist
 + expressionlist Restricciones_a_mano.destexprlist
 + logfile squidguard.log
 +}
 +
 +src admin {
 +    ip
 +}
 +     
 +
 +acl {
 + default {
 + pass excepciones !denegados_a_mano !bl_audio-video !bl_proxy !bl_warez !bl_porn !bl_filehosting !bl_adult
 + redirect http://localhost/Accesodenegado.php?url=%u
 + }
 +}
 +</code>
 +
 +En el apartado **redirect** indicamos al squidGuard que nos muestre un contenido especial cuando intentamos acceder a ubicaciones filtradas. Cuando vemos **%u** nos referimos a la variable de url, y podemos obtenerla por medio de los datos GET
 +
 +Otras variables que podemos exportar por GET son :
 +  * **%a** La dirección IP del cliente
 +  * **%i** El nombre de usuario del cliente
 +  * **%n** Dominio al que se intento acceder
 +  * **%p** Variable that holds the REQUEST_URI, i.e. the path and the optional query string of %u, but note for convenience without the leading "/".
 +  * **%s** Variable that holds the matched source group (client group) or "unknown" if no groups were matched.
 +  * **%t** Variable that holds the matched destination group (target group) or "unknown" if no groups were matched.
 +  * **%u** Variable that holds the requested URL.
 +
 +
 +
 +== Blacklist ==
 +
 +
 +Listado de sitios prohibidos organizados por categorias. A continuacion describimos cada unas de las mismas:
 +
 +^Categoria^Descripcion^
 +|ads                 |Servidores de Publicidad|
 +|adult               |Sitios que contienen material adulto|
 +|aggressive          |Sitios que promueven la violencia|
 +|antispyware         |Sitios que remueven Spyware|
 +|artnudes            |Sitios de arte que contienen desnudos aritsticos|
 +|astrology           |Sitios de Astrologia|
 +|audio-video         |Sitios de descarga de videos o audio|
 +|banking             |Sitios de Banca en linea|
 +|beerliquorinfo      |Sitios con informacion relacionada con Cervezas o Licores|
 +|beerliquorsale      |Sitios de Compra de Cervezas o licores|
 +|Blog              |Sitios de bítacoras|
 +|cellphones      |Material para Telefonos Celulares|
 +|chat              |Sitios con salas de chat|
 +|childcare      |Sitios relacionados con el Cuidado de niños|
 +|cleaning      |Sitios relacionados con limpieza|
 +|clothing      |Sitios relacionados con la venta de indumentaria|
 +|culnary      |Sitios relacionados con la cocina|
 +|dating              |Sitios relacionados con citas en linea|
 +|desktopsillies      |Sitios que contienen salvapantallas, backgrounds, cursores, punteros, temas de escritorio y material peligroso|
 +|dialers      |Sitios con marcadores automaticos como los utilizados por Troyanos o sitios pornograficos|
 +|drugs              |Sitios Reladionados Con Drogas|
 +|ecommerce      |Sitios que proveen compras en linea|
 +|entertainment      |Sitios que promocionan peliculas, libros, revistas, humor|
 +|filehosting      |Sitios para hostear archivos|
 +|frencheducation     |Sitios relacionados con educacion francesa|
 +|gambling      |Sitios de Apuestas|
 +|games              |Sitios relacionados a los juegos|
 +|gardening      |Sitios de Jardineria|
 +|government          |Sitios Gubernamentales|  
 +|guns              |Sitios relacionados con armas|
 +|hacking      |Sitios con información sobre Hacking/cracking| 
 +|homerepair      |Sitios sobre reparaciones hogareñas|
 +|hygiene      |Sitios sobre higiene y material relacionado al aseo personal|
 +|instantmessaging    |Sitios que contienen descargas de clientes de mensajeria y mensajeria basada en la web|
 +|jewelry      |Sitios relacionados con la joyeria y venta de la misma|
 +|jobsearch      |Sitios de busqueda de empleo|
 +|kidstimewasting     |Sitios donde los niños suelen perder el tiempo|
 +|mail              |Sitios de Webmail / email| 
 +|marketingware      |Sitios sobre productos de Marketing|
 +|medical      |Sitios web medicos|
 +|mixed_adult      |Sitios con material adulto mezclado|
 +|naturism      |Sitios que contienen fotos de desnudos y/o promueven el nudismo|
 +|news              |Sitios de Noticias|
 +|onlineauctions      |Sitios de Acciones en linea|
 +|onlinegames      |Sitios de Juegos en linea|
 +|onlinepayment      |Sitios de pago online|
 +|personalfinance     |Sitios de Finanzas Personales|
 +|pets              |Sitios sobre mascotas|
 +|phishing      |Sitios que intentan engañar a la gente para que ingrese información privada.|
 +|porn              |Pornografía|
 +|proxy              |Sitios con proxies para saltearse filtros|
 +|radio              |Sitios relacionados a la radio y television que no tienen relacion con noticias|
 +|religion      |Sitios que promueven la religion|
 +|ringtones      |Sitios que contienen ring tones, juegos, dibujos y otros|
 +|searchengines      |Motores de Busqueda, como Google|
 +|sect              |Sitios sobre grupos religiosos|
 +|sexuality      |Sitios dedicados a la sexualidad, que probablemente incluyen material adulto|
 +|shopping      |Sitios de Compras|
 +|socialnetworking    |Sitios de Redes Sociales|
 +|sportnews      |Sitios de noticias deportivas|
 +|sports              |Sitios sobre deportes (todos)|
 +|spyware      |Sitios que corren o tienen software espia para descargar|
 +|updatesites      |Sitios donde hay actualizaciones de software para descargar que podrian contener virus|
 +|vacation      |Sitios sobre vacacionar|
 +|violence      |Sitios que contienen violencia|
 +|virusinfected      |Sitios que contienen archivos infectados con virus|
 +|warez              |Sitios que contienen software pirateado|
 +|weather      |Sitios de noticias del Clima y relacionados con el Clima|
 +|weapons      |Sitios que detallan o venden armas|
 +|webmail      |Sitios de Webmail|
 +|whitelist      |Contienen Sitios 100% adecuados para niños|
 +
 +=== Referencias ===
 +
 +^URL^Descripción^
 +|http://urlblacklist.com|Sitio con las blacklists|
 +|http://www.squid-cache.org|Pagina del proyecto Squid|
 +|http://www.squidguard.org|Pagina de SquidGuard|
 +|http://dansguardian.org/|DansGuardian|
 +
 +===== Balanceo de Carga y Alta Disponibilidad =====
 +
 +==== LVS (Linux Virtual Server) + Heartbeat ====
 +
 +==== 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
 +
 +
 +== /etc/ipvsadm.rules ==
 +
 +
 +<code>
 +-A -t 10.1.2.106:8080 -s wlc
 +-a -t 10.1.2.106:8080 -r 10.1.2.105:8080 -g -w 1
 +-a -t 10.1.2.106:8080 -r 10.1.2.103:8080 -g -w 1
 +</code>
 +
 +
 +== ipvsadm -L ==
 +
 +<code>
 +IP Virtual Server version 1.2.1 (size=4096)
 +Prot LocalAddress:Port Scheduler Flags
 +  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
 +TCP  lvs-proxy.cayu.com.ar:       web wlc
 +  -> proxy2.cayu.com.ar:web Route            1      0          2         
 +  -> proxy1.cayu.com.ar:web Local            1      1          1         
 +</code>
 +
 +El sistema balancea por medio del algoritmo wlc.
 +
 +=== Piranha ===
 +
 +Piranha es un producto de clustering de Red Hat, incluye el demonio de control de LVS de Red Hat, y una herramienta de configuracion web del cluster.
 +
 +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 {
 +     active = 1
 +     address = 10.1.2.106 eth0:0
 +     vip_nmask = 255.255.255.0
 +     port = 8080
 +     pmask = 255.255.255.0
 +     send = "GET cache_object://localhost/info"
 +     use_regex = 0
 +     load_monitor = none
 +     scheduler = wlc
 +     protocol = tcp
 +     timeout = 6
 +     reentry = 15
 +     quiesce_server = 0
 +     server proxy1 {
 +         address = 10.1.2.103
 +         active = 1
 +         weight = 1
 +     }
 +     server proxy2 {
 +         address = 10.1.2.105
 +         active = 1
 +         weight = 1
 +     }
 +}
 +</code>
 +
 +Configuracion de Piranha en el servidor secundario
 +
 +== /etc/sysconfig/ha/lvs.cf ==
 + 
 +
 +<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 {
 +     active = 1
 +     address = 10.1.2.106 eth0:0
 +     vip_nmask = 255.255.255.0
 +     port = 8080
 +     pmask = 255.255.255.0
 +     send = "GET cache_object://localhost/info"
 +     use_regex = 0
 +     load_monitor = none
 +     scheduler = wlc
 +     protocol = tcp
 +     timeout = 2
 +     quiesce_server = 0 
 +     server proxy1 {
 +         address = 10.1.2.103
 +         active = 1
 +         weight = 1
 +     }
 +     server proxy2 {
 +         address = 10.1.2.105
 +         active = 1
 +         weight = 1
 +     }
 +}
 +</code>
 +
 +
 +
 +
 +Se agrego la configuracion para la interface virtual lo:0 /etc/sysconfig/network-scripts/ifcfg-lo:0
 +<code>
 +DEVICE=lo:0
 +IPADDR=10.1.2.106
 +NETMASK=255.255.255.255
 +#NETWORK=127.0.0.0
 +# 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, for example)
 +#BROADCAST=127.255.255.255
 +ONBOOT=yes
 +NAME=lvsIP
 +</code>
 +
 +
 +
 +===== Errores comúnes =====
 +
 +Si nuestro Squid no responde y encontramos mensaje como este en nuestro //cache.log//
 +
 +<code>
 +2011/05/31 02:13:19| WARNING! Your cache is running out of filedescriptors
 +</code>
 +
 +Dentro de nuestro archivo **/etc/security/limits.conf** deberemos incluir lo siguiente
 +
 +<code>
 +* - nofile 8192
 +</code>
 +
 +
 +Y en nuestro **squid.conf**
 +
 +<code>
 +max_filedesc 8192
 +</code>
 +
 +Otras opciones de configuración de Squid que nos pueden ayudar con cierto manejo de sockets o recursos son:
 +
 +<code>
 +pconn_timeout 30 seconds
 +server_persistent_connections off
 +</code>
 +
 +===== Referencias =====
 +
 +http://es.kioskea.net/contents/internet/http.php3 \\
 +http://www.cibernetia.com/manuales/introduccion_aplicaciones_web/2_1_fundamentos_web.php \\
 +http://wiki.squid-cache.org/SquidFaq/ConfiguringSquid \\
 +http://wiki.squid-cache.org/SquidFaq/SquidAcl \\
  
 http://cayu.com.ar http://cayu.com.ar
  --- //[[cayu@cayu.com.ar|Sergio Cayuqueo]] 2011/04/15 14:14//  --- //[[cayu@cayu.com.ar|Sergio Cayuqueo]] 2011/04/15 14:14//
  
manuales/servidor_squid.1302888596.txt.gz · Última modificación: 2011/04/15 17:29 por cayu