Iptables
#!/bin/bash

echo -n Aplicando reglas del firewall

## Flush de reglas
iptables -F
iptables -X
iptables -Z
iptables -t nat -F

## Politicas por defecto
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORDWARD ACCEPT
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT

## Filtrado

## Localhost se deja sin restriccion
iptables -A INPUT -i lo -j ACCEPT

## A nuestra ip le dejamos todo
iptales -A INPUT -s X.Y.Z.W -j ACCEPT

## A la pc M.N.O.Q le dejamos acceder a FTP
iptables -A INPUT -s M.N.O.Q -p tcp --dport 20:21 -j ACCEPT

## Es un servidor web, abrimos el 80
iptables -A INPUT -p tcp --dport 80 -j ACCEPT

## A la red local le permitimos todo
iptables -A INPUT -s 192.168.0.0/24 -i eth0 -j ACCEPT

## Redirigir lo que llega al puerto 22 de la WAN (eth1) a otra ip (LAN) ,  
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 22 -j DNAT --to 192.168.0.54:22  

## Hacemos NAT, eth1 WAN, eth0 LAN. Habilitar bit de fordwarding (echo 1 >/proc/sys/net/ipv4/ip_fordwarding o /etc/sysctl.conf)
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth1 -j MASQUERADE

## Cerramos puertos tcp y udp hasta el 1024, OJO, debemos antes haber permitidos los que nos interesan
iptables -A INPUT -p tcp --dport 1:1024 -j DROP

echo " Listo. Verifique con: iptables -nL"
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License