Iptables es una herramienta muy útil en la vida de todo sysadmin, con ella se puede filtrar tráfico, redirigirlo, realizar modificaciones sobre este o incluso priorizarlo. En esta ocasión veremos como natear/enmascarar una red y redirigir tráfico de entrada, este suele ser un escenario tÃpico en una red casera en la que tenemos un router que sirve de gateway al resto de equipos. De este modo con una sola ip pública podremos salir a Internet y si necesitamos que algún puerto de uno de los equipos internos esté accesible al exterior será posible.
Lo primero que debemos tener claro es la diferencia entre enmascarar y source-natear, enmascarar dejaremos que el kernel decida que ip origen debe utilizar cuando reenvie el paquete, en cambio con SNAT decidiremos nostros que ip debe utilizarse, esto resulta útil si se tienen varias ips WAN por ejemplo y deseamos utilizar una u otra dependiendo del equipo interno de nuestra LAN.
Primero habilitaremos el enrutado en el kernel:
net.ipv4.ip_forward = 1
Si queremos enmascara es tan sencillo como:
En cambio si queremos hacer SNAT:
Otro aspecto interesante de iptables es la redirección de puerto, esto se consigue del siguiente modo:
Para una redirección a otra máquina: