Manejador grafico de IPTABLES

xsanzkizsh

New member
Iptables es un parto, debemos admitirlo. Para hacer un buena configuración y algo más amena, podemos encontrar Shorewall.. si... pero, ¿que pasa con las personas que tienen un conocimiento directo sobre iptables y que quieren proteger su equipo de forma grafica, facily sencilla?

Pues existe un gran herramienta (para configurar iptables para casa u oficina) llamada Firestarter.
Para mayor info o para bajarla, vean aqui ;)
Entrar or Registrarse para completar la lectura


Saludos
 

patton

New member
Iptables es a nivel del kernel en cambio los demas firewalls es softwares inestable y vulnerable.
/etc/init.d/iptables: Para es para iniciar o detener el servicio.

1. Copia de la configuración de iptables.

# iptables-save > respaldo-iptables

2. Ejecutar las reglas.

iptables -A FORWARD -s 192.168.0.0/255.255.0.0 -i eth1 -j ACCEPT (solo a modo de ejemplo)

3. Le das permisos de ejecución:
# chmod +x /etc/rc.d/iptables

4.Para guardar:
# /etc/init.d/iptables save

5. Para reestablecer:
# iptables-restore respaldo-iptables
# /etc/init.d/iptables save

6. Para agregar un script de servicio del /etc/init.d en el boot, lo haces con un script:
$ sudo update-rc.d iptables defaults

7 .Para eliminarlo:
$ sudo update-rc.d -f iptables remove

Copy/Paste con explicacióbnbastante clara:
nota: asumiendo que tu red es: 192.168.0.0/24
ejecuta una consola y realiza lo siguiente:

# iptables -A FORWARD -p tcp -m tcp -s 192.168.0.0/255.255.255.0 --dport 1863 -j DROP
#iptables -A FORWARD -p udp -m udp -s 192.168.0.0/255.255.255.0 --dport 1863 -j DROP
# iptables -A FORWARD -p tcp -m tcp -d 192.168.0.0/255.255.255.0 --dport 1863 -j DROP
# iptables -A FORWARD -p udp -m udp -d 192.168.0.0/255.255.255.0 --dport 1863 -j DROP

para el NAT seria de la siguiente manera:

# iptables -t nat -A PREROUTING -i ethx -s 0/0 -p tcp --dport 80 -j REDIRECT --to-port 3128

nota: ethx se debe cambiar por la interface que da a la Internet.

squid: para obtener un mayor dinamismo en lo que quieres hacer.
- un ejemplo de configuracion:

puedes crear una lista de IPs con bloqueo al messenger, especificando que nodos no van a tener acceso. ejemplo:

http_access deny msn1 sinmsn
http_access deny msn2 sinmsn
http_access allow tu_red

siendo en "msn1" una lista de nodos a bloquear, al igual que "msn2"

- Ahora, si tienes un servidor SSH y deseas tener un mínimo de ataques posibles, esta "regla" te puede ser de ayuda:

nota: iptables castiga al usuario que infructuosamente falla 3 veces y lo
castiga por 45 segundos. (si gustas puedes subirle el tiempo de castigo)

# iptables -A INPUT -i ethx -p tcp -m state --state NEW --dport 22 -m
recent --update --seconds 45 -j DROP

# iptables -A INPUT -i ethx -p tcp -m state --state NEW --dport 22 -m
recent --set -j ACCEPT

nota: ethx, debes cambiarla por la interface que da a la Internet.

- Cambiar el puerto ssh de 22 a otro número sólo obtendrás un 5% menos de ataques ya que muy fácilmente algunos "individuos" utilizarán "nmap" para por fin conseguir el puerto mediante lo siguiente,

# nmap -sS -sV "ip_del_host"

Ejemplo:
#!/bin/sh
## SCRIPT de IPTABLES
## Ejemplo de script para firewall entre red-local e internet
## con servicios abiertos de puerto 25, 110, y 1723
## Jose Luis Lopez

echo -n “ Aplicando Reglas de Firewall... “

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

## Establecemos politica por defecto
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT

## Empezamos a filtrar
## REDIRECCIONES
# Todo lo que venga por el exterior y vaya al puerto 80 lo redirigimos
# a una maquina interna

#iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to 192.168.1.100:80

echo –n “ Aplicando Leyes de enmascaramiento ”

#Leyes.
iptables -A INPUT -m mac --mac-source xxxxxxxxxxxxx -i eth0 -p tcp --dport 3389 -j ACCEPT
iptables -A INPUT -m mac --mac-source xxxxxxxxxxxxx -i eth0 -p tcp --dport 3389 -j ACCEPT
iptables -A INPUT -m mac --mac-source xxxxxxxxxxxxx -i eth0 -p tcp --dport 3389 -j ACCEPT
iptables -A INPUT -m mac --mac-source xxxxxxxxxxxxx -i eth0 -p tcp --dport 3389 -j ACCEPT
iptables -A INPUT -m mac --mac-source xxxxxxxxxxxxx -i eth0 -p tcp --dport 3389 -j ACCEPT
echo –n “ Aplicando Acceso a mac y eth0 a terminal server”

# Los accesos de una mac determinada a Terminal server se redirigen e esa
# maquina

iptables -t nat -A PREROUTING -m mac --mac-source xxxxxxxxxxxxx -i eth0 -p tcp --dport 3389 -j DNAT --to 192.168.1.110:3389

#duda? acepto a todos o lo hago por mac ?

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 3389 -j DNAT --to 192.168.1.110:3389

## Nota: eth0 es el interfaz conectado al router y eth1 a la LAN
# El localhost se deja (por ejemplo conexiones locales a mysql)
iptables -A INPUT -i lo -j ACCEPT

# Al firewall tenemos acceso desde la red local
iptables -A INPUT -s 192.168.1.100/24 -i eth1 -j ACCEPT


## Abrimos el acceso a puertos de correo
# Abrimos el puerto 25, hay que configurar bien el relay del servidor SMTP
iptables -A INPUT -s 0.0.0.0/0 -p tcp --dport 25 -j ACCEPT

# Abrimos el pop3
iptables -A INPUT -s 0.0.0.0/0 -p tcp --dport 110 -j ACCEPT


## Ahora con regla FORWARD filtramos el acceso de la red local
## al exterior. Como se explica antes, a los paquetes que no van dirigidos al
## propio firewall se les aplican reglas de FORWARD

# Aceptamos que vayan a puertos 80
iptables -A FORWARD -s 192.168.1.100/24 -i eth1 -p tcp --dport 80 -j ACCEPT
# Aceptamos que vayan a puertos https
iptables -A FORWARD -s 192.168.1.100/24 -i eth1 -p tcp --dport 443 -j ACCEPT

#Acceso MSN
#iptables

# Aceptamos que consulten los DNS
iptables -A FORWARD -s 192.168.1.100/24 -i eth1 -p tcp --dport 53 -j ACCEPT
iptables -A FORWARD -s 192.168.1.100/24 -i eth1 -p udp --dport 53 -j ACCEPT

# Y denegamos el resto. Si se necesita alguno, ya avisaran
iptables -A FORWARD -s 192.168.1.100/24 -i eth1 -j DROP

# Ahora hacemos enmascaramiento de la red local
# y activamos el BIT DE FORWARDING (imprescindible!!!!!)

#esta bien? eth1 es la de la red local
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

#iptables -t nat -A POSTROUTING -s 192.168.1.100/24 -o eth1 -j MASQUERADE

# Con esto permitimos hacer forward de paquetes en el firewall, o sea
# que otras máquinas 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 puerto bien conocido
iptables -A INPUT -s 0.0.0.0/0 -i eth0 -p tcp --dport 1:1024 -j DROP
iptables -A INPUT -s 0.0.0.0/0 -i eth0 -p udp --dport 1:1024 -j DROP

# Cerramos un puerto de gestión: webmin
iptables -A INPUT -s 0.0.0.0/0 -i eth0 -p tcp --dport 10000 -j DROP

# Y cerramos el puerto del servicio PPTPD, solo abierto para el jefe.
iptables -A INPUT -s 0.0.0.0/0 -i eth0 -p tcp --dport 1723 -j DROP

echo “ OK . Verifique que lo que se aplica con: iptables -L -n“
# Fin del script
_________________
 
Arriba