Iptables

Netfilter es un framework disponible en el núcleo Linux que permite interceptar y manipular paquetes de red. Dicho framework permite realizar el manejo de paquetes en diferentes estados del procesamiento. Netfilter es también el nombre que recibe el proyecto que se encarga de ofrecer herramientas libres para cortafuegos basados en Linux.
El componente más popular construido sobre Netfilter es iptables, una herramientas de cortafuegos que permite no solamente filtrar paquetes, sino también realizar traducción de direcciones de red (NAT) para IPv4 o mantener registros de log. El proyecto ofrecía compatibilidad hacia atrás con ipchains hasta hace relativamente poco, aunque hoy día dicho soporte ya ha sido retirado al considerarse una herramienta obsoleta. El proyecto Netfilter no sólo ofrece componentes disponibles como módulos del núcleo sino que también ofrece herramientas de espacio de usuario y librerías.

Vamos a comentar el siguiente ejemplo.

echo -n Aplicando Reglas de Firewall...
## FLUSH de reglas
iptables –F (Vaciar las reglas de una chain)
iptables –X (Eliminar una chain vacía)
iptables –Z (Poner a cero los contadores de paquetes y bytes en todas las reglas de una chain)
iptables -t nat –F (Comando predefinido de vaciar todas las reglas de una chain)
-t (Comando predefinido) -p o-m(Cambiar la política de una chain predefinida) -N(Crear una nueva chain) -s(direcciones de Origen) Destino (`-d', `--destination' o `--dst'), normalmente van a localhost añadir (-A) y eliminar (-D), las otras (-I para insertar y -R para reemplazar)
## Establecemos politica por defecto a Aceptar (Cambia la política de una chain predefinida con -p )
iptables -P INPUT ACCEPT (La cadena de ENTRADA que en este caso acepta todas las entradas, de modo predefinido)
iptables -P OUTPUT ACCEPT (La cadena de SALIDA que en este caso acepta todas las salidas, de modo predefinido)
iptables -P FORWARD ACCEPT(Cadena de REDIRECCIÓN, Todos los paquetes que exactamente pasan por este sistema pasan a través de esta cadena, de modo predefinido)
NAT table(Esta tabla es la responsable de configurar las reglas de reescritura de direcciones o de puertos de los paquetes.)
iptables -t nat -P PREROUTING ACCEPT(Cadena de PRERUTEO, Los paquetes entrantes pasan a través de esta cadena antes de que se consulte la tabla de ruteo local, principalmente para DNAT)
iptables -t nat -P POSTROUTING ACCEPT(Cadena de Postruteo, Los paquetes salientes pasan por esta cadena después de haberse tomado la decisión del ruteo,principalmente para SNAT)
## Empezamos a filtrar
## Nota: eth0 es el interfaz conectado al router y eth1 a la LAN
# El localhost se deja (por ejemplo conexiones locales a mysql)
/sbin/iptables -A INPUT -i lo -j ACCEPT Añadir una regla que configure las interfaces de entrada de red en localhost, y cuando un paquete cumpla esta regla sea aceptado
de red de localhost -i Configura las interfaces de entrada de red localhost -j Dice a iptables que salte a un objetivo en particular en este caso aceptar cuando un paquete cumple una regla en particular.
# Al firewall tenemos acceso desde la red local
iptables -A INPUT -s 192.168.10.0/24 -i eth1 -j ACCEPT Añade una regla que configure el paquete de entrada que su origen este entre 192.168.10./24 y configura las intefaces de entrada de red eth1, y si cumple la regla se acepta.
Añadir la regla que configure el origen
# Ahora hacemos enmascaramiento de la red local
# y activamos el BIT DE FORWARDING (imprescindible!!!!!)
iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -o eth0 -j MASQUERADE Todo paquete cuyo origen sea la red 192.168.0.0/24 y que salga por la interfaz de red eth0 sea afectado por la operación MASQUERADE
# Con esto permitimos hacer forward de paquetes en el firewall, o sea
# que otras maquinas puedan salir a traves del firewall.
echo 1 > /proc/sys/net/ipv4/ip_forward
## Y ahora cerramos los accesos indeseados del exterior:
# Nota: 0.0.0.0/0 significa: cualquier red
# Cerramos el rango de 'puertos bien conocidos' (well known port)
iptables -A INPUT -s 0.0.0.0/0 -p tcp -dport 1:1024 -j DROP
Cerramos los puertos para conexiones con cualquier red , puerto 1 al 1024 con conexion tcp
iptables -A INPUT -s 0.0.0.0/0 -p udp -dport 1:1024 -j DROP
Cerramos los puertos para conexiones con cualquier red, puerto 1 al 1024 con conexion ucp
# Cerramos un puerto de gesti�n: webmin
iptables -A INPUT -s 0.0.0.0/0 -p tcp -dport 10000 -j DROP
Cerramos los puertos para conexiones con cualquier red, puerto 10000 con conexion tcp
echo " OK . Verifique que lo que se aplica con: iptables -L -n"
# Fin del script

1 comentarios:

Unknown | 9 de agosto de 2016, 19:16

Me huele que la pelicula decepcionará ray ban aviator a muchos...

Publicar un comentario