El núcleo de Linux debe configurarse para que dé soporte a las funciones de cortafuegos de IP. Sólo hay que seleccionar las opciones adecuadas cuando se realiza un make menuconfig del núcleo. [1] En el Capítulo 3 se describe cómo hacerlo. En los núcleos 2.2, las siguientes opciones deberían ser seleccionadas:
Networking options ---> [*] Network firewalls [*] TCP/IP networking [*] IP: firewalling [*] IP: firewall packet logging |
En cambio, en los núcleos 2.4.0 y posteriores se deberían seleccionar estas opciones:
Networking options ---> [*] Network packet filtering (replaces ipchains) IP: Netfilter Configuration ---> . <M> Userspace queueing via NETLINK (EXPERIMENTAL) <M> IP tables support (required for filtering/masq/NAT) <M> limit match support <M> MAC address match support <M> netfilter MARK match support <M> Multiple port match support <M> TOS match support <M> Connection state match support <M> Unclean match support (EXPERIMENTAL) <M> Owner match support (EXPERIMENTAL) <M> Packet filtering <M> REJECT target support <M> MIRROR target support (EXPERIMENTAL) . <M> Packet mangling <M> TOS target support <M> MARK target support <M> LOG target support <M> ipchains (2.2-style) support <M> ipfwadm (2.0-style) support |
La orden ipchains aparece en la mayoría de las distribuciones de Linux basadas en los núcleos 2.2. Si desea compilarla usted mismo, puede encontrar el paquete con el código fuente en el sitio de desarrollo http://www.rustcorp.com/linux/ipchains/. Con el paquete del código fuente se incluye un guión [2] denominado ipfwadm-wrapper que imita a la orden ipfwadm, pero que realmente invoca la orden ipchains. La migración de una configuración preexistente de cortafuegos resulta menos costosa gracias a este complemento.
[1] | 'firewall packet logging' (N. del T.: "registro de paquetes del cortafuegos" en español) es una característica especial que permite escribir una línea de información en un dispositivo especial y visible para usted por cada datagrama que coincida con un regla del cortafuegos. |
[2] | N. del T.: 'script' en el original en inglés |