squid_proxy_logo-760x460

Monitorización con Squid en PFSense

Como introducción PFSense es un sistema operativo basado en FreeBSD y está diseñado para montar un firewall fácilmente configurable a través de una interfaz web accesible desde cualquier PC. Además incluye una gran lista de paquetes que le permiten expandir fácilmente las funcionalidades sin comprometer la seguridad del sistema.

En este artículo vamos a tratar la configuración de un servidor PFSense que usaremos para conseguir que el tráfico http y https pase a través de un proxy que configuraremos.

Nuestro objetivo será interceptar el tráfico de manera que PFSense pueda ver los sitios que visitan las páginas conectadas a él.

 

Lo primero que haremos será acceder a la interfaz web de PFSense.

 

 

Instalación de paquetes

Tras eso nos dirigimos a System < Package Manager < Available Packages.

Aquí dentro tenemos que buscar los paquetes necesarios para conseguir nuestro objetivo que son squid (servidor proxy) y Lightsquid (genera logs de squid).

 

 

REGLAS DEL FIREWALL

Una vez hemos instalado esos paquetes configuraremos las reglas del cortafuegos, para ello iremos a Firewall < Rules.

 

Tras ello crearemos las dos reglas que se ven en la imagen con la X (block) ; Impedir salida 80 directa e Impedir salida 443 directa.

La descripción de las reglas puede ser diferente, pero es importante que pongáis bien el protocolo y los puertos en cada una tal y como se ven en la imagen.

 

 

CERTIFICADO

Ahora que hemos configurado las reglas del firewall nos dirigimos a System < Certificate Manager < CAs < Edit con el objetivo de crear un certificado para acceder a los sitios https.

Primero le ponemos el nombre descriptivo y en Método ponemos la opción Create an internal Certificate Authority.

 

Ahora le ponemos las opciones que creamos oportunas para nuestro certificado.

 

Aquí vemos que tenemos el certificado correctamente creado y tendremos que darle a Export CA para poder exportarlo ya que tendremos que introducirlo en el navegador que vayamos a usar.

 

Para introducir accedemos a los ajustes del navegador (Firefox en mi caso) y nos vamos a Privacidad y Seguridad y en Certificados le damos a Ver certificados.

 

Ahora que estamos en la pestaña del administrador de certificados tendremos que darle a Importar y elegir el certificado que hemos creado en pfsense y luego exportado.

 

Después de seleccionarlo marcaremos las opciones de confianza y le daremos a Aceptar.

 

Podemos ver que el certificado está correctamente creado y se corresponde con el de pfsense.

 

 

Configuración de Squid

Ahora volvemos a pfsense y tendremos que dirigirnos en Services a Squid Proxy Server.

 

Y lo primero que haremos será ir a pestaña Local Cache y darle a Save.

Tras hacer eso iremos a la pestaña General y aquí marcaremos la opción Check to enable the Squid proxy y habilitaremos el Transparent HTTP Proxy

 

Ahora habilitamos HTTPS/SSL Interception y le ponemos el CA que hemos generado antes.

 

Luego tendremos que habilitar el acceso a los logs.

 

Por último guardaremos esta configuración y tendremos que reiniciar el servicio para que se apliquen los cambios correctamente y pueda entrar en funcionamiento esta configuración.

Ahora si en el navegador donde instalamos el certificado accedemos a una página que sea segura veremos que nuestro certificado está actuando correctamente.

 

 

Configuración de Lightsquid

Tras haber comprobado el funcionamiento del certificado lo que nos queda por hacer es configurar Lightsquid para poder visualizar los logs.

Para ello se ha puesto el puerto 7445, se ha marcado la opción Use SSL for Lightsquid Web Access y se ha introducido el usuario y contraseña de pfsense (admin/pfsense).

Antes de seguir tendremos que refrescar el servicio y después podremos darle a Open Lightsquid.

 

 

Comprobación

Al hacerlo nos volverá a solicitar el usuario y contraseña de pfsense.

 

Una vez estamos dentro se verá la siguiente interfaz en la que se nos mostrará un calendario para que veamos que podemos acceder a algún día cualquiera para visualizar los logs de dicho día.

En mi caso clico en el día 5 de mayo.

 

Tras clicar en un día tendremos que elegir la IP de la que queremos ver sus accesos por web y pondré la IP 192.168.1.133.

 

Y finalmente se cumple nuestro objetivo ya que podemos ver los accesos registrados por pfsense para esta IP en el día elegido.

Como ejemplo marco la web que hemos accedido antes para comprobar el funcionamiento del certificado.