Squid Proxy Server
pfSense
Last updated
Was this helpful?
pfSense
Last updated
Was this helpful?
Para comenzar la configuración de Squid nos vamos a Services - Squid Proxy Server - Local Cache
. Al inicio del todo nos encontramos con los ajustes generales, esto es: Squid Cache General Settings
.
Primero vamos a configura la cache local porque nos darían errores si no tenemos definida la cache local.
En esta sección veremos aspectos como el tipo de política qué decide que objetos se almacenarán o no en la caché, a partir de qué punto se comienza a liberar espacio de la caché, qué IP o dominios no se almacenarán nunca en caché, etc.
En resumen, en esta primera sección y para probar, dejaremos las opciones por defecto:
Cache Replacement Policy: por defecto Heap LFUDA
Low-Water Mark in %: 80%
High-Water Mark in %: 85%
Esta es la siguiente sección en la configuración de la Local cache
. En la misma tenemos para configurar aspectos como el espacio de la cache, el sistema de almacenamiento de la caché, niveles de directorios, etc.
Teniendo en cuenta que estoy trabajando en una VM con un espacio limitado de disco duro de 20GB voy a dejar prácticamente todas las opciones por defecto salvo una:
Hard Disk Cache Size: 100
Hard Disk Cache System: aufs
Level 1 Directories: 16
Minimum Object Size: 0
Maximum Object Size: 4
A continuación ltenemos la sección que corresponde con la cache en memoria que sería mucho más rápida que la de disco. No debemos asignar más de un 25% a pesar que la ayuda diga de utilizar un 50%. Imagina que instalas más servicios de lo que pudieras y empiezas a tener errores porque te has quedado sin RAM.
Y la última sección a día de hoy no creo que la utilice nadie.
Hemos configurado primero la cache porque al configurar el servicio os dará errores si no está definida. Con la cache preparada vamos a dirigirnos a la configuración general de Squid en la pestaña General.
En resumen, aquí lo dejamos todo por defecto. Guardamos y salimos.
Con la cache lista nos dirigimos a la configuración general de Squid en la pestaña General
. Esto es: Package - Proxy Server: General Settings - General
.
En este apartado lo dejo todo por defecto, aunque tendremos en cuenta de marcar en Check to enable Squid Proxy
para habilitar el servicio.
Este tipo de proxy permite que todo equipo conectado a las interfaces que seleccionemos pase por el proxy sin necesidad de configurar nada en los equipos que están conectados. En este apartado tenemos tres opciones interesantes que son:
Bypass Proxy for Private Address Destination. No reenviar tráfico a direcciones privadas. Las direcciones privadas pasan directamente a través del firewall, no a través del servidor proxy.
Bypass Proxy for These Source IPs. No reenviar el tráfico desde estas IP de origen, redes CIDR, nombres de host o alias a través del servidor proxy, sino déjelo pasar directamente a través del firewall. Se aplica sólo al modo transparente.
Bypass Proxy for These Destination IPs. Omitir proxy para estas IP de destino No dirigir al proxy el tráfico que va a estas IP de destino, redes CIDR, nombres de host o alias, sino déjelo pasar directamente a través del firewall. Se aplica sólo al modo transparente.
No obstante, no vamos a activar el proxy transparente en esta ocasión.
Este apartado es muy importante ya que a día de hoy la mayoría de tráfico es de tipo HTTPS. Aquí nos interesa tener activado:
HTTPS/SSL Interception
SSL/MITM Mode Splice All
En cualquier caso necesitamos tener creado una CA o sea, una autoridad de certificado como mismo hicimos para configurar el servidor de OpenVPN. Debe quedar algo así como se muestra en la imagen:
En definitiva, lo que nos interesa en esta sección es:
habilitar el filtrado SSL,
con la opción Splice All
La opción Splice All
en el contexto de Squid, se refiere a una característica de optimización que permite al servidor proxy Squid "empalmar" (splice) las conexiones TCP entrantes y salientes.
Al habilitar "Splice all", Squid puede intentar realizar una transferencia directa de datos entre el cliente y el servidor remoto, sin necesidad de copiar los datos de ida y vuelta a través del proceso del servidor Squid. Esto permite mejorar el rendimiento y la eficiencia del servidor proxy, reduciendo la sobrecarga de procesamiento al evitar la duplicación de datos.
Sin embargo, esta opción puede tener implicaciones en la seguridad y la compatibilidad con algunas aplicaciones o protocolos, ya que puede interferir con ciertas funciones de inspección y manipulación de datos que Squid realiza normalmente.
Lo último a considerar sería la habilitación de los logs de Squid. Como verás no es lo último de esta sección pero lo podemos dejar con todas las opciones por defecto.
Guardamos y salimos.
Clamav también se integra con servidores de correo electrónico para escanear y filtrar mensajes en busca de archivos adjuntos maliciosos.
Entre las opciones que nos encontramos con una opción donde podemos habilitar o no ClamAV,a sí como qué datos del cliente mandamos a ClamAV, entre otras opciones.
En nuestro caso, siendo una prueba, solo lo voy a activar y dejar las opciones por defecto. Guardamos y salimos.
Nota: Para mi es interesante el Clamav de la época en que monté un servidor de correos para el grupo de investigación donde trabajaba. No obstante, para esta prueba pudiéramos pasar sin él.
Este apartado de Access Control List (ACL)
hace referencia a las reglas que determinan qué clientes tienen permiso para acceder a qué recursos a través del proxy Squid.
Dichas reglas ACL
se basan en características como las direcciones IP, nombres de dominio, direcciones MAC, etc. así que al configurar las ACL es posible especificar qué hosts o redes tienen permitido o denegado el acceso a través del proxy para ciertos recursos de Internet. Esto nos permite controlar y filtrar el tráfico de Internet que pasa a través de la red, lo que proporciona una capa extra de seguridad y control.
Algunas de estas opciones son:
Allowed subnets. las subredes que podrán utilizar el proxy.
Unrestricted IP. Añadimos las redes o ips que no serán filtradas.
Banned Hosts Addresses. Las subredes o ips que no tendrán permitido usar el proxy.
Whitelist. La lista blanca de dominios de destino que serán siempre accesibles para los usuarios.
Blacklist. La lista negra de dominios de destimo a los que no se podrá acceder nunca.
Tenemos el apartado Traffic Mgmt
que nos permite establecer el tamaño máximo de descarga y subida, el ancho de banda de las descargas cuando el uso del ancho de banda llegue a cierto valor especificado, etc.
La sección Squid Transfer Extensions Settings
en caso de querer solo unas extensiones específicas.
Este otro apartado Squid Transfer Abort Settings
En el apartado Authentication
es un sistema de autenticación que nos permite crear reglas en función del tipo de usuario. Tenemos cuatro métodos:
Usuarios locales
LDAP
Radius
Portal Cautivo
Tenemos otras opciones, donde pondremos lo que verán los usuarios en la ventana que se les mostraría, así como el número de procesos para autenticar, etc.
Depende del escenario nuestro puede ser interesante la opción donde podemos elegir el tipo, cada cuanto y la dirección de los servidores para sincronizar.
Continúa ....
es un programa de código abierto diseñado para detectar virus y malware en sistemas Linux y FreeBSD. Es un antivirus muy popular que permite escanear archivos en busca de virus, gusanos, troyanos, software espía entre otros. Es eficaz, ligero, fácil de usar y válido para utilizar tanto en entornos domésticos como empresariales.