- ¿QUE ES IPTABLES?
- ACCIONES IPTABLES.
- OPCIONES IPTABLES.
- PARÁMETROS IPTABLES.
- ESTRUCTURA IPTABLES.
1. ¿QUE ES IPTABLES?
Es una herramienta para configurar el firewall* del kernel de Linux implementado dentro del proyecto Netfilter. Netfilter es un framework* disponible en el kernel de Linux que permite interceptar y manipular paquetes de red.
Con iptables, un administrador de un sistema puede definir políticas de filtrado del tráfico que circula por la red. Estas políticas de filtrado se organizan en tablas, cada una con su propósito específico. Las tablas se componen de un conjunto de cadenas predefinidas, y estas cadenas contienen reglas. Cada regla consiste en un predicado de coincidencias potenciales y una acción que se ejecuta si las condiciones coinciden.
Netfilter cuenta con 3 tablas integradas en el kernel de Linux:
- filter: Tabla diseñada para la gestión de los paquetes.
- nat: Tabla diseñada para alterar paquetes que han sido creados en una nueva conexión siendo usada primordialmente por NAT.
- mangle: Tabla diseñada para alterar paquetes de red especificos.
Nos centraremos en las tablas filter y nat.
- filter
- INPUT: Paquetes destinados al host.
- OUTPUT: Paquetes generados localmente, que salen del host.
- FORWARD: Paquetes que han sido enrutados a través del host.
- nat
- PREROUTING: Permite establecer comunicaciones desde la red externa a la red interna, local.
- POSTROUTING: Permite establecer comunicaciones desde la red interna a la red externa.
- DNAT: Se emplea cuando tenemos casos en donde se tiene una IP pública y el servicio se encuentra dentro de la red local. El firewall será el encargado de redirigir esa petición a la máquina donde se encuentre el servicio.
- SNAT: Se emplea cuando queremos esconder nuestra IP de red local(privada), cambiándola dentro del firewall con la IP pública proporcionada por nuestro ISP*.
- MASQUERADE: Igual que SNAT pero automaticamente convierte la IP de la red local a IP pública.
2. ACCIONES IPTABLES.
Con iptables podemos indicar varias acciones que realizar con los paquetes:
- ACCEPT: Acepta los paquetes que pasen por el firewall.
- DROP: Deniega los paquetes que pasen por el firewall, cortando la comunicación.
- REJECT: Funciona igual que DROP, pero en este caso se devuelve un mensaje de error a la máquina que envio el paquete.
- REDIRECT: Redirige paquetes hacia otra máquina de la red local.
- MASQUERADE: Igual que SNAT pero automaticamente convierte la IP de la red local a IP pública.
- LOG: Registra información detallada sobre los paquetes que pasan por el firewall.
3. OPCIONES IPTABLES.
Ahora veremos las opciones que nos proporciona iptables:
- -A: Agrega una cadena iptables al firewall.
- -C: Verifica una cadena antes de añadirla al firewall.
- -D: Borra una cadena en el firewall.
- -E: Renombra una cadena en el firewall.
- -F: Libera o limpia una cadena en el firewall.
- -I: Inserta una cadena en un punto especificado.
- -L: Lista todas las cadenas aplicadas en el firewall.
- -P: Configura la política por defecto en una cadena y puede ser ACCEPT o DROP.
4. PARÁMETROS IPTABLES.
La herramienta iptables tiene varios parámetros interesantes que debemos conocer y de gran utilidad:
- -d: Para indicar la dirección IP destino. Ej: -d 192.168.1.1.
- -s: Para indicar la dirección IP origen del envío del paquete. Ej: -s 192.168.2.0/24.
- -j: Para indicar la acción a realizar. Ej: -j ACCEPT.
- -i: Para indicar la interfaz de entrada. Ej: -i eth0.
- -o: Para indicar la interfaz de salida. Ej: -o eth1.
- -p: Para indicar el tipo de protocolo. Ej: -p tcp.
- --dport: Para indicar el puerto de entrada o destino de algún servicio. Ej: --dport 22.
- --sport: Para indicar el puerto de salida de algún servicio. Ej: --sport 1863.
- --to: Para indicar la IP destino del servicio. Ej: --to 192.168.1.100:80.
5. ESTRUCTURA IPTABLES.
La estructura básica de las reglas iptables es la siguiente:
iptables [Opciones] [Filtro] [Parámetros] [Objetivo]
Ejemplos:
iptables -A INPUT -i eth0 -j ACCEPT
iptables -t nat -A PREROUTING -i eht0 -p tcp --dport 21 -j DNAT --to 192.168.2.2:21
...
firewall*: Parte de un sistema o de una red que monitoriza el tráfico de paquetes entrantes y salientes y decide si debe permitir o bloquear un tráfico específico en función de un conjunto de restricciones de seguridad.
framework*: También conocido como entorno de trabajo, es un conjunto de conceptos, prácticas y criterios para el desarrollo y/o implementación de una aplicación.
ISP*: Proveedor de servicios en Internet. Ejemplos: Movistar, Vodafone, etc.
No hay comentarios:
Publicar un comentario