LinuxParty
En la siguiente entrada os explicaremos la utilidad y el funcionamiento de un Proxy de red, así como la instalación y configuración de Squid en una maquina Linux.
Un proxy es una programa o dispositivo informático que actúa como intermediario,es decir,una máquina solicita un determinado recurso a una tercera máquina, lo hará a través de una petición una máquina intermedia, lo que conllevará que la tercera máquina no sabrá que la petición proviene originalmente de la primera máquina. La principal utilidad dada a esta máquina intermedia es suportar una seria de utilidades: control de acceso, registro de tráfico,prohibir determinado tipo de tráfico…
La finalidad más habitual de un servidor proxy es interceptar las conexiones de red que un cliente hace a un servidor de destino, por varios motivos posibles como seguridad, rendimiento, anonimato, etc. Esta función de servidor proxy puede ser realizada por un programa o dispositivo.
Squid consiste de un programa principal como servidor, un programa para búsqueda en servidores DNS, programas opcionales para reescribir solicitudes y realizar autenticación y algunas herramientas para administración y herramientas para clientes. Al iniciar Squid da origen a un número configurable de procesos de búsqueda en servidores DNS, cada uno de los cuales realiza una búsqueda única en servidores DNS, reduciendo la cantidad de tiempo de espera para las búsquedas en servidores DNS.
En primer lugar tenemos que instalar Squid.
apt-get install squid |
Realizada la instalación Squid nos proveerá de un archivo de configuración alojado en /etc/squid/squid.conf. Este archivo contiene la información de toda la configuración de squid. Por lo que crearemos una copia de seguridad de dicho archivo.
1
|
cp /etc/squid/squid .conf /etc/squid/squid .conf.backup |
A continuación modificamos el archivo squid.conf dejándolo con el siguiente contenido:
|
http_port 3128 transparent cache_mem 100 MB cache_dir ufs /var/spool/squid 150 16 256 acl red_local src 10.10.10.0 /24 acl localhost src 127.0.0.1 /32 acl all src all http_access allow localhost http_access allow red_local |
Configuramos la iptables para que tengamos acceso a internet a través del proxy:
|
iptables -t nat -A POSTROUTING -s 10.10.10.0 /24 -o eth0 -j SNAT --to 192.168.1.1 iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j DNAT --to 192.168.1.1:3128 iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128 |
Para que Squid coja esta nueva configuración tenemos que recargar la configuración como sigue:
squid -k reconfigure |
Recuerdes que está configuración de proxy transparente solo sirve para almacenar en la caché y agilizar la navegación por Internet. A continuación explicaremos diversas reglas para restringir el acceso.
Restricción de acceso por horarios
Editar el archivo /etc/squid/squid.conf.
|
nano /etc/squid/squid .conf |
Sintaxis de Listas de Control de Acceso(acl) que definan horarios.
acl [nombre] time [días de la semana] hh:mm-hh:mm |
Los días de la semana se definen con la letra inicial del nombre del mismo en inglés. Como se muestra a continuación:
- S – Domingo
- M – Lunes
- T – Martes
- W – Miércoles
- H – Jueves
- F – Viernes
- A – Sábado
Ejemplo de una lista, denominada laboral, que comprende un horario de 09:00-21:00 de Lunes a Viernes.
acl laboral time MTWHF 09:00-21:00 |
Este tipo de listas se aplican en las Reglas de Control de Acceso con una mecánica similar a la siguiente:
http_access [allow | deny] [nombre del horario] [lista de entidades] |
A continuación mostramos un ejemplo en el cual los miembros de la Lista de Control de Acceso denominada localnet tengan permitido el acceso a Internet en un horario que denominaremos mañana y comprende de Lunes a Viernes de 08:00-15:00 horas.
Definimos el horario:
acl localnet src 192.168.1.0 /24 |
acl mañana time MTWHF 08:00-15:00 |
Definimos la Regla de Control de Acceso:
http_access allow mañana localnet |
En resumen los miembros de localnet podrán acceder a Internet de Lunes a Viernes de 08:00 a 15:00.

-
Microsoft
- Si estás listo para dejar atrás Windows 11, te recomiendo esta distribución para nuevos usuarios de Linux
- Microsoft Copilot ahora puede leer tu pantalla, pensar profundamente y hablarte en voz alta
- Cómo instalar Windows 11 sin restricciones: Elimina requisitos de hardware y cuenta de Microsoft
- Fin del Soporte para Windows 10: Microsoft Terminará Actualizaciones en 2025, pero 0patch Ofrecerá Soporte hasta 2030, sepa cómo
- ¿Es la nueva función 'Recuperar' de Windows una pesadilla de seguridad y privacidad?
- La preocupación de Microsoft por el liderazgo de Google impulsó la inversión en OpenAI
- Windows 10 alcanza el 70% de participación de mercado mientras Windows 11 sigue cayendo
- Microsoft eliminará los controladores de impresoras de terceros en Windows
- Después de 28 años, Microsoft anuncia que eliminará WordPad de Windows
- Las mejores alternativas a Microsoft Excel para Linux
- Las 5 principales alternativas de código abierto de Microsoft 365 para Linux
- Con Bing ya podemos generar imágenes al mas puro estilo DALL-E
- OpenAI y Microsoft son socios, hasta que compiten por los mismos clientes
- Microsoft dice que hablar demasiado tiempo con Bing puede hacer que se descarrile
- ¿Es Windows 11 un software espía? Microsoft defiende el envío de datos de usuarios a terceros
Comentarios
estoy tratando de implementar un servidor Proxy Squid
en Centos7 pero en mi caso. las búsquedas se están haciendo un poco lentas. y he visto que eso se puede solucionar configurando los DNS, pero no entiendo si los DNS se especifican en el archivo squid.confg o debo instalar bind para poder realizar toda la configuración.. .