Este será el primer Megatutorial del sitio, debido a su gran extensión de contenido. Se intentará abarcar de una forma muy profunda y nunca antes vista en ningún sitio de Internet, la implementación y configuración de squid como proxy. SQUID tiene al menos 249 parámetros configurables. Su fichero de configuración altamente comentado, que normalmente está en /etc/squid/squid.conf, contiene más de 4,600 líneas de largo. Esto intimida incluso al más experimentado administrador de sistemas. Por lo que nos dimos (@Franco sparrow_snet y un servidor) a la tarea de hacer un tutorial lo más abarcador posible para llegar a entender a SQUID. Este sin duda será unos de los tutoriales más controversiales que escribiré y sin duda el más difícil. Como es lógico no todos poseemos las mismas características, ni la misma estructura en nuestras redes. Por lo que escribir un tutorial de configuración de squid es una tarea titánica y casi imposible. Con este MEGATUTORIAL, pretendo abarcar la mayoría de los aspectos básicos y de situaciones reales que pueden presentarse en una empresa cubana común. Se que hay otras instituciones que manejan un mayor volumen de usuarios y por ende deben tener una mayor protección. Pero básicamente tratare de explicarles, no a nivel HOKAGE sino de CHUNNIN (broma OTAKU) lo básico a tener en cuenta para lograr un squid totalmente funcional. Este tutorial se ira enriqueciendo a medida que ustedes opinen y posteen sus dudas. En el mismo pondré un caso hipotético de una empresa y tratare que sea lo más abarcador posible. Si hay condiciones que ustedes quieran agregar al caso que planteare, con gusto lo actualizare y le daré la explicación de cómo resolverlo.
A continuación les dejo el índice del Megatutorial. El mismo puede sufrir cambios y estará disponible en cada una de las partes.
Servidor Proxy. Conceptos y datos para el ejemplo a desarrollar.
1. Instalación de squid-5.0.2 por compilado.
1.1. Generando e instalando empaquetado “.deb” de squid-5.0.2.
2.2. Proxy padre.
2.3. Caché.
2.4. Autenticación.
2.5. Patrones de refrescamiento.
2.6. Declaración de reglas (ACLs).
2.8. Declaración y aplicación de otras reglas especiales.
2.8.1. Retardo con Delay Pools.
2.8.2. MITM con SSL Bump.
3. Integración de Squid-ADDC mediante Kerberos.
3.1. Configuraciones necesarias en el ADDC Samba4.
3.2. Sincronización de tiempo.
3.3. timesyncd.
3.4. ntpd & ntpdate.
3.5. Integración Squid-ADDC por Kerberos, mediante Ticket.
4. Ejemplo integrador de configuración de Squid.
4.1. Configuraciones del ejemplo.
Squid es una aplicacion de software libre bajo licencia GLP, disenado para ejecutarse en entornos tipo UNIX. Squid escucha las peticiones que hacen los usuarios de los objetos de Internet, se los entrega y se guarda una copia. A esa copia se le denomina cache. Por lo tanto, Squid es un proxy-cache para clientes Web que soporta FTP, gopher y HTTP. También puede ser configurado para otros tipos de proxy, como proxy inverso y transparente.
Algunas características:
Entre muchas otras opciones.
Proxy y cache
El servicio que permite a los usuarios realizar indirectamente conexiones a Internet es conocido como servidor Proxy.
Un servidor Proxy se sitúa entre la estación cliente (el usuario) y el acceso a Internet (ADSL, cable, Frame Relay…). El cliente se conecta al servidor Proxy, solicita un recurso de Internet (una conexión, un fichero o cualquier otro recurso) y es el servidor Proxy el encargado de solicitar ese recurso a Internet para proporcionárselo al cliente. La traducción de la palabra inglesa “Proxy” viene a ser “por poderes”, es decir dejaremos que sea el servidor Proxy el que se conecte a Internet por nosotros.
En algunos casos es posible que el Proxy no se conecte a Internet para obtener el recurso solicitado, sino que lo obtenga de una cache. El término cache es utilizado en el ámbito informático para designar un conjunto de datos replicando a los originales, residentes en un almacenamiento remoto: Cuando se accede por primera vez a un dato, se hace una copia en el caché, los accesos siguientes se realizan a dicha copia, haciendo que el tiempo de acceso aparente al dato sea menor.
Web Proxy cache
Se dice que un servidor está actuando como Web Proxy cache cuando almacena en su disco duro las páginas Web descargadas de forma que, en próximas consultas, pueda acceder a ellas de forma muy rápida. De esta forma estamos optimizando el canal de acceso a Internet de la organización y mejoramos la sensación de navegación del usuario en momentos de ocupación importante de la línea.
Este tipo de Proxy se suele usar en alguno de estos entornos:
1. Cuando, por motivos de seguridad, no deseas permitir acceso libre a Internet a los usuarios, pero se desea proporcionarles acceso a la Web: se les proporciona a través del Proxy.
2. Cuando se desea optimizar el ancho de banda y acelerar la navegación para los usuarios. Por ejemplo, una oficina con muchos trabajadores que suelen visitar frecuentemente las mismas páginas.
Proxy inverso
Un Proxy inverso (o reverse proxy) es aquel que se sitúa cerca de uno o más servidores Web, de forma que es el Proxy quien recibe las peticiones y las reenvía a los servidores Web. Este tipo de Proxy se suele usar en algunos de estos entornos:
1. Para añadir seguridad a los servidores Web: en ningún momento se accede directamente a ellos sino al Proxy.
2. Para balancear la carga de los servidores: el servidor Proxy es el encargado de enviar las peticiones a aquellos servidores que estén más descargados.
3. Para descargar a los servidores Web de contenido estático como imágenes o documentos.
4. En caso de sitios Web seguros se puede dejar al Proxy que haga el encriptado de los datos y descargar así a los servidores Web.
Proxy transparente
Tal como hemos visto es posible usar un proxy para aplicar políticas de control de acceso a Internet. Normalmente esa configuración no es transparente: es necesario modificar el cliente para que use el Proxy al acceder a Internet, de forma que es posible que un usuario modifique esa configuración.
Una configuración de Proxy transparente hace que no sea necesaria modificación alguna en las máquinas clientes, eliminando el riesgo de que un usuario modifique dicha configuración a su antojo. El uso de un Proxy transparente combina un servidor Proxy con NAT, de forma que todas las conexiones son encaminadas a través del Proxy sin la intervención de la máquina cliente.
Los siguientes datos exponen las versiones de los paquetes y Sistemas Operativos en los que fueron probadas las configuraciones del presente tutorial.
Servidor Proxy:
ADDC (todos los probado en este tutorial):
Ejemplo Practico:
En una empresa la cual se encuentra tras un proxy padre, con dominio dado se nos pidió implementar un proxy con las siguientes particularidades.
Condiciones:
Como seguridad tendremos:
Hasta aquí la introducción al Megatutorial en las próximas partes se explicaran cada uno de los capítulos del índice.
Me complace anunciar la creación de esta útil herramienta (SquidStats), para el análisis y monitoreo…
La inteligencia artificial está revolucionando las industrias al automatizar tareas, predecir patrones y permitiendo tomar…
Uno de los grandes retos al que nos podemos enfrentar cuando una aplicación crece, es…
Percona Monitoring and Management (PMM) es una herramienta de código abierto para la supervisión y…
Qué es lo que deseo hacer en este capítulo? Básicamente un sonoff, quiero encender/apagar las…
Hace algunos meses estoy escuchando hablar del proyecto Home Assistant (HA). En palabras literales del…
View Comments
eso mismo me pasa a mi, bueno quisiera ponerme en contacto con alguno de ustedes para ver si me ayudan, he estado probando de todo y no me funciona, tengo montada una red wifi donde comparto el internet todo esto sobre microtik en una maquina virtual (soy pobre), y quiero poner el squid tambien en una maquina virtual pero que funcione en modo transparente pero no funciona.
Has probado utilizar squid 5.x en modo transparente? a mi no me funciono.