Iptables



Netfilter es el encargado de manipular la información que atraviesa la red.Es un módulo que viene dentro del Kernel de Linux.Con IPTABLES mandamos instrucciones a Netfilter para dejar la configuración a nuestro modo.

IPTABLES trabaja en la capa de Enlace,Red y Transporte.

Filtrado de los paquetes,puede permitir,denegar o redireccionar.

VER POLÍTICAS Y BORRAR FILTROS

Ver políticas —>iptables -nL

Ver tablas Nat —> iptables -t nat -L

Eliminar filtros —>iptables -F

ELIMINAR/RECHAZAR TRÁFICO

Eliminar tráfico de entrada —> iptables -A INPUT -p icmp -j DROP

Eliminar todo lo que venga por un puerto en concreto(SSH en este caso)—> iptables -A INPUT -p tcp –dport 22 -j DROP  

Eliminar tráfico de los puertos bien conocidos —> iptables -A INPUT -s 0.0.0.0/0 -p tcp -dport 1:1024 -j DROP

Rechazar tráfico de entrada —> iptables -A iNPUT -p icmp -j REJECT –reject-with icmp-proto-unrecheable

PERMITIR TRÁFICO

*Por defecto todo el tráfico está en ACCEPT.Si queremos permitir tráfico de un sólo host primero debemos permitir los hosts que queremos y después denegar el resto.

Permitir tráfico icmp de entrada de un sólo host

iptables -A INPUT -s 192.168.1.10 -j ACCEPT

            iptables -A INPUT -p icmp  -j DROP

HABILITAR FORWARDING

*Hacer forwarding en un S.O. implica permitir el tráfico que atraviesa el ordenador y tiene como destino otro ordenador. Es el funcionamiento básico de un router, por ejemplo. Por defecto un host no permite este tipo de tráfico y lo bloquea.

Descomentar en el archivo /etc/sysctl.conf la línea:

net.ipv4.ip_forward=1

REDIRIGIR PAQUETES HACIA OTROS HOSTS

Redirigir paquetes hacia otros hosts con NAT.

Todo lo que venga por el puerto 80 redirigirlo al host 172.16.0.1:8080

iptables -t nat -A PREROUTING -i eth0 -p tcp –dport 80 -j DNAT –to-destination 172.16.0.1:8080

ENMASCARAMIENTO

iptables  -t nat -A POSTROUTING -o eth0 -j MASQUERADE