Servidor Squid en Linux
Continuamos con la segunda parte de configuración de nuestro servidor Squid Proxy, a través de Webmin. Por fin entramos a la definición de Listas de Control de Acceso. Sépase que este es el componente más importante del servidor Squid Proxy.

Tabla del Control de Acceso
En primer lugar, la base de operación de las ACL está en el análisis de las URL que le solicitan; La autorización o restricción de la navegación, depende de la coincidencia de la ACL con una URL solicitada. Por lo tanto, las restricciones básicas de navegación se aplican en las tres partes de una URL; en nombre de servidor, puerto y página. Para cada una existe una ACL correspondiente:
protocolo://dominio:puerto/página
Las ACLs más usadas son las siguientes:
Expresión Regular de Servidor Web: controla la parte del «servidor», generalmente es un nombre de dominio o dirección IP pública. Cualquier criterio específico en esta ACL, será tomada en cuenta para permitir o bloquear ese nombre de dominio.
Expresión Regular de Ruta URL: controla la parte de “página”. Cualquier criterio específico en esta ACL será tomada en cuenta para permitir o bloquear esa URL.
Puerto URL: controla la parte del puerto de escucha de ese servidor. Cualquier puerto excluído de esta política, será bloqueado por Squid.
En segunda instancia, y a manera opcional, entran en la lógica las ACLs de direcciones IP y MAC de cliente, así como su nombre de host y autenticación por cuenta.
Configuración de restricciones
Paso 7 – Comenzamos con nuestra primer política que restrinja el acceso a algunos nombres de dominio. Hagamos que contenga palabras tales como “Juego”, “Game”, “justin”, además términos como “video”, “puritana” y archivos “exe”. Llamemos a esta política «prohibido«. Aunque antes, debemos crear una ACL que declare al Proxy la existencia de nuestra red LAN. Para éste ejemplo es la 192.168.0./24. En el menú contextual del lado del botón “Crear nueva ACL” seleccionamos “Dirección de Cliente” e introducimos la dirección de red con su máscara.

Declarando la red
Seguidamente procedemos a crear la política

Adicionando una restricción
Creamos la ACL que contendrá los criterios que consideramos inapropiados en las páginas. La llamaremos “bloquea_archivos”, porque además de bloquear páginas, también podrá bloquear archivos por extensión como ejecutables (.exe), música (mp3), vídeos (mp4, avi, etc). Así evitaremos que los clientes estén descargando archivos que desestabilice su equipo de cómputo. Además evitamos que saturen el canal de Internet con descargas, según sea la política de la empresa.

Adicionando una segunda restricción
Después, en la pestaña “Restricciones Proxy”, hacemos clic en “Añadir restricción proxy”, allí activamos el botón “Permitir”. Luego oprimiendo la tecla “Control”, seleccionamos la ACL “localnet” seguida de las ACLs “prohibido” y “bloquea_archivos”, después Guardamos.
La política queda así:

Definición de la política
Podemos confirmar la política recién creada en el archivo de configuración de Squid. Recuerde que Webmin es sólo una interfaz gráfica y todo lo que mueva en el módulo “Squid – Servidor Proxy” se aplica en el archivo de configuración /etc/squid/squid.conf:
Bloquea lo que esté después del nombre del dominio (página):
acl “nombre de la ACL” urlpath_regex \.exe \.wmv
Bloquea lo que esté dentro del nombre de dominio (servidor):
acl “nombre de la ACL” dstdom_regex mp3 fotos
Restricción con excepciones
Paso 8 – Vamos a crear una política que bloquee la navegación de un conjunto de clientes, exceptuando el acceso a algunas páginas. Las páginas que vamos a exceptuar son: biblioteca.univalle.edu.co y books.google.es, entre otras. Llamaremos a esta política “bloquea_Internet_para” y la creamos como “Dirección de cliente”. Debemos introducir las direcciones IP de los clientes sin la máscara de red.

Definición de los equipos a los que se le bloqueará el acceso a Internet
Luego creamos la ACL que contendrá los criterios de excepción a la política «bloquea_internet_para«. La llamaremos “excepto_estos_dominios”, y salvamos, así:
En la pestaña “Restricciones Proxy” activamos el botón “Denegar”. De esta forma el servidor Squid deniega la navegación a las direcciones IP de clientes declaradas en la ACL «bloquea_internet_para«. Luego, oprimiendo la tecla Control seleccionamos la ACL “excepto_estos_dominios”, así:
La política queda así:

Política completa
Puede consultar más acerca de su configuración avanzada aquí
< Primera Parte – Tercera Parte >
Comparte esto en
Hola:
Enhorabuena por el artículo, está bastante entretenido. Hace tiempo publiqué un artículo en mi Blog un artículo para aprender a configurar Squid Proxy en modo NO Transparente. Dejo por aquí la URL por si es útil para alguno de tus visitantes.
https://www.raulprietofernandez.net/blog/gnu-linux/como-configurar-proxy-squid-en-modo-no-transparente
Un saludo! 😀
Perfecto, muy bien. Squid es una solución de control de contenido muy bueno.