Saltar navegación

Activa JavaScript para disfrutar de los vídeos de la Mediateca.

Squid y ACLs - Contenido educativo

Ajuste de pantalla

El ajuste de pantalla se aprecia al ver el vídeo en pantalla completa. Elige la presentación que más te guste:

Subido el 28 de febrero de 2026 por Francisco J. G.

2 visualizaciones

Squid y ACLs

Descargar la transcripción

hola a todos vamos a hablar en este vídeo de tanto script como también de las acl es 00:00:00
vamos a empezar primero con la implementación con script en linux 00:00:12
definir qué es empezar con lo básico es que es un programa que convierte un ordenador en un 00:00:20
servidor proxy. ¿Y qué significa eso exactamente? Pues significa que ese ordenador va a actuar como 00:00:26
intermediario entre los usuarios y las páginas web de internet. En vez de que los usuarios salgan 00:00:31
directamente a internet, primero pasan por Skid, Skid recibe la perición, la analiza, decide si la 00:00:37
permite o no y después la envía al servidor destino. Además puede guardar una copia de lo que se 00:00:44
descarga y eso es lo que llamaríamos cache. Es importante entender que Skid no es un navegador 00:00:51
ni un firewall puro, es un servicio que trabaja en segundo plano gestionando el tráfico web. 00:00:57
Con respecto a los beneficios, ¿por qué usar Skid? Skid primero mejora la velocidad. Imaginemos 00:01:06
que 20 alumnos entran en la misma máquina web, entonces sin proxy la página se descarga 20 veces 00:01:14
desde Internet. Con Skid se descarga una vez 00:01:20
y las demás veces se sirve desde la copia guardada. 00:01:23
Segundo, además, ahorra el ancho de banda. 00:01:27
Esto es importante cuando la conexión 00:01:29
a Internet es limitada. Tercero, mejora 00:01:31
la seguridad. Podemos bloquear páginas, restringir 00:01:35
horarios y obligar a los usuarios a identificarse. 00:01:38
Y cuarto, podemos hacer también que 00:01:42
pueda ser un proxy transparente, lo que significa 00:01:44
que el usuario ni siquiera sabe que está usando un proxy. 00:01:47
Con respecto a las características de Skid, aquí vemos funciones técnicas importantes. Modo caché transparente, que significa que puede interceptar tráfico sin configuración manual en el navegador. Aceleración HTTP, que puede mejorar el rendimiento de servidores web internos. Cache HTTPS, aunque HTTPS va cifrado, Skid puede gestionar conexiones mediante túneles. 00:01:50
Y luego control de IP y usuario, en el que podemos decidir quién navega y quién no. 00:02:14
Skid está pensado principalmente para Linux. Esto significa que normalmente se instala en un servidor Ubuntu. Debian o similar. También existe versión para Windows, pero en entornos profesionales casi siempre se usa en Linux. Además, herramientas como PFSense y Cential lo incorporan con interfaz gráfica. 00:02:20
Y con respecto a la instalación, instalar Skid es sencillo. En Ubuntu o Debian usamos sudo apt-get install skid y cuando termina el servicio ya lo tenemos instalado, no hay mucho más. Muy importante el archivo de configuración principal que estaría en esta ruta que aparece aquí, que sería etc.skid.conf. Aquí es donde vamos a trabajar casi todo el tiempo. 00:02:42
En cuanto a los archivos de registro, los logs son los registros de lo que ocurre. 00:03:05
En barra log barra skid tenemos que encontrar archivos que registran quién accede, a qué página, a qué hora y si fue permitido o bloqueado. 00:03:15
Esto es fundamental para mecanismos de auditoría. 00:03:25
En cuanto a los comandos de gestión en skid, skid es un servicio del sistema. 00:03:32
Entonces podemos iniciarlo con start, skid start, con skid stop y reiniciarlo con restart. 00:03:36
Siempre que cambiemos la configuración debemos reiniciarlo. 00:03:42
También podemos determinar la versión instalada con el skid guión v. 00:03:45
Si cometemos un error en skid.conf, skid puede no arrancar. 00:03:52
Entonces para comprobar errores, ¿qué usamos? Pues skid guión k parse. 00:03:58
Y para ver más detalles, pues haríamos un skid guión de 5. 00:04:03
Aquí, cuanto mayor es el número, más información muestra. 00:04:08
Si pusiéramos un 9, sería el más detallado de todos ellos. 00:04:12
En cuanto al inicio automático, podemos decidir si es que te arranca automáticamente cuando se enciende el servidor. 00:04:17
Esto es importante en entornos empresariales donde el proxy debe estar siempre activo. 00:04:25
Aquí, cómo habilitarlo y cómo deshabilitarlo. 00:04:30
No tenéis aquí ni cada uno de los comandos para realizar una opción u otra. 00:04:33
En cuanto a la gestión con sistema CTL, en sistemas modernos usamos CTL para arrancarlo, aquí lo veis, start, stop, para pararlo, para restaurarlo y para ver el estatus. Esto es la forma estándar de un Linux actual. Veis aquí lo que he dicho antes de comprobar los errores de configuración que se hace con skip-kparsen. 00:04:38
Parse. Parámetros clave 00:05:02
en Skip 00:05:07
aparecerán en skip.conf 00:05:08
y hay muchas líneas, pero estas son 00:05:10
las básicas, que serían el HTTP port 00:05:12
que sería el puerto donde se escucha el servicio 00:05:14
que sería el 3128 00:05:16
3128, también el 00:05:17
access log, donde define 00:05:20
donde se guardan los registros 00:05:22
y el error-directory 00:05:24
en el que define el idioma de los 00:05:26
mensajes de error 00:05:28
En cuanto al registro de accesos, access log 00:05:29
Guión bajo log indica el archivo donde se guarda la actividad. 00:05:34
Entonces, para verlo en directo, ¿qué usamos? 00:05:39
Usamos el tail en guión F, en barra bar, barra log, barra skid, barra acex.log. 00:05:42
Si queremos que cuando se bloquee una página al mensaje salga en español, 00:05:51
pues configuramos el error directory con la ruta en español, como aparece aquí. 00:05:57
Bien, ¿qué es un proxy caché? Un proxy caché, lo indica aquí, guarda copias temporales de páginas web. ¿Esto qué evita? Pues descargar, lo que he dicho al principio de la charla, descargar repetidamente el mismo contenido. 00:06:04
En cuanto a la configuración de memoria caché, aquí configuramos cuánto espacio usamos y utilizamos todos estos parámetros que aparecen aquí, como son el caché barra baja mem, que nos va a definir el tamaño de memoria caché en RAM, el maximum object size, que sería tamaño máximo de objetos almacenados, el reference age, que sería tiempo de almacenamiento de objetos, el caché dir, que sería el que especifica el tamaño que necesita Skid para el almacenamiento caché 00:06:23
Y luego el caché MGR, que indica el correo del administrador. 00:06:52
Aquí tenemos un ejemplo de configuración de memoria. 00:07:01
Si ponemos caché MEM a 256 megas, 00:07:05
pues significa que usamos 256 megas de RAM para caché. 00:07:09
Es importante no poner más memoria de la disponible. 00:07:13
Aquí aparecen las tres disposiciones. 00:07:17
Veis aquí, tendríamos el Maximum Object Size, en el que está indicando que almacenará en caché objetos de hasta 4096 kilobites. 00:07:20
En cambio, tenemos aquí el otro, que sería el Reference Age, en One Month, en el que nos indica el tiempo máximo que un objeto puede permanecer en la caché antes de ser eliminado o actualizado. 00:07:29
En este caso, los objetos en caché pueden permanecer hasta un mes antes de ser considerados como obsoletos. 00:07:39
obsoletos. En cuanto a la configuración del caché en disco, caché dir va a definir pues cuánto disco 00:07:45
vamos a utilizar. Aquí tenemos un ejemplo en el que define la configuración de almacenamiento de caché 00:07:54
en skid, en el que nos indica el que, nos va a indicar que 300 significará 300 megas de almacenamiento 00:07:58
en disco. Aquí nos indica cómo en cada uno de los parámetros que utiliza, esta sería UFS, nos va a 00:08:05
File System, que es el por defecto en Skid. 00:08:17
Luego tenemos la ruta donde almacenar los archivos en caché, 00:08:21
que será esta de aquí, bar, barra, spool, barra, Skid. 00:08:24
Y luego tenemos el 300, que ya lo hemos dicho, 00:08:27
que sean los 300 megabytes que va a poder de tamaño total de caché. 00:08:28
El número de subdirectorios, que sería este de aquí, 16, 00:08:33
de primer nivel, dentro del directorio de caché. 00:08:36
Y los 256 serían de subdirectorios de segundo nivel. 00:08:38
La optimización de la caché, pues cuanto mayor caché, 00:08:45
Claro, mejor rendimiento, pero necesitaremos un espacio suficiente para ello. 00:08:48
Una caché más grande permite almacenar más contenido y reducir el tráfico de Internet. 00:08:54
Pero se recomienda siempre ajustar ese tamaño de caché según el almacenamiento que tengamos disponible. 00:08:58
¿Precaución en el uso de AdCaché? 00:09:03
Pues las precauciones que vamos a tener es que si confirmamos más espacio que el que tenemos, 00:09:05
pues es que va a fallar y se va a bloquear. 00:09:09
Entonces, no establecer un caché mayor del espacio disponible en disco, en sentido común. 00:09:11
la configuración básica de Skid 00:09:16
¿qué será? configuramos 00:09:20
lo mínimamente funcional 00:09:22
hay que decir que hay que dirigirse 00:09:24
al archivo Skid 00:09:27
dentro de esa ruta 00:09:28
que sería el skid.conf 00:09:31
donde se configuran los parámetros que aparecen 00:09:32
aquí, por ejemplo el primero sería el puerto 00:09:35
donde se escucha, que sería el 3128 00:09:36
el segundo pues es 00:09:38
una regla CL en el que luego lo veremos 00:09:40
que define la red local 00:09:43
permitida, esto de SRC 00:09:44
viene de source, de fuente 00:09:47
en cuanto a la tercera 00:09:48
nos está diciendo que otra regla CL 00:09:51
en el que nos permite el acceso a la red interna 00:09:52
este de aquí 00:09:54
y por último tenemos el tamaño de caché en memoria 00:09:56
en el que vamos a proporcionarle 00:09:58
256 megas 00:10:01
aquí tenemos 00:10:02
dentro de la configuración de proxy caché 00:10:06
pues tenemos el que 00:10:09
los ejemplos de lo que hemos visto 00:10:09
anteriormente, veis 00:10:13
aquí define el almacenamiento en disco 00:10:14
con 700 megas, con directores de primer nivel 00:10:16
y 256 de segundo nivel, aquí el tamaño 00:10:19
máximo de los objetos caché, máximo 4096 00:10:22
como lo hemos visto, el tiempo de almacenamiento que era un mes 00:10:25
y la configuración de alertas para el administrador 00:10:28
a través de este dominio 00:10:30
de esta ruta, de este correo 00:10:34
pasamos a los logs 00:10:37
y el monitoreo de skid 00:10:44
hay que decir que los tres principales logs son 00:10:47
el access.log, el caché.log y el 00:10:50
store.log. El primero sería el registro de accesos, 00:10:53
el segundo sería la información interna y 00:10:56
el tercero los objetos almacenados. Para 00:10:59
visualizar estos logs, ya lo vimos en tiempo real, se realizaba a través 00:11:02
de TAIL. Seguridad y control de acceso, pues 00:11:05
es que permite aplicar reglas de seguridad en su configuración. 00:11:12
Bloquear a través de las reglas ACL, que luego 00:11:15
veremos. Bloquear sitios específicos, como aparece aquí. 00:11:18
Luego veremos en qué consiste esta línea. Denegar 00:11:21
acceso a sitios bloqueados 00:11:24
y configurar 00:11:25
autenticación de usuarios con LDAB 00:11:28
o cuentas locales. 00:11:30
Por tanto, las ventajas de Skid, pues tenemos 00:11:32
una solución potente y flexible 00:11:34
y que para implementar servidores 00:11:36
proxy, mejora la velocidad de navegación, 00:11:38
aumenta la seguridad de filtrado, 00:11:40
lo hemos visto, y su configuración 00:11:42
es altamente personalizable y adaptable 00:11:44
a las necesidades que nosotros podamos tener. 00:11:46
Conclusión, Skid 00:11:49
es una solución eficaz, 00:11:50
se instala de manera sencilla en Linux, 00:11:52
tiene un control granular del tráfico de red 00:11:53
y es compatible con diversas plataformas y herramientas. 00:11:57
Hemos visto que también se puede realizar a nivel profesional en Windows. 00:11:59
Bien, ¿qué nos queda de lo que quería hablar? 00:12:03
Aparte de Skid, quiero hablar también de las reglas ACL 00:12:09
que vas a aplicar en Skid. 00:12:11
Bien, lo primero que decir, ¿qué son las reglas ACL? 00:12:15
ACL significa Access Control List 00:12:19
y es una lista que define una serie de condiciones. 00:12:21
Pero, ojo, definir un ACL no bloquea nada por sí sola. 00:12:26
Entonces, estas listas de control permiten filtrar y controlar el tráfico en un proxy. 00:12:30
Se pueden usar para permitir o denegar acceso a sitios web, IPs, dominios, horarios 00:12:35
y se definen con la sintaxis que aparece aquí. 00:12:40
Primero sería la palabra ACL, luego sería el nombre de la lista de filtrado 00:12:43
y luego los parámetros. 00:12:48
El ACL va a indicar que estamos definiendo una lista de control de acceso. El nombre de la lista sería el identificador personalizado para esa lista. Esto luego se puede utilizar para referenciarla en otras reglas. 00:12:50
El tipo de filtrado sería ACL, nombre lista, tipo de filtrado y parámetros. El tipo de filtrado nos definiría el tipo de criterio de filtrado que se va a aplicar, bien para un IP, bien para un dominio, para un puerto, para un URL, etc. 00:13:04
Y los parámetros se especifican valores o condiciones que se aplicarán al tipo filtrado. Por ejemplo, dirigidos IP, dominios. Aquí tenemos tipos de ACLN Skid en el que vamos a ver el que tanto SRC, DST, DST Domain, URL-reggs y Time. 00:13:18
Bueno, estos tipos, según hemos visto anteriormente, sería el tipo de filtrado. Estamos hablando de esta parte de aquí. Ponemos el ACL, el nombre de la lista y tendremos que saber cuáles son los tipos para primero filtrar el criterio de filtrado. 00:13:44
Y luego, pues eso se acompañará de una serie de parámetros. 00:14:04
Entonces, el primero sería SRC, que sería un filtrado por direcciones IP de origen, 00:14:07
de source, mientras que Destiny, que sería DST, sería para direcciones IP de destino. 00:14:12
Aquí tenemos varios ejemplos, una ACL, en el que la he llamado IP bloqueada, 00:14:17
y en el que nos dice que el único dirección de origen sería esta que aparece aquí. 00:14:21
Después nos pone un HTTP access, deny IP bloqueada, 00:14:29
y esto lo que nos va a decir es que esa CL llamada IP bloqueada 00:14:32
va a filtrar el tráfico proveniente de la IP y se le deniega el acceso. 00:14:36
En cuanto a DST, sería de destino. 00:14:43
Que tendríamos ahora a CL, le llamamos destino bloqueado 00:14:47
y le tenemos DST y con la IP que aparece aquí. 00:14:50
Después ponemos el HTTP access, destino bloqueado. 00:14:53
Se va a bloquear el acceso a la dirección IP 200.200.200.10 00:14:58
sin importar la IP de origen. 00:15:03
ST-DOMIN es cuando hablamos de dominios. 00:15:06
Y esos dominios siempre se añaden posterior al de ST-DOMIN 00:15:09
con un punto delante. 00:15:13
Esto no es un error, sino que aparece, 00:15:15
se pone el dominio con el punto delante. 00:15:16
Está negando el acceso a los dominios 00:15:19
indicados sin importar la IP de destino. 00:15:21
El URL-REGIS es un filtrado por expresiones regulares. 00:15:24
Entonces aquí podemos establecer todas estas expresiones regulares que le he añadido al parámetro que hemos puesto. Ese tipo de expresiones regulares pueden terminar para todos los archivos que terminan en mp3, o para los .exe, o también hacer que la búsqueda no distinga entre mayúsculas y minúsculas, que sería el guión i. 00:15:27
gotTime que sería filtrado por horarios 00:15:55
pues entremos ahora, lo que hace es que 00:15:58
va a filtrar por horario, estableciendo un 00:15:59
vamos a poner esto 00:16:02
que desaparezca 00:16:03
un horario restringido 00:16:04
se pone 00:16:08
tanto los días de la 00:16:08
semana, que se pondría en ese orden 00:16:12
mtwhf 00:16:13
y que se indicaría el lunes, martes, miércoles 00:16:15
jueves y viernes en inglés, y luego tendríamos 00:16:18
la hora 00:16:20
de qué hora a qué hora, que aparecería 00:16:20
aquí me sale que sería el horario restringido acl por ip origen sirve para aplicar reglas a 00:16:24
una red concreta entonces para permitir acceso sólo a una red específica veis aquí que lo ha 00:16:34
añadido define que los equipos de las redes tanto de esta ip como de esta de esta cosa de esta red 00:16:40
como de esta otra red tanto la punto 1 como la punto 3 que tienen acceso cuando es por ip de 00:16:45
destino, se pone el DST y está diciendo 00:16:54
pues el que 00:16:56
si queremos, en el ejemplo, bloquear 00:16:57
el acceso a ciertas direcciones, primero con 00:17:00
las direcciones de destino se ponen las direcciones que son 00:17:02
y luego tenemos que 00:17:04
se le dice que el acceso 00:17:05
a esa regla, a institutos 00:17:08
pues está totalmente denegado 00:17:11
si estos servidores cambian 00:17:12
de IP, la regla pues dejará de ser 00:17:21
válida 00:17:23
con respecto a 00:17:25
CL por dominio, ahora estamos hablando de 00:17:31
DST domain, para bloquear 00:17:33
dominios en lugar de direcciones ip veis aquí en llama a esta cl institutos y le pone el parámetro 00:17:35
de st domain y le dice pues que el dominio y es andaluz y el dominio y es austriana en el que le 00:17:42
pone con el punto delante lo veis después dice que pues que se deniegue pues a esos dos dominios se 00:17:50
deniegue el acceso pues a esa regla a institutos entonces esto evita problemas de ips cambiantes 00:17:58
y bloqueo de sitios compartidos. 00:18:04
Con respecto a las expresiones regulares, 00:18:10
que les hemos visto anteriormente, 00:18:12
para bloquear las URLs que contengan ciertas palabras. 00:18:13
Entonces aquí veis, sería primero la palabra CL, 00:18:17
luego le pone el nombre de la CL, que va a ser casinos, 00:18:19
y posteriormente utiliza el parámetro URL-regs. 00:18:23
¿Qué nos está indicando aquí? 00:18:27
Pues que ahora lo que está añadiendo es una ruta 00:18:29
en el que contiene un fichero que sería palabras bloqueadas. 00:18:35
Ese fichero va a tener una serie de palabras en su interior. 00:18:38
Entonces, el archivo va a contener las palabras casino, juegos apuesta. 00:18:40
Entonces, ¿qué hace? 00:18:45
Estamos creando una ACL donde se llama casinos 00:18:46
y que bloquea las URLs que tengan o coincidan con expresiones regulares 00:18:49
definidas con el archivo de lo que hay dentro de palabras bloqueadas. 00:18:53
En cuanto a ACL por horarios, está claro. 00:19:00
En cuanto a la ACL por horario, tenemos que el ejemplo se hacía con el parámetro time, la llamada horario laboral, y aquí indica que tanto los lunes, los martes, los miércoles, los jueves y los viernes y de 9 a 7 y media. 00:19:03
¿Esto qué está haciendo? Está permitiendo, esto permite el acceso, a no ser que pongamos un HTTP access denied, el acceso solo de lunes a viernes y en un periodo de 9 a 7 y media. 00:19:16
Activación de ACLs con HTTP access. 00:19:29
Para permitir o denegar acceso con ACLs en SQL, 00:19:32
pues se usa el HTTP access. 00:19:34
Aquí tenemos estas tres reglas. 00:19:37
Tenemos HTTP access hello, 00:19:38
con el nombre de la lista que está permitiendo el acceso. 00:19:40
Hello es permitir en inglés. 00:19:43
HTTP access deny, en el que sería que lo bloquea, lo deniega. 00:19:45
Y aquí añadiendo también una determinada... 00:19:50
Este es un ejemplo con una determinada lista, 00:19:55
Pero si veis, ha puesto aquí una exclamación. Esto está diciendo que está permitiendo el acceso a todo, a excepción del aula 1. Por eso es la exclamación que lo que hace es negarlo. 00:19:57
Entonces aquí tenemos un ejemplo, está poniendo HTTP Access Denay, denegando a Aula 1, pero fuera de un horario laboral, porque está negando el horario laboral, está indicando que se denegará el acceso a la condición especificada. 00:20:09
Es una CLE en el que probablemente presenta las IPs o la red de un aula, que sería el de Aula 1, que habrá sido definido anteriormente. 00:20:29
Entonces, al negar con el símbolo de negación, de exclamación, el horario laboral, lo que indica es que la regla se aplicará fuera del horario laboral. 00:20:39
O sea, que está denegando a la IP del aula 1, le está denegando el que el acceso siempre fuera del horario laboral. Por tanto, dentro del horario laboral sí tendrá acceso. 00:20:49
en cuanto a las reglas finales en skid.conf 00:21:02
pues a decir que skid evalúa las reglas 00:21:08
esto es muy importante, las va a evaluar en orden de arriba a abajo 00:21:10
y aquí, si no hay coincidencia 00:21:13
continúa leyendo las reglas, pero 00:21:16
¿qué sucederá? cuando llega una regla en el que ya la cumple 00:21:19
ahí se para y no seguirá leyendo todas las demás 00:21:22
para evitar accesos indeseados 00:21:25
imaginaos que empieza a leer y no hemos dado con la regla 00:21:28
que queremos que, entonces, agrega al final siempre 00:21:32
un http access deny all 00:21:35
en el que lo que está diciendo es que deniegue todo 00:21:37
esta regla no es necesario que llegue, si llega 00:21:40
otra regla, el que era lo que nos interesaba y que estaba 00:21:44
antes de esta, hará esa y no seguirá leyendo 00:21:47
pero que sucede si no tenemos una regla 00:21:49
en el que la hemos configurado de manera 00:21:52
inadecuada, pues podrá llegar a esta línea 00:21:55
no coincidirá con ninguna, llegará a esta línea 00:21:59
y nos generará todo por defecto 00:22:00
bien, la ubicación 00:22:04
en el archivo de configuración 00:22:06
tenemos que 00:22:08
veis este comentario que aparece aquí 00:22:09
este comentario en el archivo marca el lugar 00:22:12
donde debes definir las reglas 00:22:14
cuando abráis el archivo de configuración 00:22:16
el script.conf 00:22:18
pondrá una línea 00:22:20
donde comentada con la almohadilla 00:22:22
en el que pone insert your own rules 00:22:24
en el que aquí es donde 00:22:27
Podréis poner vuestras reglas 00:22:28
Cualquier regla que pongas antes 00:22:31
Va a ser ignorada 00:22:32
Por las reglas preexistentes 00:22:34
Entonces el orden es clave en Skid 00:22:36
Ya que las reglas se procesarán de arriba a abajo 00:22:38
Conclusión, las ACLs permiten 00:22:41
Un control preciso 00:22:45
Del acceso en Skid 00:22:46
Se pueden definir filtros por IP 00:22:48
Dominio, URL o tiempo 00:22:50
La combinación de ACLs y HTTP Access 00:22:52
Proporciona seguridad y flexibilidad 00:22:55
Y es importante organizar las reglas 00:22:57
adecuadamente para evitar errores. 00:22:59
Idioma/s:
es
Materias:
Informática
Niveles educativos:
▼ Mostrar / ocultar niveles
  • Formación Profesional
    • Ciclo formativo de grado superior
      • Primer Curso
      • Segundo Curso
Autor/es:
Francisco J. González Constanza
Subido por:
Francisco J. G.
Licencia:
Todos los derechos reservados
Visualizaciones:
2
Fecha:
28 de febrero de 2026 - 19:14
Visibilidad:
Público
Centro:
IES CIFP a Distancia Ignacio Ellacuría
Duración:
23′ 09″
Relación de aspecto:
1.78:1
Resolución:
1920x1080 píxeles
Tamaño:
377.52 MBytes

Del mismo autor…

Ver más del mismo autor


EducaMadrid, Plataforma Educativa de la Comunidad de Madrid

Plataforma Educativa EducaMadrid