jueves, 24 de marzo de 2011

Porque ustedes lo pidieron IPTABLES

Iptables, el firewall de linux. Asi pudiese definirse iptables de manera resumida y algo burda. Iptables o anterior mente conocido ipchain o netfilter permite interceptar y manipular los paquetes que viajan por la red. Es una herramienta poderosa que esta incluida en todo kernell basado en linux actualmente. En realidad el nombre del proyecto que se encarga de desarrollar esta potente herramienta es mas bien conocido como Netfilter el cual esta online desde 1998 dirigido por Rusty Rusell.

Iptables te permite aumentar el control del trafico que tienes un tu red de manera muy eficiente y basicamente muy sencilla ya que su programacion es meramente lineal y no hay que ser un genio para configurarle para cosas muy basicas como por ejemplo bloqueo o filtrado de algun puerto en especifico, las sintaxis es bastante amigable con el lenguaje comun humano.

Hay tres tipos de cadenas o politicas basicas para Iptables : INPUT, OUTPUT Y FOWARD (no hay necesidad de treducir) bueno vayamos al grano, aca les dejare un pequeño ejemplo de lo que seria un script de un firewall ya completamente funcional en cualquier distro GNU-Linux. Vale aclarar esto no solo te funcionara en ubuntu, te funcionara en debian, en redhat, en centos, en fedora, en android EN TODO...

empezamos:

usare el signo de # para hacer un comentario dentro del codigo.

##aqui le damos un flush a todas las reglas que puedan estar en el momento en ejecucion en nuestra pc.
iptables -F
iptables -X
iptables -Z

##definimos las politicas por defecto del firewall
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FOWARD DROP
##empezamos a definir reglas
##empezamos permitiendo todo el accesso de nuestro propio equipo a el mismo
iptables -A INPUT -i lo -j ACCEPT
## aqui cerramos puertos 22, 21,80, para que no acepte ningun request de afuera
iptables- A INPUT -i eth0 -p tcp --dport 22 -j DROP
iptables- A INPUT -i eth0 -p tcp --dport 21 -j DROP
iptables- A INPUT -i eth0 -p tcp --dport 80 -j DROP
##denegamos ping a nuestro servidor
iptables -A INPUT -i eth0 -p icmp --icmp-type echo-reply -j DROP

aqui termina nuestro script:

iptables -A (CADENA) -i (INTERFAZ) -p (PROTOCOLO) --dport (numero de puerto) -j (dicision) DROP/ACCEPT

iptables -A (cadena) -s (ip origen) -d(ip destino) -p (protocolo) --dport (puerto destino) -j (decision) DROP/ACCEPT
resumen:
te permites a ti mismo acceso a todos los servicios pero denegas toda solicitud a los puertos 80, 22,21, y todo replay proveniente de ping. Si queremos ver que reglas esta aplicando nuestro firewall basta con poner (iptables -nL) y te desplegara cuales reglas se estan aplicando en el.

Espero les sea util ^_^

No hay comentarios:

Publicar un comentario