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