Forwarding con Arno-iptables-firewall

Compartir internet con arno-iptables-firewall

En esta guía veremos como configurar arno-iptables-firewall para compartir la conexión a internet , no me detendré a profundizar en este script.
Arno-iptables-firewall se encuentra en los repositorios Debian :

Si lo único que se quiere es instalar un Firewall en tu ordenador personal puedes utilizar la variada gama de gui que se encuentran en los repositorios , como firestarter , guarddog etc. Pero si lo que queremos es un Firewall para nuestro ordenador , servidor o router, mucho mejor Arno's firewall ya que es más potente (y complejo) y no necesita más que Bash e Iptables para funcionar.

sudo aptitude install arno-iptables-firewall

una guía para su instalación la podemos encontrar en :
http://debiantotal.blogspot.com/2007/04/instalar-firewall-arno-iptables....
cabe destacar que su instalación no presenta particulares dificultades.
Arno's iptables entre otras muchas cosas nos permite:

- Todo lo que permite NAT y SNAT

- Soporte a múltiples conexiones de internet con balanceo de carga

- Filtro mediante MAC

- Crear DMZs

- Detección de escaneo de puertos

- Protección contra varios ataques DoS como SYN-floodng y ICMP-flooding

- Administrar perfectamente los puertos de nuestro sistema

- Protección contra ataques de fuerza bruta por SSH

Y todo mediante la simple configuración de un archivo de texto /etc/arno-iptables-firewall/firewall.conf.
Para más información visita la web de Arno's Firewall (http://rocky.molphys.leidenuniv.nl/)

Pues bien...como he dicho antes , lo que nos interesa es como en pocos pasos logramos compartir nuestra conexión internet.
Luego de haber instalado arno-iptables-firewall , abriremos la consola y procederemos a reconfigurar el script para lograr nuestro objetivo.

sudo dpkg-reconfigure arno-iptables-firewall

Donde deberemos responder algunas preguntas básicas e intuitivas:
(cabe notar que esto es una configuración básica y totalmente funcional)

Aquí nos hace una breve explicación acerca de las interfaces externas , que es/son aquellas que tendrán salida a redes no confiables , como por ejemplo internet.
En nuestro caso sera/serán aquellas interfaces con las que nos conectamos a internet y que las deberemos especificar (si son mas de una) separadas por espacio.

En este caso dispongo de dos interfaces.

Aquí especificamos como se conecta/n , si mediante DHCP o no.

Aquí comenzaremos a configurar los puertos que deseamos tener abiertos , si no especificamos ninguno , por defecto estarán todos cerrados para el trafico entrante.

Aquí es aconsejable la respuesta No para que se ignoren las ICMP request , osea los pings desde el exterior.

Aquí es donde le diremos cual sera la interfaz que usaremos para la comunicación interna de nuestra red , en pocas palabras , la interfaz que usaremos para "repartir" internet.

Aquí la nomenclatura de la/s subredes que serán conectadas a la interfaz interna.

Obviamente la respuesta sera habilitar Nat a las subredes internas.

Aquí especificamos cual de la/s subredes internas tendrán salida al exterior , aquellas que no especifiquemos no saldrán hacia el exterior.

En la mayoría de los casos (domésticos) sera solamente una , y es el objetivo de esta guía permitir la salida hacia el exterior de la misma.

Reiniciamos el script para que los cambios tengan efecto.

Configuración de los ordenadores

En el ordenador donde esta corriendo arno-iptables-firewall configuraremos la interfaz interna con ip fija , para que los demás ordenadores lo puedan encontrar.
Ejemplo:

iface eth0 inet static
            address 192.168.1.1
            netmask 255.255.255.0
            network 192.168.1.0
            broadcast 192.168.1.255
            dns-nameservers 213.140.2.12 213.140.2.21

Obviamente deberemos configurar los ordenadores de nuestra red interna para que tengan salida al exterior.

sudo nano /etc/network/interfaces

Esto es un ejemplo de un ordenador(de la red interna) conectado por su interfaz eth0

iface eth0 inet static
address 192.168.1.2
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1 ------------IMPORTANTE : esta es la ip de la interfaz interna del ordenador que nos da internet.
# dns-* options are implemented by the resolvconf package, if installed
dns-nameservers 213.140.2.12 213.140.2.21