Está en la página 1de 15

Squid y listas de control de acceso

Samuel Pizarro Silva

Introduccin
Administrar una red heterognea requiere de mucho esfuerzo y recursos. Uno de los principales recursos de una red, es el acceso a Internet. Administrar eficientemente este recurso, hace que una organizacin sea ms productiva, pero requiere de un esfuerzo de los adminsitradores de red.

Squid: Presentacin
Squid es un proxy-cach de contenido Web. Un proxy es un programa que realiza una accin en representacin de otro. En el caso de Squid, es este servicio el que hace las peticiones de pginas web en lugar de hacerlas directamente el navegador web.

Squid: Caractersticas
Squid no slo puede pedir pginas en representacin de un navegador, sino que tambin puede: Cachear el contenido (lo que reduce el trfico hacia
Internet) Filtrar contenido mediante ACL y palabras clave Hacer proxy reverso Interactuar con otros software, como Antivirus, lo que permite "limpiar" el trfico antes de entregarlos a los usuarios Hacer balanceo de carga

Squid: Instalacin
Esta gua se basa en Debian debido a la facilidad y disponibilidad de paquetes. Para la instalacin necesitamos tener instalada la ltima versin estable de Debian, a la fecha: Debian Wheezy. Una vez instalado el sistema Operativo ejecutamos como root: apt-get install squid3

Configuracin
Squid se ejecuta en el puerto 3128, por lo que al instalarlo podemos inmediatamente conectar nuestro navegador web al servidor Squid. Por defecto denegar el acceso a Internet. Para cambiar este comportamiento, debemos buscar la lnea que dice: http_access deny all y cambiarla por: http_access allow all Una vez hecho esto ejecutamos: service squid3 reload

Creacin de listas de control de Accesso


Las listas de control de acceso son una herramienta de Squid que nos permite administrar eficientemente el recurso Internet, pudiendo crear grupos por subredes, por nombres de dominio, IP, etc. Grupos que a su vez pueden incluso ser filtrados por horario

Configuracin de ACL
La forma ms sencilla de crear ACL es bloquear una lista de pginas, para ello editaremos el archivo: /etc/squid3/squid.conf y aadimos la lnea:
acl sitios_bloqueados dstdomain "/etc/squid3/sitios_bloqueados. txt"

Luego editamos el archivo anterior y aadimos un par de sitios: .facebook.com .jaidefinichon.com

Configuracin ACL
Una vez hecho esto, necesitamos decirle a Squid qu hacer con la ACL, para ello editamos /etc/squid3/squid.conf y agregamos la lnea: http_acess deny sitios_bloqueados Reiniciamos el servicio: service squid3 restart Y de esta forma se denegar el acceso a los sitios de la lista sitios_bloqueados.txt

Proxy Transparente
Configurar uno a uno los navegadores web es una tarea tediosa, podemos mitigar esto con Active Directory agregando una GPO, pero esto no es vlido para todos los navegadores. Para esto, podemos instalar Squid en nuestro Gateway Linux. De esta forma, damos un mejor uso al hardware.

Configuracin de Squid
En Squid es sencillo habilitar el modo transparente, slo hay que buscar la lnea que indica el puerto: http_port 3128 y cambiarla por: http_port 3128 transparent Luego reiniciamos el servicio: service squid3 restart

Configuracin Router/Gateway
Para que Linux acte como gateway es tambin una tarea sencilla. Linux utiliza el framework netfilter, el cual es un componente del Kernel, lo que hace que este componente sea extremadamente eficiente y rpido. Netfilter permite la creacin de Firewalls a travs de un programa en espacio de usuario llamado iptables, y la creacin de colas a travs de traffic control (tc)

Configuracin Gateway/Router
Para habilitar el gateway en Linux debemos primero habilitar el forwarding (para que los paquetes pasen a travs de nuestras interfaces de red), para ello tenemos dos alternativas: editar: /etc/sysctl.conf y habilitar: net.ipv4.ip_forward = 1 Esto guarda los cambios para siempre. La forma de hacerlo manual: echo 1 > /proc/sys/net/ipv4/ip_forward Necesitamos tambin habilitar el enmascaramiento de la red:
iptables -t nat -A POSTROUTING -s 172.168.1.0/24 -d 0.0.0.0/0 -j MASQUERADE

Configuracin Firewall
Necesitamos tambin habilitar el enmascaramiento de la red:
iptables -t nat -A POSTROUTING -s 172.168.1.0/24 -d 0.0.0.0/0 -j MASQUERADE

Ahora necesitamos redireccionar los paquetes que van hacia internet, hacia el puerto 3128 interno de la mquina, que es donde se est ejecutando Squid. Para ello:
iptables -t nat -A PREROUTING -s 192.168.172.0/24 -p tcp --dport 80 -j REDIRECT --to-port 3128

FIN
Ahora tiene su mquina Linux como Router/Gateway con cach de contenido y filtro de sitios.

También podría gustarte