INSPECT

Como ya hemos comentado, al instalar una política en un cortafuegos (máquina con el módulo de firewall) desde el servidor de gestión (máquina donde se ha instalado el Management Module) Firewall-1 genera en el mismo servidor de gestión un código - un script, un simple fichero ASCII editable - en un lenguaje de alto nivel propio de Firewall-1: este lenguaje se denomina INSPECT, es orientado a objetos, y está diseñado explícitamente para trabajar con cortafuegos, lo que permite por ejemplo programar las acciones típicas de un firewall: detener una trama, aceptarla, generar un registro...

El script de INSPECT generado a partir de la política editada en el gestor gráfico (o desde línea de comandos, mediante la orden `fw gen') es un fichero `.pf' que se encuentra en $FWDIR/conf/; este archivo es compilado mediante fwc y a partir de él se genera un código (un fichero `.fc') dentro de $FWDIR/tmp/ junto a otros archivos adicionales en el mismo directorio. Como hemos dicho el código generado se transmite al módulo de cortafuegos a través de un canal seguro, y en este módulo los demonios de Firewall-1 son los encargados de cargar el código en el núcleo del operativo, comenzando así a ser operativa la nueva política.

La carga del código en el cortafuegos se realiza de forma automática tras generar y compilar el fichero `.pf' desde el editor gráfico de políticas, aunque puede llevarse a cabo manualmente mediante órdenes como `fw load' o `fw fetch'; este código se ejecuta en una máquina virtual ubicada en el núcleo del operativo, y su ejecución básicamente consiste en inspeccionar todas las tramas que pasan por el firewall para decidir qué hacer con ellas.

Evidentemente es imposible describir aquí de forma exhaustiva tanto la sintaxis como la funcionalidad de INSPECT; para obtener más información acerca de este lenguaje podemos consultar la documentación que acompaña a Firewall-1, en concreto el capítulo 11 del `Architecture and Administration User Guide', que presenta una excelente introducción a INSPECT.
© 2002 Antonio Villalón Huerta