Configuracion basica del iptables con un problema

Hola gente del foro, les muestro mi configuracion actual de iptables, que tiene un problemon grave gravisimo, cuando las activo me bloquea mi acceso, tiene una regla para permitirle el acceso ssh a mi ip, pero debe estar mal.Sin mas les dejo el script de prueba para que opinen y me puedan ayudar a comprender mas el tema.

1 #!/bin/bash
  2
  3 echo " Se estan aplicando las reglas del firewall"
  4
  5 ## Borra todas las reglas antes de aplicarlas de nuevo
  6 iptables -F
  7
  8 ## Despues de borrar las reglas definimos las variables para las interfaces
  9 adentro="eth3"
10 afuera="eth0"
11
12 ## Permite si o si el ssh desde la IP segura
13 iptables -A INPUT -s 10.0.2.14 -d 10.0.2.21 -p tcp --dport 22 -j ACCEPT
14
15 ## El firewall hace lo que quiere (consultas dns y otras cosas)
16 /sbin/iptables -A INPUT -i lo -j ACCEPT
17 /sbin/iptables -A OUTPUT -i lo -j ACCEPT
18
19 ## Proxy transparente, todo lo que salga al puerto 80, se redirige al 3128 del localhost, donde escucha squid
20 /sbin/iptables -A INPUT -i $adentro -s 10.0.1.0/24 -p tcp --dport 3128 -j ACCEPT
21 # El resto se tira
22 /sbin/iptables -A INPUT -i $adentro -s 10.0.1.0/24 -p tcp --dport 3128 -j DROP
23
24 ## Todo lo que viene de cierta IP se deja pasar (administradores remotos)
25 #/sbin/iptables -A INPUT -i $afeura -s xxx.xxx.xxx.xxx/24 -d 0.0.0.0/0 -j ACCEPT
26
27 ## SALIDA FTP - Para que el servidor se pueda conectar a FTPs
28 /sbin/iptables -A INPUT -i $afuera -p tcp --sport 21 -m state --state ESTABLISHED -j ACCEPT
29 /sbin/iptables -A OUTPUT -o $afuera -p tcp --dport 21 -m state --state NEW,ESTABLISHED -j ACCEPT
30 # ftp activo
31 /sbin/iptables -A INPUT -i $afuera -p tcp --sport 20 -m state --state ESTABLISHED,RELATED -j ACCEPT
32 /sbin/iptables -A OUTPUT -o $afuera -p tcp --dport 20 -m state --state ESTABLISHED -j ACCEPT
33 # ftp pasivo
34 /sbin/iptables -A INPUT -i $afuera -p tcp --sport 1024:65535 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT
35 /sbin/iptables -A OUTPUT -o $afuera -p tcp --sport 1024:65535 --dport 1024:65535 -m state --state ESTABLISHED,RELATED -j ACCEPT
36
37 # Ahora hacemos enmascaramiento de la red local
38 # y activamos el BIT DE FORWARDING (imprescindible!!!!!)
39 iptables -t nat -A POSTROUTING -s 10.0.2.0/24 -o eth0 -j MASQUERADE
40 # Con esto permitimos hacer forward de paquetes en el firewall, o sea
41 # que otras máquinas puedan salir a traves del firewall.
42 echo 1 > /proc/sys/net/ipv4/ip_forward

No estableciste una política por defecto.

Supongo que tu problema esta en

## Todo lo que viene de cierta IP se deja pasar (administradores remotos)
/sbin/iptables -A INPUT -i $afeura -s xxx.xxx.xxx.xxx/24 -d 0.0.0.0/0 -j ACCEPT

Ahi estas confundiendo un concepto, con esa regla no dejas "pasar", dejas "entrar". Si quieres dejar "pasar" debes aplicarla a la cadena FORWARD, no en INPUT.

De todos modos, deberás dar un poco mas información para podes ayudarte

Gracias pato, ya corregi esa linea, aunque en el script esta comentada, me iba a fallar al activarla. le agregue una politica drop por defecto. se hace asi no? dejo el script nuevamente

1 #!/bin/bash
  2 echo " Se estan aplicando las reglas del firewall"
  3 ## Borra todas las reglas antes de aplicarlas de nuevo
  4 iptables -F
  5 ## Despues de borrar las reglas definimos las variables para las interfaces
  6 adentro="eth3"
  7 afuera="eth0"
  8
  9 ## Permite si o si el ssh desde la IP segura
10 iptables -A INPUT -s 10.0.2.14 -d 10.0.2.21 -p tcp --dport 22 -j ACCEPT
11
12 ## El firewall hace lo que quiere (consultas dns y otras cosas)
13 /sbin/iptables -A INPUT -i lo -j ACCEPT
14 /sbin/iptables -A OUTPUT -i lo -j ACCEPT
15 ## Proxy transparente, todo lo que salga al puerto 80, se redirige al 3128 del localhost, donde escucha squid
16 /sbin/iptables -A INPUT -i $adentro -s 10.0.1.0/24 -p tcp --dport 3128 -j ACCEPT
17 # El resto se tira
18 /sbin/iptables -A INPUT -i $adentro -s 10.0.1.0/24 -p tcp --dport 3128 -j DROP
19
20 ## Todo lo que viene de cierta IP se deja pasar (administradores remotos)
21 #/sbin/iptables -A INPUT -i $afeura -s xxx.xxx.xxx.xxx/24 -d 0.0.0.0/0 -j ACCEPT
22
23 ## SALIDA FTP - Para que el servidor se pueda conectar a FTPs
24 /sbin/iptables -A INPUT -i $afuera -p tcp --sport 21 -m state --state ESTABLISHED -j ACCEPT
25 /sbin/iptables -A OUTPUT -o $afuera -p tcp --dport 21 -m state --state NEW,ESTABLISHED -j ACCEPT
26 # ftp activo
27 /sbin/iptables -A INPUT -i $afuera -p tcp --sport 20 -m state --state ESTABLISHED,RELATED -j ACCEPT
28 /sbin/iptables -A OUTPUT -o $afuera -p tcp --dport 20 -m state --state ESTABLISHED -j ACCEPT
29 # ftp pasivo
30 /sbin/iptables -A INPUT -i $afuera -p tcp --sport 1024:65535 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT
31 /sbin/iptables -A OUTPUT -o $afuera -p tcp --sport 1024:65535 --dport 1024:65535 -m state --state ESTABLISHED,RELATED -j ACCEPT
32
33 # Ahora hacemos enmascaramiento de la red local
34 # y activamos el BIT DE FORWARDING (imprescindible!!!!!)
35 iptables -t nat -A POSTROUTING -s 10.0.2.0/24 -o eth0 -j MASQUERADE
36 # Con esto permitimos hacer forward de paquetes en el firewall, o sea
37 # que otras máquinas puedan salir a traves del firewall.
38 echo 1 > /proc/sys/net/ipv4/ip_forward
39
40 # Politica por defecto DROP
41 iptables -P INPUT DROP
42 iptables -P OUTPUT DROP
43 iptables -P FORWARD DROP