Os pego uno un poquillo más elaborado y que funciona tb para las conexiones FTP y el envío de ficheros por DCC (por IRC)
Código:
#!/bin/bash
##
# ROUTER script
##
# Definimos las variables
INTERNA="eth1"
EXTERNA="eth0"
INSMOD="/sbin/insmod"
IPTABLES="/sbin/iptables"
echo "Iniciando la conexión compartida a Internet"
echo " Interfaz interna: $INTERNA"
echo " Interfaz externa: $EXTERNA"
echo " Cargando los modulos..."
LISTAMODULOS="ip_tables ip_conntrack ip_contrack_ftp ip_conntrack_irc ip_table_nat ip_nat_ftp ip_nat_irc"
for mod in $LISTAMODULOS
do
echo " Cargando: $mod"
if [ -f /lib/modules/`uname -r`/kernel/net/ipv4/netfilter/$mod.o ];
then
$INSMOD $mod
fi
done
echo " Hecho."
echo " Habilitando el reenvio de paquetes"
echo 1 > /proc/sys/net/ipv4/ip_forward
echo " Activando las reglas de IPTABLES"
# Ponemos las reglas por defecto
$IPTABLES -P INPUT ACCEPT
$IPTABLES -F INPUT
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -F OUTPUT
$IPTABLES -P FORWARD DROP
$IPTABLES -F FORWARD
$IPTABLES -t nat -F
# Habilitamos el tráfico por NAT
$IPTABLES -A FORWARD -i $EXTERNA -o $INTERNA -m \
state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -i $INTERNA -o $EXTERNA -j ACCEPT
$IPTABLES -A FORWARD -j LOG
# Encendemos el SNAT (MASQUERADE) en $EXTERNA
echo " Habilitando SNAT en $EXTERNA"
$IPTABLES -t nat -A POSTROUTING -o $EXTERNA -j MASQUERADE
Espero que os sirva. Por cierto epple una de las cosas que tienes que hacer es cerrar el tráfico FORWARD y solo habilitar para las conexiones ESTABLISHED y RELATED
Salu2.Ferdy