02 septiembre 2011

Firewall Builder: la GUI para tu cortafuegos

Cuando me preguntan: profesionalmente, en el mundo de la seguridad perimetral ¿en qué aspecto sientes que te desenvuelves mejor? Mi respuesta suele ser que en el diseño y gestión de políticas y soluciones de seguridad y cortafuegos. Precisamente esta fue mi especialidad a partir del 2001 cuando empecé a dedicarme a "esto de la seguridad".

En estos 10 años he tenido la oportunidad de trabajar con unos cuantos fabricantes de cortafuegos. De los conocidos, de corte comercial, entre otros: Checkpoint Firewall-1 (en alguna entrevista de trabajo he llegado a bromear con que, menos en el microondas de casa, lo instalé sobre cualquier plataforma), Stonegate, Juniper/Netscreen, Fortinet, NetASQ, Watchguard, Sonicwall, Gauntlet, Cisco PIX

Sin embargo, las empresas no siempre eligen estas tecnologías, ya sea por disponer de un presupuesto cerrado y estricto, en el que los servicios de diseño, despliegue e implantación para una política de seguridad adecuada, ya se llevan una buena parte del presupuesto como para pagar también por hardware específico. En otros casos, por filosofía de compañía, muchas veces se prefiere utilizar software libre y evitar "atarse" a un fabricante de dispositivos determinado que en un momento dado, por una mala fusión pueda llegar a hacer inútil una inversión de muchos miles de euros. Por ello, se prefiere comprar servidores de propósito general y utilizar toda una "suite" de productos libres que permitan proporcionar los mismos servicios que un UTM comercial, pero con un coste fijo y mantenimiento, mucho menores.

En este tipo de situaciones, para la gestión de la política de cortafuegos, quizá sea poco amigable, la gestión de reglas en base a un fichero de comandos de sistema operativo. Para ello se hace imprescindible utilizar una GUI o Front-end adecuado.

Aunque ya hemos hablado en SbD de diferentes proyectos libres de gestión de cortafuegos, quiero hoy analizar en mayor medida el que, para mi gusto se lleva la palma en funcionalidad, diseño y versatilidad: Firewall Builder.

Desde el punto de vista de la administración, cortafuegos hay fundamentalmente dos tipos:
  • Los que pueden gestionarse vía web: por tanto, multiplataforma desde el punto de vista de la gestión.
  • Los que utilizan una herramienta cliente: en los que generalmente, bajo Windows funciona al 100%, pero en los que tienen clientes para otras plataformas, éstas suelen ir un paso por detrás en cuanto a la versión Windows o está menos probada y se pierde buena parte de su funcionalidad.
En el caso de Firewall Builder, se trata de una aplicación cliente que permite diseñar cómodamente la política de seguridad y luego aplicarla a la máquina cortafuegos de forma directa, mediante una conexión SSH. Dispone de una versión libre y funcional para Linux, así como versiones de pago, aunque con un coste muy bajo, para Windows y Mac OS X.

Firewall Builder es una GUI multifirewall. No está enfocada únicamente a permitir la gestión de IPTables en Linux, sino que permite además ipfilter, ipfw o PF como cortafuegos en Linux, Mac OS X, OpenBSD, Solaris y FreeBSD, entre otros; además permite gestionar otros cortafuegos como CISCO (ASA/PIX, ACLs en IOS, etc,…), HP Procurve (supongo que se referirá a ACLs en switches HP), etc,…


La GUI, permite crear un dispositivo cortafuegos y a partir de ahí, especificar el número y tipo de interfaces de red que tiene. Indicaremos si el interfaz es de gestión, externo o interno (importante para controlar el spoofing por ejemplo), pudiendo configurar además diferentes opciones como las que ya detallamos en cómo securizar y optimizar parámetros del kernel mediante sysctl.conf.


Podemos partir de de una política de cortafuegos en blanco o ayudarnos de diversas plantillas ya hechas basadas en escenarios típicos con uno, dos o tres interfaces de red. En mi caso, empiezo siempre con una en blanco y aplico mi propia plantilla mental de diseño de política de seguridad. Sin embargo, "cada maestrillo tiene su librillo" y habrá consultores de seguridad que prefieran partir de una plantilla prediseñada y retocarla a posteriori en vez de enfrentarse a lienzo en blanco.

Firewall Builder permite configurar interfaces de red "normales", interfaces de tipo Bond, así como Bridge e incluso dividir el interfaz en modo lógico usando 802.1Q mediante VLAN tagging. De esta manera será el propio Firewall Builder quien incluya en el script a ejecutar en el cortafuegos los comandos necesarios para levantar y configurar los módulos e interfaces adecuados. Recientemente he tenido que configurar un interfaz PPP también sin problemas.


La pantalla de creación de reglas es sencilla, disponemos de los objetos a la izquierda y las reglas en el panel principal, de manera que se pueda ver de una forma bastante clara cómo va quedando la política de reglas. En la definición de objetos podremos incluso indicar la dirección MAC de cada dispositivo, de manera que forcemos a que una IP lleve asociada una MAC, haciendo más complicado el bypass de la política de seguridad a atacantes.


Viene con los servicios más comunes ya predefinidos, de manera que simplemente arrastremos hacia las reglas lo que queremos permitir/denegar/rechazar de una forma bastante cómoda. Si un servicio o grupo no viene por defecto, podemos definir, en un área específica de objetos de usuario, aquello que necesitemos, permitiéndonos incluso indicar si el servicio será válido si lleva activos o no algunos flags TCP (como SYN, ACK, RST, PUSH, URG, FIN).

 
El logging producido por el cortafuegos será ejecutado via syslog según los parámetros que tenga la máquina predefinidos a nivel de demonio syslog, siendo éste local, remoto o ambos, seleccionando el nivel deseado para poder ser clasificado por el colector de eventos en caso que así lo deseemos.

Desde Firewall Builder podremos también generar la política de NAT, permitiendo ajustar el tipo de publicación de servicios al exterior, así como ocultar o "enmascarar" IPs internas utilizando una o varias direcciones IP del cortafuegos.


Podemos además definir otro tipo de cosas interesantes como intervalos de tiempo entre los cuales queremos que la regla sea o no válida, parámetros de QoS, etc,… en definitiva todo aquello que permita el cortafuegos de forma nativa configurar mediante comandos en un fichero, tiene su correspondencia visual directamente, sin tener que utilizar módulos diferentes como en el caso de otras GUIs más limitadas que para la parte de Traffic Shapping o QoS por ejemplo, hay que basarse en otros proyectos.

Por  supuesto, Firewall Builder viene preparado para generar las reglas para IPv6, de manera que la actualización a lo que se supone que iba a ser el pasado-presente (que personalmente aún veo como futuro - muy futuro) no resulte más traumática que añadir/modificar la configuración IP y se nos generen todas las reglas ad-hoc.  

Conclusiones
  • Firewall Builder es una herramienta de acabado completamente profesional para la gestión de cortafuegos que no tiene nada que envidiar a las GUIs de cortafuegos comerciales, siendo incluso, en algunos casos, más potente que éstas.
  • Está pensado para la gestión de reglas de una única máquina, por lo que si disponemos de un clúster, y efectuamos una modificación, habrá que replicar los cambios en todos los nodos, generando políticas separadas para cada uno de los mismos.
  • La herramienta de gestión es casi idéntica y con las mismas funcionalidades en las plataformas soportadas: Linux, Windows y Mac; cubriendo con estas plataformas el 99% de las utilizadas por los administradores de sistemas y responsables de seguridad.
  • La configuración de cortafuegos es un fichero XML que puede quedarse en el PC local del administrador, con lo que se hace complicado una co-administración por parte de un equipo, por lo que la configuración debería estar en algún recurso compartido por red. El punto negativo es que dicho fichero de configuración se encuentra en claro, por lo que si cae en malas manos, la política de configuración del cortafuegos puede ser conocida por público no autorizado. Podemos complementar esta carencia guardando la política de cortafuegos en un contenedor cifrado, del tipo Truecrypt por ejemplo.
  • Será porque empecé con Checkpoint y Stonegate, cuya administración es vía herramienta cliente también, que me acostumbré a utilizar este tipo de herramientas y me gusta menos las GUIs de cortafuegos vía web, como pueden ser el caso de Shorewall.
  • Llevo desde 2002 utilizando la versión Linux (desde que empecé a usar Linux) y al pasarme a Mac, lo que solía hacer era exportar las X del firewall (Linux) a mi Mac y controlar la GUI remotamente. Esto en una red local funciona "bien", con ciertos lags en cuanto al refresco de la pantalla, haciéndolo un poco incómodo en algunas ocasiones. A la hora de hacerlo remotamente, se hace prácticamente imposible a no ser que el acceso desde Internet sea muy bueno y los planetas estén alineados. La herramienta en local para Windows o Mac, en estos casos funciona perfectamente, permitiendo definir lo que queramos en la política del firewall y luego con la orden Instalar, se envía y se ejecuta vía SSH el fichero con la configuración (en mi caso IPTables) en el dispositivo.

15 comments :

kmlreverser dijo...

Tambien esta ufw junto a GUFW es algo mas simple pero cumple la mision de firewall esta muy bien porque se puede controlar desde el terminal o desde las X

Johans A dijo...

Muy bueno el articulo, Me gustaria saber  tu opinion sobre Endian Firewall. 

Marcos Alberto Sanmartín Perei dijo...

Me parece un poco complicado pero todo sería probarlo y así no tengo que cambair de Firewall una vez me pase a Linux.

Pero para Windows 7 que opinas sobre el Firewall que trae? Muchos dicen que es bueno... aunque yo uso COMODO.

Madrikeka dijo...

Yo uso este Fw en el trabajo desde hace mas de un año y la verdad que está muy bien, pero como dices, para una única máquina.

La verdad que estuve buscando otras aplicaciones parecidas para cambiarla, pero quedé muy contenta con el resultado.

Tiene lista de correo, no muy activa por parte de los usuarios, pero si tienes un problema te contesta enseguida la propia gente de FWBuilder.

Un saludo.

Devnull dijo...

Muy completo Lorenzo. Gracias por el articulo.
Un punto no cubierto: comunicaciones firewall y cliente GUI? ;-)

alosfogones dijo...

En ese aspecto está muy bien pfsense que es un appliance basado en freeBSD que se maneja via web y que lleva integradas otras cosas como squid, OpenVPN ...

Lorenzo_Martinez dijo...

En el caso de Fwbuilder,  la comunicación entre GUI y fw se realiza via SSH (ya sea con usuario/contraseña como con certificado). En los que son web, al estar la herramienta de gestión en el propio firewall, la comunicación es local. En los firewalls que tienen su propia herramienta cliente/servidor, suelen utilizar su propio protocolo de gestión.

Lorenzo_Martinez dijo...

Me lo apunto! Es un fork de un firewall libre que también miré hace años: M0n0wall. En ese estilo, también he oido hablar muy bien de smoothwall

Lorenzo_Martinez dijo...

Si quiere hacer una config en HA con fwbuilder, acabo de ver que SI que se puede. Aquí tienes el procedimiento: http://www.linuxjournal.com/article/10964

Lorenzo_Martinez dijo...

La verdad es que no soy precisamente el más adecuado para hablar de firewalls personales en Windows, fundamentalmente porque uso Mac y Linux como sistema operativo de escritorio y sí, reconozco que en máquinas virtuales aún uso XP...
EL firewall de Comodo suele tener buena fama y alguno de mis compañeros de SbD sé que lo utilizan así que doy por sentado que debe estar bien. Siento no poder darte una opinión de mayor valor en este tema.
Lo que sí que te puedo recomendar es que utilices una herramienta desarrollada por Yago, llamada Patriot-NG http://www.security-projects.com/?Patriot_NG, que complementa a modo de Host-IDS/IPS la seguridad de Windows.

Lorenzo_Martinez dijo...

No lo conocía, pero da la sensación de ser una GUI para administrar el firewall personal en Ubuntu, ¿no?
Fwbuilder vale para administrar las reglas de una máquina ya sea a nivel local o máquinas remotas.

Lorenzo_Martinez dijo...

No he tenido la oportunidad de probarlo, pero tiene buena pinta... Si haces una buena review del producto y nos la quieres mandar a modo de contribución, le echamos un vistazo!

Sergio Pozo dijo...

Hola,
En la Universidad de Sevilla estamos trabajando en un producto con un enfoque similar en algunos aspectos FWBuilder, pero que pensamos que aporta muchas más ventajas competitivas y protegido con propiedad intelectual. Ahora mismo estamos en fase de arranque de la spin-off y buscando algo de capital semilla. Hay un vídeo con algunas de sus características aquí (si queréis ver la gestión con varios firewalls, hay que irse casi al final, pero os recomiendo verlo entero):
http://www.youtube.com/watch?v=uYe5q7IbBCw

CONFIDDENT es una herramienta visual para la gestión inteligente de rulesets de firewalls cuyos objetivos principales son conjuntamente la reducción de los costes operativos, la velocidad en la gestión de cambios, y el incremento de la seguridad y calidad del ruleset.

En un modelo único integra cualquier producto de cualquier fabricante, de manera que el usuario si no quiere no tiene por qué saber con qué firewall está trabajando. Integra un motor de auditoría que se puede ejecutar online y offline porque es muy eficiente. Gracias al modelado se pueden automatizar migraciones entre fabricantes incluso cuando hay cambios topológicos, ya que el modelo de ruleset es independiente de la topología de la red. Así un mismo modelo de ruleset, se puede desplegar en cualquier topología formada por firewalls de diferentes fabricantes sin que el usuario tenga que tener
en cuenta ni la topología ni los fabricantes. Es decir, "nos olvidamos de qué reglas van en cada firewall", pues lo automatiza la herramienta. Incluso se si importan rulesets a la herramienta para luego gestionar con ella los firewalls, es posible que (sin hacer cambios), el código que se genere y en qué firewall se ponga cada regla, no tenga nada que ver con lo que el usuario tenía inicialmente. El enfoque es "olvidarnos de que hay una línea de comandos detrás". Similar a cómo nadie mira ahora el código que genera un compilador de C o el bytecode de Java.La auditoría tiene la particularidad de que, además poder
ofrecer resultados online (a medida que se diseña el modelo de ruleset) por su rendimiento, devuelve el menor número de reglas que hay que corregir que eliminar todos los errores, al contrario de otras soluciones que devuelven un Top10 bajo un criterio no definible por el usuario.A ver qué os parece!!twitter.com/blitter_es

sargas dijo...

hola amigos
les quiero hacer una pregunta, ya que en mis estudios me están pidiendo, que configure un firewall y no encuentro la configuración para el acceso a Escritorio Remoto windows espero me puedan ayudar por favor.
gracias desde ya

Hose dijo...

Recomendar buscando una herramienta gratuita para Linux, Windows y Mac OX S - Valentina Studio http://www.valentina-db.com/en/valentina-studio-overview

Puede instalar Valentina Studio (GRATIS) directamente desde Mac App Store: https://itunes.apple.com/us/app/valentina-studio/id604825918?ls=1&mt=12