iptables – permitir salida a internet

Partimos de la base de un servidor con dos tarjetas de red, eth0 la externa conectada a la red de la puerta de enlace a Internet, y eth1 la interna conectada a la red de la empresa. La configuración de eth1 es indiferente, en mi caso 192.168.200.0/24, pero la que enrutará pinta así:

auto eth0 
iface eth0 inet static 
address 192.168.1.254 
netmask 255.255.255.0 
network 192.168.1.0 
broadcast 192.168.1.255 
gateway 192.168.1.1

Siendo 192.168.1.0 la subred donde está el router (192.168.1.1 en mi caso).

Tenemos que activar ipforwarding, en tiempo real:

# sysctl -w net.ipv4.ip_forward=1

Para hacer los cambios persistentes hay que editar el fichero /etc/sysctl.conf y quitar el comentario (#) de la linea donde se establece la asignación net.ipv4.ip_forward=1
Después necesitamos unas iptables mágicas como estas:

Si la política por defecto es DROP, añade esta primero:

# iptables -A INPUT -i eth0 -j ACCEPT

La que enmascara la IP interna con la pública para permitir uso de Internet en la LAN:

# iptables -t nat -A POSTROUTING -s 192.168.200.0/24 -o eth0 -j MASQUERADE

Siendo eth0 la interfaz conectada al router y 192.168.200.0/24 nuestra LAN de clientes ansiosos de Internet.

Para hacer las reglas iptables persistentes primero las guardamos,

# iptables-save > /etc/mis-iptables

y después podemos editar el fichero /etc/network/interfaces y añadir esta linea:

post-up iptables-restore < /etc/mis-iptables

Un comentario

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.