Las reglas definidas mediante ACLs ya pueden utilizarse conjuntamente con el resto de aspectos de configuración del squid.conf. Seguramente, vengan ya algunas en nuestro archivo, que nos ahorrarán algo de trabajo. En particular, merece la pena añadir una ACL para que coincida con nuestra red local.
acl redlocal src 10.0.0.0/24
y a este conjunto de direcciones, permitirles el uso del proxy.
http_access allow redlocal
Las reglas se definen de ese modo.
accion allow|deny ACL
Algunas de las acciones son:
| http_access |
Controlar si lo que coincide con la ACL tiene acceso al proxy |
| no_cache |
En este caso, deny sirve para impedir que se cachee lo que coincida con el ACL y allow para forzarlo. Es útil utilizar una ACL de tipo urlpath_regex aquí. Ejemplo:
acl NOCACHE urlpath_regex -i cgi-bin \? \.gz$ \.bz2$
no_cache deny NOCACHE
Esta regla impide el cacheo de páginas con contenido dinámico y de archivos con extensiones (.gz, .bz2) que no merece la pena cachear. Es además insensible a mayúsculas, por si cae algún *.ISO por ejemplo. |
| always_direct |
Útil si tenemos el squid conectado a otro proxy, para evitar que lo definido en el ACL se pida al otro proxy, prefiriendo descargarlo el propio squid directamente. Útil sobre todo para archivos grandes que no merezca la pena hacer pasar por 2 proxies |
| never_direct |
El opuesto al anterior, para forzar el uso de otros proxies. |
Nota: Existe una preferencia. Un deny con un allow por encima que coincida con lo mismo no funcionará |