Sunteți pe pagina 1din 103

Escenarios Iptables

Configuraciones de Red: (Para el caso de Distribuciones basadas en Red Hat)

Interfaz LAN: eth0

Interfaz WAN: eth1

Interfaces Virtuales:
Una vez creadas estas, reiniciamos los servicios de red

[root@enforcer ~]#service network restart

Los cambios ya puede verse, usando el comando ifconfig


Para ver la tabla de rutas
Si se trabaje en distribuciones basadas en Debian, la configuracin de red ser la siguiente

De forma similar al caso anterior, una vez creadas estas reiniciamos los servicios de red

[root@enforcer ~]#/et c/init.d/networking restart


Escenario 1:

Configuracin de Reglas

-Para publicacin de servicios (DNAT): Cadena PREROUTING

-Para salida a Internet (SNAT): Cadena POSTROUTING

-Para apertura de Puertos: Cadena FORWARD


Reglas
Escenario 2:

Configuracin de Reglas

-Para publicacin de servicios (DNAT): Cadena PREROUTING

-Para salida a Internet (SNAT): Cadena POSTROUTING

-Para apertura de Puertos: Cadena FORWARD


Reglas

En estas reglas, tanto el servidor ftp como el servidor web, para salir a internet, salen con la direccin pblica de la
interfaz WAN del Firewall.
Servidor FTP: 172.16.32.34 sale a internet con la Ip publica 190.102.131.41 (Interfaz WAN)

Servidor WEB: 172.16.34.38 sale a internet con la Ip publica 190.102.131.41 (Interfaz WAN)
Escenario 3

Configuracin de Reglas

-Para publicacin de servicios (DNAT): Cadena PREROUTING

-Para salida a Internet (SNAT): Cadena POSTROUTING

-Para apertura de Puertos: Cadena FORWARD


Reglas

A diferencia del caso anterior, tanto el servidor web como el servidor ftp salen con 2 pblicas diferentes
Servidor FTP: 172.16.32.34 sale a internet con la Ip pblica 190.102.131.42

Servidor WEB: 172.16.32.38 sale a internet con la ip pblica 190.102.131.44


Escenario 4

Configuracin de Reglas

-Para publicacin de servicios (DNAT): Cadena PREROUTING

-Para salida a Internet (SNAT): Cadena POSTROUTING

-Para apertura de Puertos: Cadena FORWARD


Reglas

En este caso se muestra la traslacin de puertos, para el servicio de ssh, para la administracin de ciertos servidores
Escenario 5

Configuracin de Reglas

-Para publicacin de servicios (DNAT): Cadena PREROUTING

-Para salida a Internet (SNAT): Cadena POSTROUTING

-Para apertura de Puertos: Cadena FORWARD


Reglas

Como el firewall tambin cumple la funcin de servidor proxy, y funciona de forma transparente

Modificar en el archivo /etc/squid/squid.conf la siguiente lnea

http_port 3128 transparent

La configuracin en los clientes de navegacin es sin configurar servidor proxy en el navegador


Escenario 6

Reglas
Monitoreo de Reglas

Monitoreo del SNAT

El Host de la LAN (10.10.10.100) sale a Internet con la ip virtual (192.168.1.201) hacia la pgina de la UNI
Script de Iptables: fw.sh

#!/bin/sh

iptables -P INPUT ACCEPT


iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -A PREROUTING -p tcp -d 192.168.1.201 --dport 80 -j DNAT
--to 10.10.10.100:80
iptables -t nat -A PREROUTING -p tcp -d 192.168.1.202 --dport 3389 -j
DNAT --to 10.10.10.100:3389
iptables -t nat -A PREROUTING -p tcp -d 192.168.1.203 --dport 21 -j DNAT
--to 10.10.10.100:21
iptables -t nat -A PREROUTING -p tcp -d 192.168.1.203 --dport 20 -j DNAT
--to 10.10.10.100:20
iptables -t nat -A POSTROUTING -s 10.10.10.100 -o eth0 -j SNAT --to
192.168.1.201
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -s 10.10.10.0/24 -i vboxnet0 -j ACCEPT
iptables -A FORWARD -s 10.10.10.0/24 -i vboxnet0 -p tcp --dport 80 -j
ACCEPT
iptables -A FORWARD -s 10.10.10.0/24 -i vboxnet0 -p tcp --dport 443 -j
ACCEPT
iptables -A FORWARD -s 10.10.10.0/24 -i vboxnet0 -p tcp --dport 53 -j
ACCEPT
iptables -A FORWARD -s 10.10.10.0/24 -i vboxnet0 -p udp --dport 53 -j
ACCEPT
iptables -t nat -A POSTROUTING -s 10.10.10.0/24 -o eth0 -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward
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
Firewall de una LAN con Salida a Internet

Esquema Firewall-Gateway

Poltica por Defecto: Aceptar todo


Reglas

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

## Establecemos poltica 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
## Nota: eth1 es el interfaz conectado al router y eth2 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.10.0/24 i eth2 j ACCEPT

# 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 eth1 -j MASQUERADE

## 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 p tcp dport 1:1024 j DROP
iptables A INPUT s 0.0.0.0/0 p udp dport 1:1024 j DROP

Contenido del script (fw1.sh)

Habilitamos el forwarding en forma permanente en el Firewall


Editamos el archivo sysctl.conf

En la lnea sombreada, cambiamos el valor de 0 a 1

Grabamos los cambios realizados

Salida a Internet con la ip del Firewall (enmascaramiento de la red local)


Desde nuestro equipo cliente (192.168.10.200) cargamos la ip del servidor web

http://192.168.137.100

En el log del servidor web, vemos el origen de la conexin

Como vemos, el origen de la conexin tiene direccin ip 192.168.137.2 (ip de la


WAN del firewall)

Pero como vemos aqu, tenemos acceso a todo (no se restringe nada)
Para ello , hacemos ping a los dns de google

Reglas activas en el Firewall

Poltica por Defecto: Aceptar todo


Reglas

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

## Establecemos poltica 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
## Nota: eth1 es el interfaz conectado al router y eth2 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.10.0/24 i eth2 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.10.0/24 i eth2 p tcp -dport 80 j ACCEPT
# Aceptamos que vayan a puertos https
iptables A FORWARD s 192.168.10.0/24 i eth2 p tcp -dport 443 j ACCEPT

# Aceptamos que consulten los DNS


iptables A FORWARD s 192.168.10.0/24 i eth2 p tcp -dport 53 j ACCEPT
iptables A FORWARD s 192.168.10.0/24 i eth2 p udp -dport 53 j ACCEPT

# Y denegamos el resto. Si se necesita alguno, ya avisaran

iptables A FORWARD s 192.168.10.0/24 i eth2 j DROP

# 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 eth1 -j MASQUERADE

## 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 p tcp dport 1:1024 j DROP
iptables A INPUT s 0.0.0.0/0 p udp dport 1:1024 j DROP

Contenido del script (fw2.sh)


Ahora vemos que solo tenemos salida libre a navegacin web (http/https) y
consultas de tipo dns

Otros tipos de trfico son denegados.

Ingresamos desde estacin cliente a un servidor ftp, y no logramos acceder

Ahora, hacemos ping hacia los dns de google y vemos que no hay respuesta
Reglas Activas del Firewall

Supongamos que este firewall tiene alguna funcin adicional: es un servidor proxy y adems es
un servidor de correo. Darle funcionalidades de este tipo a un firewall no es recomendable,
porque si no se protegen bien esos puertos o si no est actualizado el software pueden entrar
en el firewall a base de xploits comprometiendo TODA la red local. De todas formas muchas
empresas no se pueden permitir o no quieren tener una mquina para cada cosa, bastante les
cuesta a muchas poner un firewall. Por tanto: si se aaden servicios que deben estar abiertos
al pblico en el propio firewall, nos la estamos jugando, y se recomienda pasar el servicio a
otra mquina y ponerla en la DMZ.
Supongamos tambin que la empresa tiene comerciales en ruta y que se conectan a internet
desde su porttil y con una ip dinmica. Supongamos tambin que el jefe de la empresa quiere
acceder a la red local desde casa con una conexin ADSL. Ahora en el firewall debiramos
tener instalado un servidor SMTP, pop3, y un PPTPD.

Adicionalmente queremos compartir algn servicio pero de un servidor que tenemos dentro de la
red local, por ejemplo el IIS de un servidor windows, y adems permitir la gestin remota por
terminal server para esta mquina para una empresa externa. En este caso lo que hay que
hacer es un redireccin de puerto.. En fin, veamos la configuracin, con las nuevas reglas de
DNAT:

Diagrama de red

Poltica por Defecto: Aceptar todo


Reglas

## 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 eth1 -p tcp --dport 80 -j DNAT --to
192.168.10.200:80

# Los accesos de un ip determinada a Terminal server se redirigen e esa


# maquina
iptables t nat -A PREROUTING s 192.168.137.1 -i eth1 p tcp --dport 3389 j
DNAT -to 192.168.10.200:3389

## Nota: eth1 es el interfaz conectado al router y eth2 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.10.0/24 i eth2 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.10.0/24 i eth1 p tcp -dport 80 j ACCEPT

# Aceptamos que vayan a puertos https


iptables A FORWARD s 192.168.10.0/24 i eth1 p tcp -dport 443 j ACCEPT

# Aceptamos que consulten los DNS


iptables A FORWARD s 192.168.10.0/24 i eth1 p tcp -dport 53 j ACCEPT
iptables A FORWARD s 192.168.10.0/24 i eth1 p udp -dport 53 j ACCEPT

# 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 eth1 -j MASQUERADE

## 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 eth1 p tcp dport 1:1024 j DROP
iptables A INPUT s 0.0.0.0/0 i eth1 p udp dport 1:1024 j DROP

Contenido del script (fw3.sh)


Prueba de DNAT

Vemos que podemos hacer conexin a escritorio remoto desde la ip 192.168.137.1


hacia la ip 192.168.137.2

Sin embargo, desde otra ip diferente a la anterior no se puede conectar


Desde cualquier cliente web (192.168.137.200), cargamos en el navegador la ip del
webserver

http://192.168.137.2

Pruebas de Servicio para los puertos 25 y 110 en el equipo Firewall

Desde la zona WAN: Telnet al puerto 25


Desde la zona WAN: Telnet al puerto 110

Ver reglas activas en Firewall


Firewall de una LAN con salida a internet con DMZ

En este tipo de firewall hay que permitir:


- Acceso de la red local y DMZ a internet.
- Acceso pblico al puerto tcp/80 y tcp/3389 del servidor de la DMZ
- Acceso del servidor de la DMZ a una BBDD de la LAN
- Obviamente bloquear el resto de acceso de la DMZ hacia la LAN.
Qu tipo de reglas son las que hay que usar para filtrar el trfico entre la DMZ y la LAN? Solo
pueden ser las FORWARD, ya que estamos filtrando entre distintas redes, no son paquetes
destinados al propio firewall.
Poltica por Defecto: Aceptar todo

Reglas

## 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

## Nota: eth1 es el interfaz conectado al router y eth2 a la LAN


# Todo lo que venga por el exterior y vaya al puerto 80 lo redirigimos
# a una maquina interna
iptables t nat -A PREROUTING -i eth1 p tcp --dport 80 j DNAT --to
192.168.3.2:80

# Los accesos de una ip determinada hacia Terminal Server se redirigen e esa


# maquina
iptables t nat -A PREROUTING s 192.168.137.1 -i eth1 p tcp --dport 3389 j
DNAT -to 192.168.3.2:3389

# 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.10.0/24 i eth2 j ACCEPT

# Ahora hacemos enmascaramiento de la red local y de la DMZ


# para que puedan salir haca fuera
# y activamos el BIT DE FORWARDING (imprescindible!!!!!)
iptables -t nat -A POSTROUTING s 192.168.10.0/24 -o eth1 -j MASQUERADE
iptables -t nat -A POSTROUTING s 192.168.3.0/24 -o eth1 -j MASQUERADE

## 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.10.0/24 i eth2 p tcp -dport 80 j ACCEPT

# Aceptamos que vayan a puertos https


iptables A FORWARD s 192.168.10.0/24 i eth2 p tcp -dport 443 j ACCEPT

# Aceptamos que consulten los DNS


iptables A FORWARD s 192.168.10.0/24 i eth2 p tcp -dport 53 j ACCEPT
iptables A FORWARD s 192.168.10.0/24 i eth2 p udp -dport 53 j ACCEPT
## Ahora con regla FORWARD filtramos el acceso de la red DMZ
## 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 de tipo tcp : HTTP,HTTPS,DNS


iptables A FORWARD s 192.168.3.0/24 i eth3 p tcp m multiport -dport
80,443,53 j ACCEPT

# Aceptamos que vayan a puertos de tipo udp : DNS


iptables A FORWARD s 192.168.3.0/24 i eth3 p udp -dport 53 j ACCEPT

## Permitimos el paso de la DMZ a una BBDD de la LAN:


iptables A FORWARD s 192.168.3.2 d 192.168.10.5 p tcp -dport 3306 j ACCEPT
iptables A FORWARD s 192.168.10.5 d 192.168.3.2 p tcp -sport 3306 j ACCEPT

## permitimos abrir el Terminal server de la DMZ desde la LAN


iptables A FORWARD s 192.168.10.0/24 d 192.168.3.2 p tcp -sport 1024:65535 -
dport 3389 j ACCEPT

# hay que hacerlo en uno y otro sentido


iptables A FORWARD s 192.168.3.2 d 192.168.10.0/24 p tcp -sport 3389 -dport
1024:65535 j ACCEPT

# por que luego:


# Cerramos el acceso de la DMZ a la LAN
iptables A FORWARD s 192.168.3.0/24 d 192.168.10.0/24 j DROP

## Cerramos el acceso de la DMZ al propio firewall


iptables A INPUT s 192.168.3.0/24 i eth3 j DROP

## 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 p tcp dport 1:1024 j DROP
iptables A INPUT s 0.0.0.0/0 p udp dport 1:1024 j DROP

ATENCIN
Merece la pena pararse a explicar esta parte del firewall:

## permitimos abrir el Terminal server de la DMZ desde la LAN


iptables A FORWARD s 192.168.10.0/24 d 192.168.3.2 p tcp -sport 1024:65535 -
dport 3389 j ACCEPT

# hay que hacerlo en uno y otro sentido


iptables A FORWARD s 192.168.3.2 d 192.168.10.0/24 p tcp -sport 3389 -dport
1024:65535 j ACCEPT

# por que luego:


# Cerramos el acceso de la DMZ a la LAN
iptables A FORWARD s 192.168.3.0/24 d 192.168.10.0/24 j DROP

Lo que nos lleva a dos cuestiones:

Por qu hay que explicitar la abertura en uno y otro sentido? Porque la tercera regla
Cierra todo lo que va de la DMZ a la red local. Para abrir el puerto 3389 de tcp es
Imprescindible que un paquete de ida sea capaz de llegar hasta la DMZ y que a su vez pueda
volver a la LAN. Esto de tener que especificar la abertura en uno y otro sentido ser el pan de
cada da en un iptables con poltica DROP por defecto: mejor proteccin pero ms trabajo.

Por qu se explicita el puerto de origen/destino 1024:65535 en la primera y segunda


regla?

Imaginemos que un hacker logra acceso a la mquina de la DMZ. Si no especificamos


el puerto de destino en esas dos reglas, el hacker puede abrir CUALQUIER puerto de la LAN
siempre que pueda establecer como puerto origen suyo el tcp/3389, cosa fcil para un hacker
que sepa algo de C o que tenga el programa pertinente a mano. De todas formas el hacker
tendra que saber que existe ese tipo de reglas, si es listo probara con puertos de gestin o con
puertos netbios. El problema es que se deja un vnculo con la LAN bien para administrarlo
remotamente o para establecer relaciones de confianza y ah es donde reside el peligro.
En las conexiones legales no se usa como puerto origen nada por debajo del 1024; cuando
alguien se conecta a otro puerto en su extremo abre un puerto por encima del 1024.
Especificndolo en la regla de firewall protegeremos un poco mejor la LAN, aunque los puertos
por encima de 1024 estarn en peligro

Contenido del script (dmz.sh)


Test para DNAT:

-Acceso a la url: http://192.168.137.2


-Acceso por escritorio remoto hacia la direccin 192.168.137.2 desde esta nica
direccin ip (192.168.137.1)
Test para el acceso a la BD

Desde el host de la DMZ nos conectamos hacia el servidor de la BD que estn en la


zona LAN

Como se ve en la imagen, la conexin se est haciendo usando netcat, pero nos


indica que dicho host no puede conectarse a la BD, y esta es una restriccin por
el mismo mysql como tal, y ya no por regla de Firewall.

El hecho de ya indicarnos la versin de la Base de Datos (Mysql), indica que que


este host puede conectarse

Test para el acceso a Terminal Server desde la LAN hacia la DMZ

Desde un host de la LAN podemos realizar Terminal Server hacia el host ubicado en
la DMZ
Test de acceso desde la zona DMZ hacia la zona LAN

Como se observa, no hay conectividad entre el host de la DMZ hacia hosts de la


red LAN.
Test de conectividad entre el Host de la DMZ y el Firewall

Desde el host de la DMZ no se puede establecer conexin hacia el Firewall, por


cualquier protocolo (icmp, ssh)
Reglas Activas del Firewall
Firewall puro y duro entre redes

En este caso olvidmonos de redes locales y de NAT. Aqu solo tendremos reglas de filtrado
INPUT y FORWARD. Pongamos que tenemos el siguiente escenario:

En el firewall debemos indicar una serie de reglas para proteger los equipos que estn al otro
lado de este dispositivo, todos ellos de la red 211.34.149.0/24
Cada uno de ellos da un servicio determinado, y puede estar gestionado desde distintas IPs, lo
que significa que habr que dar acceso a determinados puertos de gestin (22, 3389, etc..).
Este podra ser el aspecto del script del firewall:

Para simular este escenario, crearemos una ruta estatica en mi equipo Windows
Poltica por Defecto: Aceptar todo

Reglas

## 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
## Nota: eth1 es el interfaz conectado al router y eth2 a la LAN

# A nuestro firewall tenemos acceso total desde la nuestra IP


iptables A INPUT s 210.195.55.15 j ACCEPT

# Para el resto no hay acceso al firewall


iptables A INPUT s 0.0.0.0/0 j DROP

## Ahora podemos ir metiendo las reglas para cada servidor


## Como sern paquetes con destino a otras mquinas se aplica FORWARD

## Servidor WEB 211.34.149.2


# Acceso a puerto 80
iptables A FORWARD d 211.34.149.2 p tcp -dport 80 j ACCEPT

# Acceso a nuestra ip para gestionarlo


iptables A FORWARD s 210.195.55.15 d 211.34.149.2 p tcp -dport 22 j ACCEPT

## Servidor CITRIX 211.34.149.2


# Acceso a puerto 1494
iptables A FORWARD d 211.34.149.2 p tcp -dport 1494 j ACCEPT

# Acceso a una ip para gestionarlo


iptables A FORWARD s 192.168.137.1 d 211.34.149.2 p tcp -dport 3389 j
ACCEPT

# El resto, cerrar
iptables A FORWARD d 211.34.149.2 j DROP

## Servidor MAIL 211.34.149.3


# Acceso a puerto 25, 110 y 143
iptables A FORWARD d 211.34.149.6 p tcp -dport 25 j ACCEPT
iptables A FORWARD d 211.34.149.6 p tcp -dport 110 j ACCEPT
iptables A FORWARD d 211.34.149.6 p tcp -dport 143 j ACCEPT

## Servidor B2B 211.34.149.6


# Acceso a puerto 80
iptables A FORWARD d 211.34.149.6 p tcp -dport 80 j ACCEPT

# Acceso a gestion SNMP


iptables A FORWARD s 210.195.55.15 d 211.34.149.6 p udp -dport 169 j ACCEPT
# Acceso a nuestra ip para gestionarlo
iptables A FORWARD s 210.195.55.15 d 211.34.149.6 p tcp -dport 22 j ACCEPT

# El resto, cerrar
iptables A FORWARD d 211.34.149.6 j DROP

## Servidor IRC 211.34.149.5


# Acceso a puertos IRC
iptables A FORWARD d 211.34.149.5 p tcp -dport 6666:6668 j ACCEPT

## Servidor NEWS 211.34.149.5


# Acceso a puerto news
iptables A FORWARD d 211.34.149.5 p tcp -dport news j ACCEPT

# Acceso a nuestra ip para gestionarlo


iptables A FORWARD s 210.195.55.15 d 211.34.149.5 p tcp -dport 22 j ACCEPT

# Acceso a nuestra ip para gestionarlo


iptables A FORWARD s 192.168.137.1 d 211.34.149.5 p tcp -dport 3389 j
ACCEPT

# El resto, cerrar
iptables A FORWARD d 211.34.149.5 j DROP

Contenido del script (dmz-1.sh)


Test de Reglas

Desde la LAN no se pueden conectar al Firewall


Desde esta nica ip me permite conectarme al Firewall

Acceso al Servidor web


Acceso al servidor Citrix va Escritorio Remoto
Pero desde otro host diferente no es posible conectarnos

Trafico diferente a lo permitido es denegado para cualquier host


Telnet al puerto 25 hacia el Mail (211.34.149.6)

Acceso al servidor web via http

Acceso de gestin al servidor B2B via ssh desde esta Direccion ip


Desde otra ip via ssh no se pueden conectar al servidor
Adicionalmente vemos que todo tipo de trafico tambin es bloqueado

Hacemos terminal server desde la ip 192.168.137.1 hacia el servidor 211.34.149.5


Desde otro host diferente no se puede conectar al equipo via terminal server
Reglas activas del Firewall
Firewall con IPTABLES con DROP como poltica por defecto

Escenario
Poltica por Defecto: Denegar todo

Reglas

## FLUSH de reglas

iptables -F
iptables -X
iptables -Z
iptables -t nat F

## Establecemos politica por defecto

iptables -P INPUT DROP


iptables -P OUTPUT DROP
iptables -P FORWARD DROP

## Para que el firewall pueda conectarse a internet y actualizarse, puerto 80 y 53(DNS)

iptables -A OUTPUT -o eth1 -p tcp --dport 80 -j ACCEPT


iptables -A INPUT I eth1 -p tcp --sport 80 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT o eth1 -p udp --dport 53 -j ACCEPT
iptables -A INPUT -i eth1 -p udp --sport 53 -m state --state ESTABLISHED,RELATED -j ACCEPT

# Permitir el acceso al FW desde el equipo del administrador


# (10.0.0.1) por ssh (puerto 22).
# Al haberse establecido que la poltica por defecto sea DROP,
# hay que permitir el trfico en los dos sentidos.

iptables -A INPUT -s 10.0.0.1 -p tcp dport 22 -j ACCEPT


iptables -A OUTPUT -d 10.0.0.1 -p tcp sport 22 -j ACCEPT

# Evitar intentos de IP Spoofing


# El spoof vendra de la red externa (WAN) a travs de la
# interfaz eth1, por eso se rechaza todo el trfico que
# entre por la eth1 con una ip de origen de la red interna
# (192.168.100.0/24 y 10.0.0.0/24), que sera una ip falseada.

iptables -A INPUT -i eth1 -s 192.168.100.0/24 -j DROP


iptables -A INPUT -i eth1 -s 10.0.0.0/24 -j DROP

# Permitir hacer PING a los equipos de la DMZ desde la LAN.

iptables -A FORWARD -s 10.0.0.0/24 -d 192.168.100.0/24 -p icmp -j ACCEPT


iptables -A FORWARD -s 192.168.100.0/24 -d 10.0.0.0/24 -p icmp -j ACCEPT

# Permitir al equipo del administrador acceso total a la DMZ.

iptables -A FORWARD -s 10.0.0.1 -d 192.168.100.0/24 -j ACCEPT


iptables -A FORWARD -s 192.168.100.0/24 -d 10.0.0.1 -j ACCEPT

# Permitir a un host de usuario de la LAN el acceso al puerto 80 de cualquier servidor WEB de la DMZ

iptables -A FORWARD -s 10.0.0.2 -d 192.168.100.0/24 -p tcp --dport 80 -j ACCEPT


iptables -A FORWARD -s 192.168.100.0/24 -d 10.0.0.2 -p tcp --sport 80 j ACCEPT
# Nat a un servidor WEB Linux a una publica determinada

iptables -t NAT -A PREROUTING -i eth1 -p tcp -d 172.16.1.253 dport 80 -j DNAT to 192.168.100.2:80

# Nat a otro servidor WEB Windows con la ip publica de la interfaz WAN y con translacin de puertos

iptables -t NAT -A PREROUTING -i eth1 -p tcp --dport 1080 -j DNAT to 192.168.100.4:80

# Permitir la conexin al servidor WWW de la DMZ


# desde la WAN por HTTP (puerto 80).

iptables -A FORWARD -p tcp dport 80 -i eth1 -o eth3 -j ACCEPT


iptables -A FORWARD -p tcp sport 80 -i eth3 -o eth1 -j ACCEPT

# Enmascarar la IP de los equipos de la LAN


# y salen a internet con la ip de la WAN (172.16.1.252).

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

# Enmascarar la IP del Servidor WEB Linux


# Este host salen a internet con la ip 172.16.1.253

iptables -t nat -A POSTROUTING -s 192.168.100.2 o eth1 j SNAT to 172.16.1.253

# Enmascarar la IP del Servidor Web Windows


# y sale a internet con la ip de la WAN (172.16.1.252).

iptables -t nat -A POSTROUTING -s 192.168.100.4 -o eth1 -j MASQUERADE

# Se permite el acceso hacia el exterior (WAN) para navegacin web (HTTP y HTTPS).
# El resto de las conexiones desde el exterior (WAN) hacia la red interna (LAN) (las que no proceden de los
# puertos 80 y 443) no estn permitidas por haber establecido por defecto la regla denegar todo (DROP).

iptables -A FORWARD -p tcp -i eth2 -o eth1 -m state --state NEW,ESTABLISHED,RELATED --dport 80 -j ACCEPT
iptables -A FORWARD -p tcp -i eth1 -o eth2 -m state --state ESTABLISHED,RELATED --sport 80 -j ACCEPT
iptables -A FORWARD -p tcp -i eth2 -o eth1 -m state --state NEW,ESTABLISHED,RELATED --dport 443 -j ACCEPT
iptables -A FORWARD -p tcp -i eth1 -o eth2 -m state --state ESTABLISHED,RELATED --sport 443 -j ACCEPT
iptables -A FORWARD -p udp -i eth2 -o eth1 -m state --state NEW,ESTABLISHED,RELATED --dport 53 -j ACCEPT
iptables -A FORWARD -p udp -i eth1 -o eth2 -m state --state ESTABLISHED,RELATED --sport 53 -j ACCEPT

# Se permite el acceso hacia el exterior (WAN) para navegacin web (HTTP y HTTPS).
# El resto de las conexiones desde el exterior (WAN) hacia la red DMZ (las que no proceden de los
# puertos 80 y 443) no estn permitidas por haber establecido por defecto la regla denegar todo (DROP).

iptables -A FORWARD -p tcp -i eth3 -o eth1 -m state --state NEW,ESTABLISHED,RELATED --dport 80 -j ACCEPT
iptables -A FORWARD -p tcp -i eth1 -o eth3 -m state --state ESTABLISHED,RELATED --sport 80 -j ACCEPT
iptables -A FORWARD -p tcp -i eth3 -o eth1 -m state --state NEW,ESTABLISHED,RELATED --dport 443 -j ACCEPT
iptables -A FORWARD -p tcp -i eth1 -o eth3 -m state --state ESTABLISHED,RELATED --sport 443 -j ACCEPT
iptables -A FORWARD -p udp -i eth3 -o eth1 -m state --state NEW,ESTABLISHED,RELATED --dport 53 -j ACCEPT
iptables -A FORWARD -p udp -i eth1 -o eth3 -m state --state ESTABLISHED,RELATED --sport 53 -j ACCEPT
Configuracion de interfaces WAN

Para la interfaz fsica eth1

Para la interfaz virtual eth1:0


Contenido del script (drop-1.sh)
Comprobaciones

El Firewall nicamente navega hacia internet por el puerto 80 para actualizaciones

Para comprobar esto, usaremos lynx y navegaremos hacia la pgina de google

El resultado de dicho comando es:

Por el contrario, si ahora tratamos de navegar por la pgina de Hotmail


Y vemos que no llega a redireccin a HTTPS, dado que nicamente est abierto el puerto 80, mas no el puerto 443

Gestion del Firewall

Podemos administrar el firewall desde la ip 10.0.0.1


Desde otra no diferente a la anterior, no est permitida la conexin al FW

Conectividad entre los hosts de diferentes zonas

Realizamos ping desde hosts de la LAN hacia los host de la DMZ


Ahora, desde un host de la DMZ, hacemos un ping hacia hosts de la LAN
Acceso total a la red DMZ

La estacin del Administrador (10.0.0.1) tiene acceso total a la red DMZ

Realizamos la conexin va RDP al servidor WEB Windows

Desde otro host diferente no se puede acceder va RDP al servidor WEB Windows
Acceso a los servicios web de la DMZ desde la estacin cliente
Publicaciones (DNAT)

Acceso desde un host en internet a una ip WAN del pool del Firewall (172.16.1.253)

Acceso desde un host en internet a la direccin ip de la Interfaz WAN del Firewall (172.16.1.252) hacia el puerto 1080, y
este ser redirigido al puerto 80 del servidor WEB Windows
Nat de Salida (SNAT)

Ahora, esnifearemos el trfico de red hacia un destino en internet en el Firewall , a fin de verificar la ip de salida de los
hosts de la LAN hacia Internet

En este caso, analizaremos el trfico hacia la pgina de la UNI ( www.uni.edu.pe )

Desde un host en la LAN, cargamos la web antes mencionada


El analizador de trfico en el Firewall, para dicho destino, nos arroja los siguientes datos
Vemos que la sesin la realiza la ip WAN del Firewall (172.16.1.252) con la web amaru.uni.edu.pe

Entonces, quiere decir que el host de la LAN (10.0.0.1) sale a internet con la direccin ip WAN del Firewall.

Repetiremos los mismos pasos, pero ahora cuando el trfico es iniciado por un host de la DMZ (Servidor Web Linux)

Usaremos lynx para acceder a la web de la uni

Una vez ejecutado el comando, verificamos su salida en pantalla

Viendo el analizador de trfico, desde el firewall, muestra lo siguiente


Vemos que la sesin la realiza una ip del pool de la red WAN del Firewall (172.16.1.253) con la web amaru.uni.edu.pe

Entonces, quiere decir que el host de la DMZ (192.168.100.2) sale a internet con una ip del pool de la red WAN del
Firewall.

Finalmente, ahora analizaremos para el caso del Servidor WEB Windows (192.168.100.4) cuando se conecta hacia la
pgina web de la UNI ( www.uni.edu.pe )

De igual forma que el 1er caso, la sesin la realiza la ip WAN del Firewall (172.16.1.252) con la web amaru.uni.edu.pe

Entonces, quiere decir que el host de la DMZ (192.168.100.4) sale a internet con la direccin ip WAN del Firewall.
Consulta a DNS

Desde host de la LAN, probamos las consultas DNS

Desde host de la DMZ, probamos las consultas DNS


Escenario con iptables y DMZ
Establecemos 3 variables, la red LAN, la red DMZ, y el equipo de la red DMZ que ser el servidor web.

redLAN=192.168.8.0/24
redDMZ=192.168.58.0/24
Webserver=192.168.58.100

Limpieza de Iptables y poltica por defecto DROP

iptables -F
iptables -X
iptables -Z
iptables -t nat -F
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP

Ahora habilitamos que tanto la red verde como la red DMZ salgan enmascaradas con la IP pblica.

iptables -t nat -A POSTROUTING -s $redLAN -o eth1 -j MASQUERADE


iptables -t nat -A POSTROUTING -s $redDMZ o eth1 -j MASQUERADE

Habilitamos todo a localhost y protocolo icmp (ping) para el firewall, el ping se lo habilitamos a la red
LAN.

iptables -A INPUT -i lo -j ACCEPT


iptables -A OUTPUT -o lo -j ACCEPT
iptables -A INPUT -p icmp -j ACCEPT
iptables -A OUTPUT -p icmp -j ACCEPT
iptables -A FORWARD -i eth2 -s $redLAN -p icmp -j ACCEPT
iptables -A FORWARD -o eth2 -d $redLAN -p icmp -m state --state ESTABLISHED,RELATED -j ACCEPT

Reglas de input de firewall, unicamente abriremos el puerto para VPN y SSH

iptables -A INPUT -i eth1 -p tcp --dport 1723 -j ACCEPT


iptables -A OUTPUT -o eth1 -p tcp --sport 1723 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -i eth2 -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -o eth2 -p tcp --sport 22 -m state --state ESTABLISHED,RELATED -j ACCEPT

Reglas output:

Para que el firewall se actualize la hora:

iptables -A OUTPUT -o eth1 -p udp --dport 123 -j ACCEPT


iptables -A INPUT -i eth1 -p udp --sport 123 -m state --state ESTABLISHED,RELATED -j ACCEPT

Para que el firewall pueda conectarse a internet y actualizarse, puerto 80 y 53 (DNS)

iptables -A OUTPUT -o eth1 -p tcp --dport 80 -j ACCEPT


iptables -A INPUT -i eth1 -p tcp --sport 80 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -o eth1 -p udp --dport 53 -j ACCEPT
iptables -A INPUT -i eth1 -p udp --sport 53 -m state --state ESTABLISHED,RELATED -j ACCEPT
Para que el firewall pueda conectarse al servicio web (80) y va SSH a otros equipos nicamente de la red LAN y DMZ,
respectivamente y no de la WAN :

iptables -A OUTPUT -o eth2 -p tcp --dport 80 -j ACCEPT


iptables -A INPUT -i eth2 -p tcp --sport 80 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -o eth3 -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -i eth3 -p tcp --sport 22 -m state --state ESTABLISHED,RELATED -j ACCEPT

Para que el firewall pueda mandar correos:

iptables -A OUTPUT -o eth1 -p tcp --dport 25 -j ACCEPT


iptables -A INPUT -i eth1 -p tcp --sport 25 -m state --state ESTABLISHED,RELATED -j ACCEPT

Reglas de forward:

Permitimos acceso al servidor web desde la red LAN:

iptables -A FORWARD -i eth2 -s $redLAN -d $redDMZ -p tcp --dport 80 -j ACCEPT


iptables -A FORWARD -o eth2 -s $redDMZ -d $redLAN -p tcp --sport 80 -m state --state ESTABLISHED,RELATED -j ACCEPT

Ahora permitimos a los equipos de la red LAN que puedan conectarse a internet y actualizarse

iptables -A FORWARD -i eth2 -s $redLAN -p tcp --dport 80 -j ACCEPT


iptables -A FORWARD -o eth2 -d $redLAN -p tcp --sport 80 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i eth2 -s $redLAN -p udp --dport 53 -j ACCEPT
iptables -A FORWARD -o eth2 -d $redLAN -p udp --sport 53 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i eth2 -s $redLAN -p tcp --dport 443 -j ACCEPT
iptables -A FORWARD -o eth2 -d $redLAN -p tcp --sport 443 -m state --state ESTABLISHED,RELATED -j ACCEPT

Ahora permitimos a los equipos de la DMZ que puedan conectarse a internet y actualizarse

iptables -A FORWARD -i eth3 -s $redDMZ -p tcp --dport 80 -j ACCEPT


iptables -A FORWARD -o eth3 -d $redDMZ -p tcp --sport 80 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i eth3 -s $redDMZ -p udp --dport 53 -j ACCEPT
iptables -A FORWARD -o eth3 -d $redDMZ -p udp --sport 53 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i eth3 -s $redDMZ -p tcp --dport 443 -j ACCEPT
iptables -A FORWARD -o eth3 -d $redDMZ -p tcp --sport 443 -m state --state ESTABLISHED,RELATED -j ACCEPT

# Permitir la conexin al servidor WWW de la DMZ desde la WAN por HTTP (puerto 80).

iptables -A FORWARD -p tcp dport 80 -i eth1 -o eth3 -j ACCEPT


iptables -A FORWARD -p tcp sport 80 -i eth3 -o eth1 -m state --state ESTABLISHED,RELATED -j ACCEPT

Hacemos un reenvo de puertos para hacer accesible el servidor web desde la red WAN, esto har que cuando un
equipo acceda al firewall por el puerto 80, este ser reenviado al puerto 80 del servidor web

iptables -t nat -A PREROUTING -p tcp --dport 80 -i eth1 -j DNAT --to-destination $Webserver:80


Contenido del script (drop2.sh)
Comprobaciones

Ping desde la LAN hacia internet

Conexin al FW desde la LAN


Actualizacin de la Hora en el Firewall

Conexin desde el Firewall a otros equipos de la LAN y DMZ

Desde el FW hacia el servidor WEB de la DMZ via ssh

Desde el FW hacia el servidor WEB de la LAN va puerto 80

Para este caso, ejecutamos el comando lynx 192.168.8.10 y este es el resultado


Conexin al servidor web de la DMZ desde la LAN

Publicacin desde un equipo en internet al servidor web de la DMZ


Reglas Activas del FW
Escenario con 2 Firewalls Iptables
Poltica por Defecto: Denegar todo

Reglas del FW-1

## FLUSH de reglas

iptables -F
iptables -X
iptables -Z
iptables -t nat F

## Establecemos politica por defecto

iptables -P INPUT DROP


iptables -P OUTPUT DROP
iptables -P FORWARD DROP

# Seguimiento de conexiones
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

# Enmascarar la IP de la interfaz interna del FW-2 (192.168.111.200) y la IP del Webserver (192.168.111.150)


# y salen a internet con la ip de la WAN (192.168.123.100).

iptables -t nat -A POSTROUTING -s 192.168.111.200 -o eth1 -j MASQUERADE


iptables -t nat -A POSTROUTING -s 192.168.111.150 -o eth1 -j MASQUERADE

# Nat con traslacion de puertos para gestion del servidor web via ssh

iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 22022 -j DNAT --to 192.168.111.150:22

# Regla de acceso al servidor Web via ssh desde Internet

iptables -A FORWARD -i eth1 -o eth2 -p tcp --dport 22 -d 192.168.111.150 -j ACCEPT

# Nat para acceder a los recursos del Servidor Samba

iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 137:139 -j DNAT --to 192.168.111.150
iptables -t nat -A PREROUTING -i eth1 -p udp --dport 137:139 -j DNAT --to 192.168.111.150

# Regla de Acceso al servidor Samba, desde una unica ip (192.168.123.251)

iptables -A FORWARD -i eth1 -o eth2 -p tcp --dport 137:139 -s 192.168.123.251 -d 192.168.111.150 -j ACCEPT
iptables -A FORWARD -i eth1 -o eth2 -p udp --dport 137:139 -s 192.168.123.251 -d 192.168.111.150 -j ACCEPT

# Nat de acceso con traslacion de puertos al Servidor Web

iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 8009 -j DNAT --to 192.168.111.150:80

# Regla de Acceso al servidor Web

iptables -A FORWARD -i eth1 -o eth2 -p tcp --dport 80 -d 192.168.111.150 -j ACCEPT


# Habilitar el trfico por el firewall, para el protocolo icmp

iptables -A FORWARD p icmp -j ACCEPT

# Habilitar el trfico por el firewall, para los servicios dns , http, https y ftp desde la zona interna (eth2) hacia internet
(eth1)

iptables -A FORWARD -i eth2 -o eth1 -p tcp --dport 53 -j ACCEPT


iptables -A FORWARD -i eth2 -o eth1 -p udp --dport 53 -j ACCEPT
iptables -A FORWARD -i eth2 -o eth1 -p tcp --dport 80 -j ACCEPT
iptables -A FORWARD -i eth2 -o eth1 -p tcp --dport 21 -j ACCEPT
iptables -A FORWARD -i eth2 -o eth1 -p udp --dport 21 -j ACCEPT
iptables -A FORWARD -i eth2 -o eth1 -p tcp --dport 443 -j ACCEPT

# Habilitamos el trfico desde el firewall, para que este pueda conectarse a internet y actualizarse, puerto 80 (http) y 53
(DNS) , adems de hacer ping hacia cualquier host de internet

iptables A OUTPUT p tcp dport 80 j ACCEPT


iptables A OUTPUT p udp dport 53 j ACCEPT
iptables A OUTPUT p tcp dport 22 j ACCEPT
iptables A OUTPUT p icmp j ACCEPT

# Habilitamos el trfico hacia el firewall via ssh , e ping

iptables A INPUT p tcp dport 22 j ACCEPT


iptables A INPUT p icmp j ACCEPT

Comprobaciones para el FW-1

Para monitorear el enmascaramiento, desde la interfaz eth1 del FW-1 esnifearemos el trfico que va hacia la web de la
UNI (www.uni.edu.pe) originada desde redes atrs del contrafuegos.

Donde 200.37.69.4 es la ip pblica registrada en internet para el host www.uni.edu.pe

Desde el FW-2 generamos trfico de tipo http usando el siguiente comando

[root@fw-2 ~]#w3m www.uni.edu.pe

Cuya salida es esta


El trfico saliente y mostrado por el analizador de protocolos en el FW-1

Vemos que todas las ips de las zonas internas al FW-1 salen a internet con la ip de la interfaz WAN (192.168.123.100) y
esta es la que establece sesin con el servidor destino (amaru.uni.edu.pe)
Gestin va ssh del servidor web vista desde el exterior

Cuya respuesta al servicio es :

Acceso a los recursos del servidor samba, desde el exterior


Acceso al servidor web desde el exterior, desde el puerto 8009
Salida a internet, hacia los puertos http y dns e icmp a travs del FW-1 , desde el FW-2

Salida a internet, hacia los puertos http , ssh , dns e icmp desde el mismo Firewall para cualquier host de internet
Contenido del script (fw1.sh)
Reglas activas del FW-1
Poltica por Defecto: Denegar todo

Reglas del FW-2

## FLUSH de reglas

iptables -F
iptables -X
iptables -Z
iptables -t nat F

## Establecemos poltica por defecto

iptables -P INPUT DROP


iptables -P OUTPUT DROP
iptables -P FORWARD DROP

# Ahora habilitamos que las redes internas salgan enmascaradas con la IP de la interfaz eth1 del FW-1

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


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

# Seguimiento de conexiones

iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT


iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

# Habilitamos el trfico desde el firewall, para que este pueda conectarse a internet y actualizarse, puerto 80 (http) y 53
(DNS), adems de hacer ssh y ping hacia cualquier host de internet

iptables A OUTPUT p tcp dport 80 j ACCEPT


iptables A OUTPUT p udp dport 53 j ACCEPT
iptables A OUTPUT p udp dport 22 j ACCEPT
iptables A OUTPUT p icmp j ACCEPT

# Habilitamos el trfico hacia el firewall, para que los host de la red interna puedan conectar a el via ssh , e ping

iptables A INPUT p tcp dport 22 j ACCEPT


iptables A INPUT p icmp j ACCEPT

# Habilitar el trfico por el firewall, para el protocolo icmp

iptables -A FORWARD p icmp -j ACCEPT

# Habilitar el trfico por el firewall, para los servicios dns, http, desde cualquier red interna hacia la interfaz externa
(eth1)

iptables -A FORWARD -o eth1 -p tcp --dport 53 -j ACCEPT


iptables -A FORWARD -o eth1 -p udp --dport 53 -j ACCEPT
iptables -A FORWARD -o eth1 -p tcp --dport 80 -j ACCEPT

#Permitir el trfico por el firewall del servicio ssh para la red conectada directamente a la interfaz eth3

iptables -A FORWARD -i eth3 -o eth1 -p tcp --dport 22 -j ACCEPT

#Permitir el trfico por el firewall del servicio ftp para la red conectada directamente a la interfaz eth2

iptables -A FORWARD -i eth2 -o eth1 -p tcp --dport 21 -j ACCEPT


iptables -A FORWARD -i eth2 -o eth1 -p udp --dport 21 -j ACCEPT

#Permitir el trfico por el firewall del servicio web para la red conectada directamente a la interfaz eth3

iptables -A FORWARD -i eth3 -o eth1 -p tcp --dport 80 -j ACCEPT

#Permitir el trfico por el firewall del servicio https para el host 192.168.112.100

iptables -A FORWARD -s 192.168.112.100 -o eth1 -p tcp --dport 443 -j ACCEPT

Comprobaciones para el FW-2

Para monitorear el enmascaramiento, desde la interfaz eth1 del FW-2 esnifearemos el trfico que va hacia la web de la
USMP (www.usmp.edu.pe) originada desde redes atrs del contrafuegos.

Donde 200.107.160.199 es la ip pblica registrada en internet para el host www.usmp.edu.pe

Desde el host XP-2 cargamos la pgina web de la USMP


El trfico saliente y mostrado por el analizador de protocolos en el FW-2

Vemos que todas las ips de las zonas internas al FW-2 salen a internet con la ip de la interfaz WAN (192.168.111.200) y
esta es la que establece sesin con el servidor destino (www.usmp.edu.pe)
Trfico desde el mismo firewall (FW-2) hacia los puertos http/dns e icmp

Trfico desde el mismo Firewall (FW-2) hacia el puerto ssh hacia cualquier host de internet

Acceso al Firewall va ssh e icmp desde la LAN


Salida de los clientes de la LAN hacia internet por intermedio del Firewall, a los puertos http y dns
Salida nicamente del cliente XP-2 hacia internet por medio del Firewall, al puerto ssh

Desde el host conectado a la interfaz eth2 del FW-2 realizamos consultas de tipo ftp
Contenido del script (fw2.sh)
Reglas Activas del FW-2
Saltos desde la zona LAN hacia Internet

Saltos a diversos servidores utilizados en el escenario ( 172.16.32.6 y 172.16.32.24)

S-ar putea să vă placă și