Iptables

Miguel Oyarzo O. admin en aim.cl
Lun Abr 27 10:03:07 CLT 2009


Juan Andres Ramirez escribió:
> Hola listeros:
>      Veamos algo mal tengo en el orden de las reglas iptables porque
> al tratar de bloquear una ip publica no pasa nada:
> 
> ## ESTABLECEMOS POLITICA POR DEFECTO
> iptables -P INPUT ACCEPT
> iptables -P OUTPUT ACCEPT
> iptables -P FORWARD ACCEPT
> 
> #DEJAMOS LIBRES LAS CONECCIONES LOCALES
> iptables -A INPUT -i lo -j ACCEPT
> 
> #TENEMOS ACCESO A LA RED DESDE LA INTERFACE bond0
> iptables -A INPUT -s 192.168.100.0/24 -i bond0 -j ACCEPT

> #ACCESO A WEB
> iptables -A FORWARD -s 192.168.100.0/24 -i bond0 -p tcp --dport 80 -j ACCEPT
> # ACCESOS A HTTPS
> iptables -A FORWARD -s 192.168.100.0/24 -i bond0 -p tcp --dport 443 -j ACCEPT
> 
> # Aceptamos que consulten los DNS
> iptables -A FORWARD -s 192.168.100.0/24 -i bond0 -p tcp --dport 53 -j ACCEPT
> iptables -A FORWARD -s 192.168.100.0/24 -i bond0 -p udp --dport 53 -j ACCEPT

Todas las lineas FORWARD ACCEPT hasta aqui son inutiles dado que tu 
politica FORWARD es ACCEPT

  > #CERRAMOS EL RESTO DE LOS PUERTOS
> iptables -A FORWARD -s 192.168.100.0/24 -i bond0 -j DROP

No deberia existir esta linea

> Esto no esta funcionando...no bloquea la ip que le especifico,
> 
> #Bloqueo a direccion ip cualquiera
> iptables -A FORWARD -s 200.29.182.140 -j REJECT

Deberias pensar en -d 200.29.182.140 REJECT mejor,
pero como antes estas autorizando toda la red para usar WEB (http, https 
y dns), esta linea no tiene efecto alguno en esas puertas.


> Probe tambien con:
> iptables -A FORWARD -s 200.29.182.140 -p TCP --dport 80 -j REJECT

Esta malo, estas confundiendo el sentido de los paquetes.
-s quiere decir SOURCE (que venie de). Debes usar -d (con destino a)

> Ahora si cambio la linea : iptables -A FORWARD -s 192.168.100.0/24 -i
> bond0 -p tcp --dport 80 -j ACCEPT  por REJECT, efectivamente bloquea
> la navegacion por web.
> Cualquier tips lo agradeceria.

Cierra tu politica forward y abre lo que requieras. Al final del script 
debes poner una regla para los paquetes relativos, sino no funcionará al 
cerrar la potica.

Sugerencia:
Deberias reescribir el script respetando el orden de precedencias de 
iptables. Tu ejemplo es ilogico y producira efectos inesperados.
(con la mitad de las lineas lograras lo que deseas)


Saludos,

=====================================
Miguel A. Oyarzo O.
Ingeniería en Redes y Comunicaciones
Linux User: # 483188 - counter.li.org
Austro Internet S.A. & INALAMBRICA S.A.
Teléfono: [+05661] 710030
Punta Arenas - Chile
=====================================




Más información sobre la lista de distribución Linux