Anda di halaman 1dari 3

Facultad de Ciencias Econmicas - UBA

Materia: Redes Informticas Reglas de firewall (IPFilter) Gua Prctica 3


Introduccin
La presente gua prctica es un resumen de la sintaxis y ejemplos de configuracin para el software IPFilter, que permite montar un firewall bajo diversos sistemas Unix (AIX 5.3, NetBSD, FreeBSD, Solaris 10, OpenSolaris, SGI IRIX 6.5, HP-UX 11.11, Compaq Tru64 5.1, QNX 6). El software en cuestin es de cdigo abierto, y los sistemas Unix gratuitos en los que se recomienda probarlo (ya que el mismo viene incluido por defecto en el sistema base) son:

Solaris 10 OpenSolaris FreeBSD NetBSD

A diferencia de la sintaxis crptica de productos similares, tal es el caso de IPTABLES o IPCHAINS (que permiten montar firewalls bajo Linux) la sintaxis de IPFilter resulta muy amigable, ya que los comandos utilizados por las reglas pueden interpretarse muy claramente con mnimos conocimientos de TCP/IP y de Ingls. El sitio desde donde puede descargarse IPFilter es http://coombs.anu.edu.au/~avalon/ La documentacin ms completa que se encuentra disponible para este producto es el IPFilter HOWTO, disponible en: http://www.obfuscation.org/ipf/

Sintaxis modelo
Cada regla se forma con ciertas palabras clave que la definen, y contemplan la accin a tomar en caso de que un paquete evale la regla de forma positiva. Estas palabras clave deben encontrarse en un orden especfico de izquierda a derecha en cada una de las reglas. Bsicamente, el orden de las mismas sigue el esquema presentado a continuacin.
ACTION RET FLOW OPTIONS PROTO from SRC_ADDR PORT_NUM to DST_ADDR PORT_NUM STATEFUL

ACTION = block | pass | count Esta opcin implica la accin a seguir por el kernel para un paquete determinado que pasa por el firewall, de evaluarse positivo esta regla. Block determinar un bloqueo, pass dejar pasar el paquete, mientras que count solo incrementar contadores internos del kernel. RET = return-rst | return-icmp-as-dest(port-unr) Esta opcin permite especificar el modo en el cual sern bloqueados los paquetes. De no especificarse ningn modo, la accin por defecto ser no responder. La opcion return-rst permite devolver al origen la respuesta estandr que el protocolo prevee para un puerto TCP cerrado. La opcin return-icmp-as-dest(port-unr) resulta anloga a la anterior, pero para el protocolo UDP.

FLOW = in | out Esta opcin especifica si se analizarn paquetes entrantes (in) o salientes (out). Si no se especifica interfaz alguna en el resto de la regla, se consideran salientes todos los paquetes que tienen como origen fsico alguna interfaz del firewall, y como destino una red o grupo de redes directamente conectado a esa misma interfaz. Se consideran entrantes los que fluyen en sentido inverso, es decir, los que ingresan provenientes de dichas redes hacia cualquier interfaz del firewall. OPTIONS = log | quick | on interface-name Esta opcin permite agregar opciones adicionales a la regla. La palabra clave log implicar que se incluir en un log de eventos la regla que evalue el comportamiento descrito. La palabra clave quick implica que ante un paquete que evala la regla, se tomar la accin prevista para la misma, sin leer ninguna regla que se encuentre debajo. La palabra clave on seguida del nombre de la interfaz implica que slo se considerarn para esa regla los paquetes que fluyen a travs de la interfaz especificada. Ntese que la ausencia de la palabra clave quick implica que ante cada paquete se evaluara la lista de reglas completa, y se tomara la accin en funcion de la ltima regla que evalu positivo para el paquete en cuestin. PROTO = proto udp | proto tcp | proto icmp Esta opcin permite especificar el protocolo (udp, tcp o icmp), y este se menciona en conjunto con la palabra reservada proto. SRC_ADD,DST_ADDR = IP/netmask | any Estas opciones permiten especificar el origen y destino de los paquetes, a nivel IP. Pueden definirse redes o nmeros IP especficos, o utilizarse la palabra clave any para especificar cualquier nmero IP. PORT_NUM = (port = port number) Esta opcin permite especificar el nmero de puerto (tcp o udp) a evaluarse por la regla. STATEFUL = keep state Esta opcin permite crear reglas implcitas que permitan el trfico en sentido contrario. Normalmente una regla solo permite paquetes en una direccin, de manera que agregando esta palabra reservada se garantiza que el intercambio de paquetes que genere a partir de una conexin permitida por esta regla no sea bloqueado por el firewall.

Ejemplos:

A continuacin, se explicarn algunas reglas a modo de ejemplo prctico.

block out quick proto tcp from any to any port = 1232 Esta regla bloquea paquetes tcp salientes, desde cualquier origen, con destino a cualquier IP, dirigidos al puerto 1232/tcp del destino. Debido a que se utiliza la palabra clave quick, la regla es ejecutada inmediatamente luego de evaluar positivo. Es decir, si se observa un paquete tcp saliente, con destino al puerto 1232, el mismo es bloqueado de forma inmediata sin leer reglas adicionales que existan a continuacin en el listado.

block return-rst in log quick on tun0 proto tcp from any to any port = 22 Esta regla bloquea paquetes tcp entrantes en la interfaz tun0, que van dirigidos al

puerto 22 (ssh) desde cualquier origen. Como respuesta se devuelve al host de origen un mensaje de que el puerto se encuentra cerrado (flag RSET en TCP). Debido a que se utilizan las palabras claves quick y log, la regla es ejecutada inmediatamente luego de evaluar positivo, y registrada en un log del sistema, respectivamente.

pass in quick on tun0 proto icmp from any to any Esta regla permite paquetes icmp entrantes en la interfaz tun0 desde cualquier origen y hacia cualquier destino. Debido a que se utiliza la palabra clave quick, la regla es ejecutada inmediatamente luego de evaluar positivo.

block in all Esta regla bloquea absolutamente todos los paquetes entrantes.

Anda mungkin juga menyukai