Duda con Iptables

La duda va a ser un poco extensa, así que pido disculpas si cometo algun error, mi nivel tampoco es elevado, aunque agradeceria toda ayuda posible.

Lo primero que voy a hacer es describir la red en la que me encuentro, porque creo que es necesario para poder resolver con éxito mi duda.

Tengo una oficina con dos subredes, la propia oficina, y un aula pequeña con clientes ligeros. La oficina esta en la red 192.168.1.0/24 (eth0), con un ordenador que hace las funciones de servidor, conectado directamente al router con IP 192.168.1.25. Este servidor dispone de lo normal, servidores dhcp, dns, samba, iptables, etc... El ordenador se conecta al router por la IP 10.0.0.1, y éste tiene asignada la IP 10.0.0.2, para la subred que da salida a internet 10.0.0.0/24 (eth2).

Por otra parte tengo un pc en la oficina que hace las funciones de servidor de clientes ligeros bajo Tcos, que sirve al aula por la subred 10.0.3.0/24 y tiene acceso a inet conectandose al server por la ip mencionada antes (192.168.1.25).

El problema que tengo es al configurar el iptables del servidor Tcos, tengo un itpables para el server pero con ese no tengo ningun problema. Con el tcos creo que estoy fallando o liandome con los fordwars, o quizás se me escapa alguna regla extra que no contemplo en mi configuración.

El caso es que cuando activo el iptables del tcos los clientes pesados que se conecten a la red del aula y por tanto no reciban imagen del tcos, no tienen acceso a inet. Creo que el forward está bien hecho pero no debe estarlo porque no consiguen acceso xD A ver si alguien sabe decirme en que fallo.

De cualquier forma, agradeceria cualquier ayuda del tipo que sea. Gracias a todos. Adjunto el codigo del iptables de Tcos Server. Gracias a todos :)

# Para restaurar :
# cat oxega-iptables.sh | iptables-restore -c
# Ejecutar!!!! PRECISO!!! Activa las redirecciones, sin ellas todos los pcs conectados al nuestro no podran funcionar echo 1 > /proc/sys/net/ipv4/ip_forward
# para que el archivo "/proc/sys/net/ipv4/ip_forward" no se sobreescriva cada vez que reiniciamos hay que añadir la siguiente linea "net.ipv4.ip_forward = 1" en el archivo /etc/sysctl.conf

*nat
:PREROUTING ACCEPT [6432:434479]
:POSTROUTING ACCEPT [464:34931]
:OUTPUT ACCEPT [554:51688]
#-A POSTROUTING -o eth0 -j MASQUERADE
# Redireccionamos a OpenExpertia (Sacarino)
# -A PREROUTING -d 10.0.0.2/32 -i eth1 -p tcp -m tcp --dport 2280 -j DNAT --to-destination 192.168.1.38:80
# Redireccionamos a SSH (Server)
# -A PREROUTING -d 10.0.0.2/32 -i eth1 -p tcp -m tcp --dport 22 -j DNAT --to-destination 192.168.1.25:22
# Redireccionamos a SSH (Sacarino) por el puerto 2222
# -A PREROUTING -d 10.0.0.2/32 -i eth1 -p tcp -m tcp --dport 2222 -j DNAT --to-destination 192.168.1.38:22

-A POSTROUTING -s ! 192.168.1.26/32 -o eth1 -j SNAT --to-source 192.168.1.26

COMMIT
#*mangle
#:PREROUTING ACCEPT [424568:382871613]
#:INPUT ACCEPT [5557:1671587]
#:FORWARD ACCEPT [419000:381197653]
#:OUTPUT ACCEPT [3304:722870]
#:POSTROUTING ACCEPT [422120:381898423]
#-A PREROUTING -j CONNMARK --restore-mark
#-A PREROUTING -m mark --mark 0x0/0xff -m mac --mac-source 00:02:CF:6E:4C:54 -j MARK --set-mark 0x1
#-A PREROUTING -m mark --mark 0x0/0xff -j MARK --set-mark 0x1
#-A PREROUTING -j CONNMARK --save-mark
#-A OUTPUT -j CONNMARK --restore-mark
#-A OUTPUT -m mark --mark 0x0/0xff -j MARK --set-mark 0x1
#COMMIT
*filter
:INPUT DROP [1:60]
:FORWARD DROP [0:0]
:OUTPUT DROP [0:0]
:fdns - [0:0]
:ffwdrules - [0:0]
:fglobal - [0:0]
:fnoexternal - [0:0]
:fredirects - [0:0]
:ftoexternalonly - [0:0]
:iexternal - [0:0]
:iexternalmodules - [0:0]
:iglobal - [0:0]
:imodules - [0:0]
:inoexternal - [0:0]
:inointernal - [0:0]
:log - [0:0]
:ointernal - [0:0]
:omodules - [0:0]
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -j iexternalmodules
-A INPUT -j iexternal
-A INPUT -j inoexternal
-A INPUT -j imodules
-A INPUT -p tcp --dport 9100 -m state --state NEW -j ACCEPT
#-A INPUT -p tcp --dport 8081 -m state --state NEW -j ACCEPT
-A INPUT -j iglobal
#-A INPUT -j LOG
-A INPUT -j DROP
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -p icmp -j ACCEPT
-A FORWARD -p tcp --dport 6667 -j ACCEPT
-A FORWARD -p tcp --dport 9100 -m state --state NEW -j ACCEPT
# -A FORWARD -p tcp --dport 8081 -m state --state NEW -j ACCEPT
# -A FORWARD -j fredirects
-A FORWARD -j ffwdrules
-A FORWARD -j fnoexternal
-A FORWARD -j fdns
-A FORWARD -j fglobal
-A FORWARD -j LOG
-A FORWARD -j DROP
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -p icmp  -j ACCEPT
-A OUTPUT -j ointernal
-A OUTPUT -j omodules
#HTTPS
-A OUTPUT -p tcp -m tcp --dport 443 -m state --state NEW -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 443 -m state --state NEW -j ACCEPT

#dansguardian
#-A OUTPUT -p tcp -m tcp --dport 8081 -m state --state NEW -j ACCEPT
#SSH
-A OUTPUT -p tcp -m tcp --dport 22 -m state --state NEW -j ACCEPT
#irc
-A OUTPUT -p tcp -m tcp --dport 6667 -m state --state NEW -j ACCEPT
#-A OUTPUT -j LOG
-A OUTPUT -j DROP
-A fdns -d 80.58.61.250/32 -p udp -m state --state NEW -m udp --dport 53 -j ACCEPT
-A fdns -d 80.58.61.254/32 -p udp -m state --state NEW -m udp --dport 53 -j ACCEPT
-A fdns -d 192.168.1.25/32 -p udp -m state --state NEW -m udp --dport 53 -j ACCEPT
-A ffwdrules -i eth0 -j RETURN
-A fglobal -p tcp -j ACCEPT
-A fglobal -p tcp -m tcp --dport 80 -j ACCEPT
-A fnoexternal -i eth1 -m state --state NEW -j DROP
-A fredirects -d 192.168.1.38/32 -i eth1 -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A fredirects -d 192.168.1.25/32 -i eth1 -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A fredirects -d 192.168.1.38/32 -i eth1 -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A ftoexternalonly -o eth1 -j ACCEPT
-A ftoexternalonly -j DROP
-A iexternal -i eth0 -j RETURN
-A iexternalmodules -i eth0 -j RETURN
-A iexternalmodules -p tcp -m tcp --dport 1701 -j ACCEPT
-A iexternalmodules -i eth1 -d 192.168.1.26 -p tcp -m tcp --dport 22 -j ACCEPT

#SSL-IMAP4
-A iglobal -p tcp -m tcp --dport 25 -m state --state NEW -j ACCEPT 
#Microsoft-Server
-A iglobal -p tcp -m tcp --dport 143 -m state --state NEW -j ACCEPT
#Pop3-SSL
-A iglobal -p tcp -m tcp --dport 995 -m state --state NEW -j ACCEPT
#Pop3
-A iglobal -p tcp -m tcp --dport 110 -m state --state NEW -j ACCEPT
#Gmail
-A iglobal -p tcp -m tcp --dport 465 -m state --state NEW -j ACCEPT

#-A iglobal -m state --state NEW -j ACCEPT
#Netbios
-A iglobal -p tcp -m tcp -s 10.0.3.0/24 --dport 137 -j ACCEPT
-A iglobal -p tcp -m tcp -s 10.0.3.0/24 --dport 138 -j ACCEPT
-A iglobal -p tcp -m tcp -s 10.0.3.0/24 --dport 139 -j ACCEPT
-A iglobal -p udp -m udp -s 10.0.3.0/24 --dport 137 -j ACCEPT
-A iglobal -p udp -m udp -s 10.0.3.0/24 --dport 138 -j ACCEPT
-A iglobal -p udp -m udp -s 10.0.3.0/24 --dport 139 -j ACCEPT

#Active Directory (equivalente LDAP Windows)
-A iglobal -p tcp -m tcp -s 10.0.3.0/24 --dport 445 -j ACCEPT
-A iglobal -p udp -m udp -s 10.0.3.0/24 --dport 445 -j ACCEPT

#-A iglobal -p tcp -m tcp --dport 901 -m state --state NEW -j ACCEPT

#CUPS
-A iglobal -p tcp -m tcp --sport 631 --dport 631 -m state --state NEW -j ACCEPT
-A iglobal -p tcp -m tcp --dport 631 -m state --state NEW -j ACCEPT
#NTP (obtener la hora)
-A iglobal -p udp -m udp --dport 123 -m state --state NEW -j ACCEPT
#LDAP
-A iglobal -p tcp -m tcp --dport 389 -m state --state NEW -j ACCEPT
#DNS
-A iglobal -p udp -m udp --dport 53 -m state --state NEW -j ACCEPT
#DHCP
-A iglobal -p udp -m udp --dport 67 -m state --state NEW -j ACCEPT

#SSH
-A iglobal -p tcp -m tcp --dport 22 -m state --state NEW -j ACCEPT
#HTTPS
-A iglobal -p tcp -m tcp --dport 443 -m state --state NEW -j ACCEPT

-A inoexternal -i eth1 -m state --state NEW -j DROP
-A ointernal -d 80.58.61.250/32 -p udp -m state --state NEW -m udp --dport 53 -j ACCEPT
-A ointernal -d 80.58.61.254/32 -p udp -m state --state NEW -m udp --dport 53 -j ACCEPT
-A ointernal -d 192.168.1.25/32 -p udp -m state --state NEW -m udp --dport 53 -j ACCEPT
#DNS
-A ointernal -p udp -m state --state NEW -m udp --dport 53 -j ACCEPT
-A ointernal -p tcp -m state --state NEW -m tcp --dport 53 -j ACCEPT

COMMIT