Mi Blog
Cómo restringir el acceso por horarios en Squid Proxy

Cómo restringir el acceso por horarios en Squid Proxy

 
(6 votos)

Permitir y restringir la navegación a través de nuestro servidor Proxy Squid es sumamente sencillo de realizar. En este tutorial os enseñaré tanto la sintaxis como un ejemplo de uso real donde poder adaptarlo a vuestras necesidades. Ya son varios los tutoriales de Squid y no podía faltar el control de acceso en función del horario y del día de la semana. Si quieres aprender como se hace, sigue leyendo:

⬇️ Compra en Amazon el hardware que utilizo ⬇️

🔥 ¡DESCÚBRELOS! 🔥

 

 

Si quieres aprender a montar un servidor Proxy, puedes visitar 2 tutoriales donde explico a paso a paso como se puede instalar y configurar: PROXY TRANSPARENTE y PROXY NO TRANSPARENTE.

Te resumiendo que leas dichos tutoriales (al menos uno de ellos), para saber como funciona un proxy y como realizar la configuración básica. Si todos esos pasos ya los conoces, ¡empecemos!

 

 

1.- ELEMENTOS UTILIZADOS EN ESTE TUTORIAL

  • GNU/Linux Debian + Squid Proxy (Servidor)
  • Windows 7 (Cliente)

 

 

2.- COMO SE USAN LAS RESTRICCIONES

El fichero principal de configuración del proxy Squid se encuentra en /etc/squid.squid.conf.

  • M - Monday - Lunes
  • T - Tuesday - Martes
  • W - Wednesday - Miércoles
  • H - Thursday - Jueves
  • F - Friday - Viernes
  • A - Saturday - Sábado
  • S - Sunday - Domingo

La sintaxis que debemos usar para crear las Listas de Control de Acceso (ACLs), deberá ser la siguiente:

acl [ nombre_horario_acl ] time [ días_de_la_semana ] hh:mm-hh:mm

Algunos ejemplos de Listas de Control de Acceso:

Lista de acceso para los fines de semana desde las 00:01 del Sábado hasta las 23:59 del Domingo:

acl fin_de_semana time AS 00:01-23:59

Lista de acceso para los días de diario desde el Lunes a las 00:01 hasta el Viernes a las 23:59:

acl diario time MTWHF 00:01-23:59

Lista de acceso para los Martes y Miércoles desde el Martes a las 14:00 hasta el Miércoles a las 18:00:

acl martes_miercoles time TW 14:00-18:00

Una vez que tenemos creada nuestra Lista de Acceso, debemos crear y asociar la Regla de Control de Accesos sobre dicha/dichas reglas de control. En el fichero de configuración de squid deberemos añadir tanto las Listas de Acceso como las Reglas de Control.

La sintaxis que debemos usar para crear las Reglas de Control de Acceso, deberá ser la siguiente:

http_access [allow|deny] [nombre_horario_acl] [elementos]

Por ejemplo, para las 3 Listas de Acceso usaremos la siguiente configuración:

http_access deny fin_de_semana [elementos]
http_access allow diario [elementos]
http_access deny martes_miercoles [elementos]

En la configuración anterior estamos aplicando 3 Reglas de Control:

  1. Denegamos todo el tráfico durante el fin de semana
  2. Permitimos todo el tráfico entre semana
  3. Denegamos el tráfico entre Martes 14:00 y Miércoles 18:00

La variable [elementos] la explicaré en el siguiente apartado.

 

 

3.- EJEMPLOS DE CONFIGURACIÓN

Supongamos que tenemos un servidor Proxy para 2 aulas en un Instituto. El Aula 1 usa la siguiente red: 192.168.5.X/24 y el Aula 2 192.168.6.X/24. Y se nos plantea la siguiente cuestión para resolver:

  1. El Aula 1 tendrá acceso durante todos los días de diario (192.168.5.X/24)
  2. El Aula 2 tendrá acceso solamente durante el fin de semana porque es para la Escuela de Adultos (192.169.6.X/24)
  3. En el aula 1, los PCs de la última fila no tendrán acceso nunca (192.168.5.20/24,192.168.5.21/24 y 192.168.5.22/24)
  4. Denegar todo lo que no coincida con lo anterior

ACL SquidEsquema red

Primero declaramos las Listas de Acceso con los [elementos], que no es otra cosa que las redes y/o las direcciones de los equipos.

acl aula1 src 192.168.5.0/255.255.255.0 #Aula1
acl aula2 src 192.168.6.0/255.255.255.0 #Aula2
acl aula1_ultimafila src 192.168.5.20-22/32 #Aula1 Última Fila

Las Reglas de Acceso de Squid funcionan como las reglas de IPTables (en una política que sea ACEPTAR SIEMPRE). Primero se aplican las reglas de DENEGAR y luego las de PERMITIR. Por tanto, con la siguiente premisa, las Reglas de Acceso deberemos configurarlas de la siguiente forma:

http_access deny aula1_ultimafila #Denegamos siempre Aula1_Ultimafila
http_access allow diario aula1 #Permitimos Aula1
http_access allow fin_de_semana aula2 #Permitimos Aula2 Fin de Semana
http_access deny all #Denegamos todo lo demás que no coincida

 

 

ENJOY!


Acerca de Mi

RPF

Soy Ingeniero Téc. Industrial Mecánico, Administrador de Sistemas Informáticos, Desarrollador de Aplicaciones Informaticas Web, Técnico Superior en PRL, Experto en Energías Renovables... y trabajo actualmente como Senior DevOPS en HP SCDS.

Contactar conmigo

Dirección: León, España

E-Mail: Contactar

Web: https://www.raulprietofernandez.net

Skype: raul.lnx

APÚNTATE GRATIS

VIP RPF
Entra en la Comunidad VIP y consigue acceso a las descargas en PDF, Trucos y Videotutoriales ocultos y mucho más... ¡Muy Pronto!

Si haces login, serás automáticamente suscrito a mi lista de Newsletter. Siempre podrás borrarte cuando quieras.