miércoles, 2 de abril de 2008

Squid

es un popular programa de software libre que implementa un servidor proxy y un demonio para cache de páginas web publicado bajo licencia GPL. Tiene una amplia variedad de utilidades, desde acelerar un servidor web , guardando en caché peticiones repetidas a dns y otras búsquedas para un grupo de gente que comparte recursos de la red, hasta caché de web, además de añadir seguridad filtrando el tráfico. Está especialmente diseñado para ejecutarse bajo entornos tipo Unix.

Caché transparente

Squid puede ser configurado para ser usado como proxy transparente de manera que las conexiones son enrutadas dentro del proxy sin configuración por parte del cliente, y habitualmente sin que el propio cliente conozca de su existencia. De modo predefinido Squid utiliza el puerto 3128 para atender peticiones, sin embargo se puede especificar que lo haga en cualquier otro puerto disponible o bien que lo haga en varios puertos disponibles a la vez.

Control de acceso

Ofrece la posibilidad de establecer reglas de control de acceso. Esto permite establecer políticas de acceso en forma centralizada, simplificando la administración de una red.

Aceleración de servidores HTTP

Cuando un usuario hace petición hacia un objeto en Internet, este es almacenado en el caché, si otro usuario hace petición hacia el mismo objeto, y este no ha sufrido modificación alguna desde que lo accedió el usuario anterior, Squid mostrará el que ya se encuentra en el caché en lugar de volver a descargarlo desde Internet. Esta función permite navegar rápidamente cuando los objetos ya están en el caché y además optimiza enormemente la utilización del ancho de banda.


icp_port, en este parametro debemos especificar el puerto que va a utilizar el protocolo ICP (Internet Cache Protocol) que es el protocolo por el cual se comunican los proxies hermanos para intercambiar sus caches.

cache_dir es el parametro que especifica el tamaño de la cache en el disco duro.

cache_peer se utiliza para decirle al proxy que hay otro servidor proxy en la misma red.

Las acl's especifican las redes, maquinas en particular, acciones o caracteristicas.

http_access, estas son las reglas de control de acceso que permiten o deniegan el acceso a paginas web especificadas en el Squid especificado en las listas de control de acceso. (A cada acl se le debe asignar una regla de control de acceso).


ejercicio de squid


Ejercicio

1. Crear listas negras (archivos) para bloquear los siguientes contenidos.
para cada categoria se debe crear una lista negra. Cada archivo tendra al menos dos registros

porno
Chat_correos
Deportes
Descargas
Juegos

2. Bloquear a todos los usuarios en la red la negacion de los usuarios en las listas negras.

3. Bloquear a todos los usuarios las descargas y reproduccion de archivos .exe .mp3 .mpg .wav .iso .zip .rar.

4. La negacion debe restringirse a horarios locales de lunes a viernes de 8 a 12 am y de 1 a 4:30 pm.

5. Existe un usuario sin ninguna sin ninguna restriccion 10.3.6.208.

6. Los usuarios de la red pueden acceder a paginas de correo gratuito y chat solamente solamente en el horario del almuerzo --> 12:00-13:00.

7. Configurar su maquina para que trabaje como proxy-transparente.


SOLUCION



http_port 3128 transparent
visible_hostname sena
icp_port 0
cache_mem 16 MB
cache_dir ufs /var/spool/squid 100 16 256
cache_peer proxylan.sena.edu.co parent 8080 0 default
acl profe src 10.3.6.248
acl Hora1 time MTWHF 08:00-12:00
acl Hora2 time MTWHF 13:00-16:30
acl ficheros urlpath_regex -i "/etc/squid/acl/ficheros"
acl porno url_regex "/etc/squid/acl/porno"
acl chat url_regex "/etc/squid/acl/chat_correos"
acl descarga url_regex "/etc/squid/acl/descargas"
acl sitios-web dstdomain "/etc/squid/acl/sitios-web"
acl deporte url_regex "/etc/squid/acl/deportes"
acl juegos url_regex "/etc/squid/acl/juegos"
acl correos_gratuitos url_regex "/etc/squid/acl/correos_gratuitos"
acl almuerzo time MTWHF 12:00-13:00
acl all src 0.0.0.0/0.0.0.0
acl localnet src 10.3.6.128/255.255.255.128


http_access allow profe
http_access allow localnet almuerzo correos_gratuitos
http_access deny sitios-web
http_access deny ficheros
http_access deny porno
http_access deny chat
http_access deny descarga
http_access deny deporte
http_access deny juegos
http_access allow localnet Hora1
http_access allow localnet Hora2
http_access deny all





# SE DEBE CONFIGURAR LA TABLA NAT PARA QUE EL PROXY QUEDE COMO TRANSPARENTE:

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128



No hay comentarios: