Table of Contents
Instale y configure pfBlockerNg para DNS Black Listing en pfSense Firewall
En un artículo anterior se discutió la instalación de una poderosa solución de firewall basada en FreeBSD conocida como pfSense. pfSense, como se mencionó en el artículo anterior, es una solución de firewall muy poderosa y flexible que puede hacer uso de una computadora vieja que puede estar tirada sin hacer mucho.
Este artículo hablará sobre un maravilloso paquete de complementos para pfsense llamado pfBlockerNG.
pfBlockerNG. es un paquete que se puede instalar en pfSense para proporcionar al administrador del firewall la capacidad de extender las capacidades del firewall más allá del firewall tradicional L2/L3/L4 con estado.
A medida que las capacidades de los atacantes y ciberdelincuentes continúan avanzando, también deben hacerlo las defensas que se implementan para frustrar sus esfuerzos. Como ocurre con cualquier cosa en el mundo de la informática, no existe una única solución que solucione todos los productos que existen.
pfBlockerNG proporciona a pfSense la capacidad de que el firewall tome decisiones de permitir/denegar elementos basados en elementos como la geolocalización de una dirección IP, el nombre de dominio de un recurso o las calificaciones de Alexa de sitios web particulares.
freestar. de máquinas internas que intentan conectarse a dominios defectuosos conocidos (en otras palabras, dominios de los que se sabe que tienen malware, contenido ilegal u otros datos insidiosos).
Esta guía le explicará cómo configurar un dispositivo de firewall pfSense para usar el paquete pfBlockerNG, así como algunos ejemplos básicos de listas de bloqueo de dominios que se pueden agregar/configurar en la herramienta pfBlockerNG.
Requisitos
Este artículo hará un par de suposiciones y se basará en el artículo de instalación anterior sobre pfSense. Las suposiciones serán las siguientes:
- pfSense ya está instalado y no tiene reglas configuradas actualmente (pizarra limpia).
- El firewall solo tiene un puerto WAN y un puerto LAN ( 2 puertos).
- El esquema de IP que se utiliza en el lado de la LAN es 192.168.0.0/24.
Cabe señalar que pfBlockerNG se puede configurar en un cortafuegos pfSense en ejecución/configurado. La razón de estas suposiciones aquí es simplemente por el bien de la cordura y muchas de las tareas que se completarán aún se pueden realizar en una caja pfSense de pizarra no limpia.
Diagrama de laboratorio
La siguiente imagen es el diagrama de laboratorio para el entorno pfSense que se utilizará en este artículo.
Diagrama de red de pfSense
Instale pfBlockerNG para pfSense
¡Con el laboratorio listo, es hora de comenzar! El primer paso es conectarse a la interfaz web del cortafuegos pfSense. Nuevamente, este entorno de laboratorio utiliza la red 192.168.0.0/24. con el firewall actuando como puerta de enlace con una dirección de 192.168.0.1. El uso de un navegador web y la navegación a “ https://192.168.0.1. mostrará la página de inicio de sesión de pfSense.
Algunos navegadores pueden quejarse del certificado SSL, esto es normal ya que el certificado está autofirmado por el cortafuegos pfSense. Puede aceptar con seguridad el mensaje de advertencia y, si lo desea, se puede instalar un certificado válido firmado por una CA legítima, pero está fuera del alcance de este artículo.
pfSense SSL Warning
Después de hacer clic correctamente en ‘ Avanzado. y luego ‘ Agregar excepción …. “, haga clic para confirmar la excepción de seguridad. La página de inicio de sesión de pfSense se mostrará y permitirá que el administrador inicie sesión en el dispositivo de firewall.
Ventana de inicio de sesión de pfSense
Una vez que haya iniciado sesión en la página principal de pfSense, haga clic en el menú desplegable ‘ Sistema. y luego seleccione ‘ Administrador de paquetes. ‘.
pfSense Package Manager
Al hacer clic en este enlace, se cambiará a la ventana del administrador de paquetes. La primera página que se cargará serán todos los paquetes instalados actualmente y estará en blanco (nuevamente, esta guía asume una instalación limpia de pfSense). Haga clic en el texto ‘ Paquetes disponibles. para obtener una lista de paquetes instalables para pfSense.
Paquetes disponibles de pfSense
Una vez que se cargue la página ‘ Paquetes disponibles. , escriba ‘ pfblocker. en el cuadro ‘ Término de búsqueda. y haga clic en “ Buscar. . El primer elemento que se devuelve debe ser pfBlockerNG. Busque el botón “ Instalar. a la derecha de la descripción de pfBlockerNG y haga clic en “+” para instalar el paquete.
La página se recargará y solicitará al administrador que confirme la instalación haciendo clic en “ Confirmar. .
Instalar pfBlockerNG para pfSense
Una vez confirmado, pfSense comenzará a instalar pfBlockerNG. ¡No navegue fuera de la página del instalador! Espere hasta que la página muestre una instalación exitosa.
Instalación de pfBlockerNG
Una vez que se ha completado la instalación, puede comenzar la configuración de pfBlockerNG. Sin embargo, la primera tarea que debe completarse son algunas explicaciones sobre lo que sucederá una vez que pfBlockerNG esté configurado correctamente.
Una vez que pfBlockerNG esté configurado, las solicitudes de DNS para sitios web deben ser interceptadas por el firewall pfSense que ejecuta pfBlockerNG software. pfBlockerNG tendrá listas actualizadas de dominios defectuosos conocidos que se asignan a una dirección IP incorrecta.
El cortafuegos pfSense necesita interceptar las solicitudes de DNS para poder filtrar los dominios defectuosos y utilizará un sistema de resolución de DNS local conocido como UnBound. Esto significa que los clientes de la interfaz LAN deben utilizar el cortafuegos pfSense como resolución de DNS.
Si el cliente solicita un dominio que está en las listas de bloqueo de pfBlockerNG, pfBlockerNG devolverá una dirección IP falsa para el dominio. ¡Comencemos el proceso!
Configuración de pfBlockerNG para pfSense
El primer paso es habilitar el resolutor de UnBound DNS. en el cortafuegos pfSense. Para hacer esto, haga clic en el menú desplegable ‘ Servicios. y luego seleccione ‘ Resolución de DNS. .
pfSense DNS Resolver
Cuando la página se recargue, la configuración general del DNS será configurable. Esta primera opción que debe configurarse es la casilla de verificación “ Habilitar el solucionador de DNS. .
La siguiente configuración es establecer el puerto de escucha de DNS (normalmente el puerto 53), configurando las interfaces de red en las que el resolutor de DNS debe escuchar (en esta configuración, debe ser el puerto LAN y Localhost), y luego configurando el puerto de salida (debería ser WAN en esta configuración).
pfSense Habilitar el solucionador de DNS
Una vez que se hayan realizado las selecciones, asegúrese de hacer clic ‘ Guardar. en la parte inferior de la página y luego haga clic en el botón ‘ Aplicar cambios. que aparecerá en la parte superior de la página.
El El siguiente paso es el primer paso en la configuración de pfBlockerNG específicamente. Navegue a la página de configuración de pfBlockerNG en el menú ‘ Firewall. y luego haga clic en ‘ pfBlockerNG. .
Configuración de pfBlockerNG
Una vez que se haya cargado pfBlockerNG, primero haga clic en la pestaña ‘ DNSBL. para comenzar a configurar las listas de DNS antes de activar pfBlockerNG.
Configurar listas de DNS
Cuando se cargue la página ‘ DNSBL. , habrá un nuevo conjunto de menús debajo de los menús de pfBlockerNG (resaltados en verde a continuación). El primer elemento que debe abordarse es la casilla de verificación “ Habilitar DNSBL. (resaltada en verde a continuación).
Esta casilla de verificación requerirá que se utilice el solucionador UnBound DNS. en la casilla pfSense para inspeccionar las solicitudes de dns de los clientes LAN. No se preocupe, UnBound se configuró antes, ¡pero esta casilla deberá estar marcada! El otro elemento que debe completarse en esta pantalla es la “ IP virtual DNSBL. .
Esta IP debe estar en el rango de la red privada y no una IP válida en la red en la que se está utilizando pfSense. Por ejemplo, una red LAN en 192.168.0.0/24. podría usar una IP de 10.0.0.1. ya que es una IP privada y no forma parte de la red LAN.
Esta IP se utilizará para recopilar estadísticas y monitorear los dominios que están siendo rechazados por pfBlockerNG.
Habilitar DNSBL para pfSense
Al desplazarse hacia abajo en la página, hay algunas configuraciones más que vale la pena mencionar. La primera es la “ Interfaz de escucha DNSBL. . Para esta configuración, y la mayoría de las configuraciones, esta configuración debe establecerse en “ LAN. .
La otra configuración es “ Lista de acciones. en “ Configuración del cortafuegos IP DNSBL. . Esta configuración determina lo que debe suceder cuando una fuente DNSBL proporciona direcciones IP.
- Nombre del grupo DNS. elección del usuario pero sin caracteres especiales
- Descripción. elección del usuario, se permiten caracteres especiales
- EasyList Feeds State. si se utiliza la lista configurada
- EasyList Feed. qué lista usar (EasyList o EasyPrivacy) ambas se puede agregar
- Encabezado/Etiqueta. elección del usuario, pero sin caracteres especiales
Configuración de EasyList para pfSense
La siguiente sección se utiliza para determinar qué partes de las listas se bloquearán. Nuevamente, todos estos son preferencias del usuario y se pueden seleccionar varios si se desea. Las configuraciones importantes en ‘ DNSBL-Configuración de EasyList. son las siguientes:
- Categorías. Se pueden seleccionar múltiples preferencias de usuario y
- Lista de acciones. debe establecerse en ‘Sin vincular’ para inspeccionar las solicitudes de DNS.
- Frecuencia de actualización. con qué frecuencia pfSense actualizar la lista de sitios maliciosos
Configuración de EasyList de DNSBL
Cuando la configuración de EasyList esté configurada según las preferencias del usuario, asegúrese de desplazarse hasta la parte inferior de la página y haga clic en ‘ Guardar. ‘botón. Una vez que la página se recargue, desplácese hasta la parte superior de la página y haga clic en la pestaña “ Actualizar. .
Una vez en la pestaña de actualización, marque el botón de opción para “ Recargar. y luego marque el botón de opción para “ Todo. . Esto se ejecutará a través de una serie de descargas web para obtener las listas de bloqueo seleccionadas anteriormente en la página de configuración de EasyList.
Esto debe hacerse manualmente, de lo contrario, las listas no se descargarán hasta la tarea cron programada. Siempre que se realicen cambios (listas agregadas o eliminadas) asegúrese de ejecutar este paso.