Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Cursosquid
Cursosquid
¿Qué es Squid?
● Es software libre.
● Muy configurable
● Rápido y eficaz.
Miguel Angel Nieto
miguelangel@irontec.com
Irontec: Curso avanzado de squid
Internet
Router
Proxy-cache Normal
Internet
Router
Proxy-cache Inverso
Servidor web
Miguel Angel Nieto
miguelangel@irontec.com
Irontec: Curso avanzado de squid
Internet
Router
Proxy-cache Transparente
● Filtro de contenidos
Bloquear el acceso a contenido por categorías.
● Firewall de seguridad
Es una aplicación de seguridad restrictiva, permitiendo la salida a equipos o
subredes y denegandolo a otras.
● Anónimo
Provee acceso web anónimo.
La biblia
Instalación
● --prefix=PREFIX
Donde queremos que se dejen los ficheros (por defecto
/usr/local/squid)
● --enable-ssl
Soporte para https.
● --enable-default-err-language=es
En que idioma queremos los mensajes de error.
● --enable-linux-netfilter
Habilita el uso de iptables para proxys transparente.
● --enable-storeio=aufs,coss,diskd,ufs
Habilitamos los distintos tipos de formas para almacenar los ficheros.
● --enable-basic-auth-helpers="LDAP"
Habilitamos la autenticación ldap.
Datos básicos
Pregunta
Respuesta
● IP's
● MAC's
● login/password
● Horarios
● Control de categorías
● Listas de acceso
● Y más...
Configuración básica
http_port 8080
access_log /var/log/squid/access.log
cache_log /var/log/squid/cache.log
cache_store_log /var/log/squid/store.log
acl all src 0.0.0.0/0.0.0.0
acl yo src 127.0.0.1/32
http_access allow yo
http_access deny all
Logs de squid
● access.log
Se guardan las peticiones que se le hacen al proxy.
1183393998.896 302 127.0.0.1 TCP_MISS/200 12953 GET http://packages.debian.org/stable/web/squid - DIRECT/87.106.4.56 text/html
● cache.log
Aquí se van guardando los mensajes relacionados con el sistema de
almacenamiento y cache.
2007/07/02 17:40:21| Local cache digest enabled; rebuild/rewrite every 3600/3600 sec
2007/07/02 17:40:21| Rebuilding storage in /var/cache/squid (CLEAN)
2007/07/02 17:40:21| Using Least Load store dir selection
2007/07/02 17:40:21| Set Current Directory to /var/cache/squid
● store.log
Se almacena información sobre los objetos almacenados. Dentro de los
campos mas importantes tenemos la segunda columna, llamada TAG, que
puede tener los siguientes valores:
ACL's
● Las listas de control de acceso nos permite definir distintos parámetros para
conceder o denegar accesos a nuestro proxy. En el anterior ejemplo donde
montabamos un proxy básico pudimos ver un primer ejemplo de una lista de
acceso:
acl todos src 0.0.0.0/0.0.0.0
● Su estructura es la siguiente:
acl nombre regla parámetros
● En el ejemplo, la acl se llama “all”, con la regla src (source) y como parámetro
una ip y su máscara de red.
● Otros ejemplos de acl:
acl comer time M T W H F 13:00-14:00
acl dest dst 192.168.2.1/32
acl mp3 urlpath_regex -i /.mp3$
acl navegador browser Explorer
acl debian url_regex debian
● Vamos a la biblia para ver todas.
ACL's
ACL's
Ejercicios ACL
Ejercicios ACL
Debbuging de ACL's
Control de usuarios
NCSA
Configuración NCSA
Características
Pregunta
Control de categorias
¿Qué necesitamos?
● http://squidguard.shalla.de/shallalist.html Dispone de
1.400.000 entradas.
Configuración de SquidGuard
dbhome /var/squid/db
logdir /var/log/squid/squidGuard.log
dest porn {
domainlist porn/domains
urllist porn/urls
log pornaccesses
}
acl {
default {
pass !porn all
redirect http://localhost/block.html
}
}
Ejercicio
Solución
dbhome /var/squid/db
logdir /var/log/squid
src yo {
ip 10.10.0.210
}
dest porno{
domainlist porn/domains
urllist porn/urls
log porno
}
dest drogas{
domainlist drugs/domains
urllist drugs/urls
log drogas
}
acl {
yo {
pass all
}
default {
pass !porno !drogas all
redirect http://www.disney.com
}
}
Pregunta
Respuesta
● Ancho de banda.
● Capacidad de procesamiento.
● Memoria RAM.
Sistema de ficheros
● Vamos a ver:
ufs,aufs,diskd,coss,null
● Por defecto squid trabaja con ufs. No es el que mejor
rendimiento nos puede dar. Miguel Angel Nieto
miguelangel@irontec.com
Irontec: Curso avanzado de squid
UFS
AUFS
DISKD
COSS
NULL
Ejercicio
Solución
Reiniciar squid
Configurar coss
Resumen
● LRU
– Los menos accedidos son los primeros en ser eliminados.
● LFUDA
– Los objetos mas solicitados permanecen en cache, sin
importar el tamaño.
– Un objeto grande impide que se cacheen muchos pequeños.
● GDSF
– Los objetos pequeños más solicitados permanecen en cache.
– Tiene menos eficiencia ya que descarga objetos grandes
aunque se utilicen amenudo.
Ejercicio
Solución
maximum_object_size 320010 KB
cache_replacement_policy heap LFUDA
memory_replacement_policy heap LFUDA
Ejemplo: cache_mem 8 MB
Refresh pattern
Refresh pattern
Terminología
Ejercicio
Solución
http://www.rediris.es/si/cache/refrescos.es.html
DELAY POOLS
Delay pool
Jerarquias de caches
Hermanos y padres
http://www.rfc-es.org/rfc/rfc2187-es.txt
Configuración de jerarquias
Hermano 1
Hermano 2
Padre
Esquema de jerarquias
172.16.112.135
Cache: 3128
ICP: 3130
172.16.112.135
172.16.112.136
Cache: 8080
ICP: 3130 Cache: 8081
ICP: 3130
Pregunta
Fin