Vous êtes sur la page 1sur 32

Documento creado por Gomez

(Juan Camilo Gómez Pineda)

Licencia del documento

32
INDICE

INTRODUCCION

GLOSARIO

I. INSTALACIÓN Y CONFIGURACIÓN DE ISA SERVER (WINDOWS)


REGLAS DE FIREWALL

II. CONFIGURACIÓN DE POLITICAS DE FIREWALL CON “IPTABLES” (LINUX)

III. FIREWALL CLÁSICO CON ROUTER CISCO

CONCLUSIONES

32
INTRODUCCIÓN

A continuación, vamos a explicar qué es un Firewall, para qué sirve, vocabulario importante que es bueno
conocer para enfrentar problemas que aparezcan al momento de montarlo en un Sistema Operativo ya
que por supuesto lo montaremos en LINUX y Windows.

También configuraremos un Firewall en un clásico Router CISCO, algo que necesita de unas pocas
polítcas y reglas llamadas ACL (Access Control List) y le mostraremos lo que deben hacer para filtrar y
poner de un cierto modo un poco más segura la red.

Para LINUX utilizaremos lo más básico propiamente de ese Sistema Operativo: “IPTABLES” y lo cual
definiremos más adelante en este documento.
Para Windows utilizaremos una muy buena herramienta también propia de ese Sistema Operativo,
llamada ISA Server. Esta herramienta tiene una muy bonita interfaz gráfica la cuál es muy entendible
a la hora de configurar todo lo que necesitemos.

En el procedimiento de la configuración y la instalación, también mostraré los errores que me salieron y


su solución (esperando que esto ayude a cualquiera que lea este documento).

Para los dos firewall en LINUX y Windows, tendremos un servidor con las aplicaciones de DNS,
Servidor de Correo y Servidor WEB en la DMZ.

32
GLOSARIO

SEGURIDAD PERIMETRAL: Es todo aquello que integra elementos y sistemas tanto electrónicos como
mecánicos para proteger áreas físicas, detectar intentos de intrusión en partes que requieren una alta
seguridad. Ellos pueden ser videosensores, cables sensoriales, barreras de microondas, infrarrojos, etc.

Los sistemas de seguridad perimetrales se podrían clasificar en “Sistemas Perimetrales Abiertos” los
cuales dependen de las condiciones ambientales para detectar, como video vigilancia, barreras, etc; los
otros son los “Sistemas Perimetrales Cerrados” los cuales no dependen del medio ambiente y controlan
exclusivamente el parámetro de control, como la fibra óptica, cables microfónicos, piezo-sensores, etc.

FIREWALL : Es un complemento de una red que está diseñado para filtrar y bloquear accesos no
deseados, permitiendo al mismo tiempo accesos autorizados. Este puede ser un dispositivo el cuál se
fabrica exclusivamente para realizar esa tarea, como también puede ser un software que se instala en
una máquina para que actúe como tal permitiendo, limitando, cifrando, descifrando el tráfico que pase
por éste según las normas que se configuren o se establezcan en el Firewall.

STATELESS (Filtrado de Paquetes): Son Firewalls que fueron diseñados para filtrar paquetes con base
en las Ips de fuente y destino, puertos de fuente y destino y protocolos. Es de un muy bajo costo pero
su debilidad radica en que son incapaces de reconocer ataques como flooding o DoS ya que manejan
aisladamente cada paquete, por ello no son conscientes de las conexiones que recibe.
Las ACL de algunos routers son un ejemplo de packet filtering, en el que cada paquete se compara
contra una tabla de reglas de IP, puertos y protocolos. Este caso no es muy recomendable, lo más
adecuado es usar un router dedicado únicamente a enrutamiento y un firewall detrás encargado de
realizar el filtrado del tráfico, así el desempeño del router no se afecta y se optimiza el desempeño de
la red.

STATEFULL (Inspección del Estado): Es un tipo de Firewall más utlizado y recomendado a la hora de
proteger un perímetro de una red. Cumple las mismas funciones del STATELESS pero adicionalmente
registra las conexiones en una tabla que revisa con cada entrada o salida de un paquete para determinar
si los permite o los deniega, evitando ataques como flooding, DoS, etc.

APPLIANCE : Son dispositivos integrados de seguridad que integran tanto el hardware de conexión
como un sólido sistema operativo, sobre el cual se colocan diversos bloques de seguridad. La
composición depende de cada fabricante, o de cada modelo, pero entre estas se cuentan algunas
básicas, como el cortafuegos o la protección contra intrusiones y otras más o menos opcionales como
antivirus, anti spam, VPN, etc. Lo necesario para contar con una buena línea de defensa perimetral de la
empresa.

ISA SERVER : Es un gateway integrado de seguridad perimetral que permite proteger una red de datos
de las amenazas de Internet, además de proporcionar a los usuarios un acceso remoto seguro a las
aplicaciones y datos corporativos.

INTRUSOS INFORMATICOS : Los intrusos informáticos, son software cuyo propósito es invadir la
privacidad de tu computadora, posiblemente dejando daños, robando información y alterando el
software del equipo. Entre ellos estan: los spyware, etc.

32
DMZ : (Zona Desmilitarizada) Es una red perimetral local que se ubica entre la red interna de una
organización y una red externa, generalmente Internet. El objetivo de una DMZ es que las conexiones
desde la red interna y la externa a la DMZ estén permitidas, mientras que las conexiones desde la DMZ
sólo se permitan a la red externa, es decir: los equipos locales en la DMZ no pueden conectar con la red
interna. La DMZ se utiliza normalmente para albergar servidores WEB, DNS o de correo.

ACL: Son Listas de Control de Acceso que permiten controlar el flujo del tráfico en equipos de redes,
tales como enrutadores. Su principal objetivo es filtrar tráfico, permitiendo o denegando conexiones
de red de acuerdo a alguna condición.

PAT : (Traducción de Dirección de Puertos) es una característica del estándar NAT, que traduce
conexiones TCP y UDP hechas por un host y un puerto en una red externa a otra dirección y puerto de
la red interna. Permite que una sola dirección IP sea utilizada por varias máquinas de la red interna.

NAT (Traducción de Direcciones de Red) es un mecanismo utilizado por routers IP para intercambiar
paquetes entre dos redes que se asignan mutuamente direcciones incompatibles. Consiste en convertir
en tiempo real las direcciones utilizadas en los paquetes transportados. También es necesario editar los
paquetes para permitir la operación de protocolos que incluyen información de direcciones dentro del
encabezamiento.

IPTABLES : Es un conjunto de comandos que le permiten al usuario enviar mensajes al kernel del
Sistema Operativo (LINUX). El kernel tiene todo el manejo de paquetes TCP/IP metido dentro de él,
todos los paquetes son manejados por el mismo kernel y éste decide qué debe hacer con cada uno de los
paquetes siguiendo políticas o características definidas con los comandos permitiéndonos filtrar,
denegar o permitir conexiones de red.

32
CÓMO ES UNA DMZ

Una gráfica es mucho más entendible que un montón de texto plano. Esto les ayudará un poco en el
proceso.

32
I. INSTALACIÓN Y CONFIGURACIÓN DE ISA SERVER

Requerimientos para la DMZ: 3 interfaces ethernet. 1 para la red externa, 1 para la LAN interna, 1 para
los equipos de la DMZ.

Los host de la red interna estarán configurados así:

El servidor de la DMZ será así:

MUY IMPORTANTE: El Servidor DNS interno, tendrá


configurado como reenviador la dirección IP de un servidor
externo que permita la conexión a Internet (En mi caso esta)

32
1. Abrimos el ejecutable de Isa Server 2006, se puede descargar haciendo click aquí.

2. Elegimos la opción 3: Instalar los servicios de ISA Server y de Almacenamiento de


configuración.

32
3. Por ser primer vez que agregamos un host de seguridad perimetral, le decimos que queremos crear
una nueva empresa del servidor ISA

4. En el pantallazo de direcciones, agregaremos solamente los dos adaptadores de la red interna


(DMZ y LAN)

32
5. Luego daremos siguiente, siguiente y finalizamos la instalación.

REGLAS DE FIREWAL

En esta parte, vamos a establecer las reglas y políticas para permitir y denegar conexiones.
OJO: El ISA server configura por defecto la política de DENEGAR TODO después de finalizar la
instalación, por lo tanto no dará ninguna conexión en la red interna.

Agregaremos la primera configuración que será permitir el DNS local para que resuelva en la LAN
interna y en el mismo firewall.

6. Damos clic derecho en “Directivas de Firewall” al lado izquierdo de la pantalla, le decimos


Nuevo, y Regla de acceso.

7. Colocaremos el nombre el la regla

32
8. Agregaremos el protocolo correspondiente al servicio DNS, Protocolo DNS porsupuesto.

9. En el orígen, osea el equipo servidor, se agregará, dándole clic en agregar, nuevo, equipo y se
agregará con la información de la dirección IP y el nombre con el que queramos identificarlo.

32
10. Agregaremos como destino del tráfico la red Externa.

11. Elegiremos a todos los usuarios en su totalidad.

32
Ahora, agregaremos las reglas para el Servidor de Correo.

12. Damos clic derecho en “Directivas de Firewall” al lado izquierdo de la pantalla, le decimos
Nuevo, y Regla de acceso.

13. Elegiremos los protocolos con los que estamos trabajando en el servidor de Correo. En realidad
son 3: SMTP, POP3 e IMAP, pero sólo estamos trabajando con dos protocolos.

32
14. Elegiremos el orígen del tráfico.

15. Este servicio de correo es únicamente para la red interna (LAN), así que el destino va a ser la
LAN y la comunicación se hará solamente entre la DMZ y la LAN.

32
Ahora, le permitiremos a la Red Interna que navegue por Internet.

16. Agregamos los protocolos con que normalmente navegamos por internet.

32
17. Agregaremos la red interna y el host local (Firewall) como origen del tráfico de datos.

18. Como destino agregaremos la red externa.

32
19. Después de terminar de establecer las reglas del firewall, al intentar navegar a la página web
del servidor local, si da resultado.

20. Pero, al querer salir a la red externa (Internet) no me dejaba, sí me resolvía el DNS local pero
no me resolvía ninguna dirección externa desde los equipos internos.

32
21. Upssss.... se me olvidó algo importantísimo, aplicar los cambios en el ISA Server. (A cualquiera
le pasa).

22. Ahora sí, tenemos conexión a Internet.

32
23. Al verificar el servicio de correo, ¡Funciona!.

32
II. CONFIGURACIÓN DE POLITICAS DE FIREWALL CON “IPTABLES”

1. Para empezar, abriremos un archivo de notas (gedit) y pondremos ordenadamente de tal forma
que se pueda identificar la utilidad de cada comando y grabaremos el archivo con la extensión
.sh (ejecutable).

Copiaré aquí todo el archivo, pero mas adelante explicaré el comando, sus parámetros y su
utilidad.

#!/bin/sh

echo -n Estableciendo las reglas de firewall...

## Limpiar las reglas antiguas (flush)


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

# Establecer las políticas por defecto


iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP

## CONFIGURACIÓN DEL FORWARDING

#Desde la LAN hacia Internet


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

#Desde la LAN hacia la DMZ


iptables -A FORWARD -s 172.17.10.0/16 -d 172.17.20.0/16 -j ACCEPT

#Desde Internet hacia la DMZ


iptables -A FORWARD -p tcp --dport 80 -i eth0 -o eth2 -j ACCEPT
iptables -A FORWARD -p tcp --dport 443 -i eth0 -o eth2 -j ACCEPT

#Firewall de ESTADO (Para agilizar las conexiones. Seguimiento de conexiones)


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

## IMPORTANTISIMO: Obligatoriamente, ya que hacemos una zona desmilitarizada,es


imprescindible
## hacer un enmascaramiento de la red local y la DMZ para que puedan salir al exterior.
iptables -t nat -A POSTROUTING -s 172.17.10.0/16 -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 172.17.20.0/16 -o eth0 -j MASQUERADE

## También activaremos obligatoriamente el BIT de FORWARDING


echo 1 > /proc/sys/net/ipv4/ip_forward

#Filtramos desde Internet hacia la DMZ


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

echo " LISTO. Si desea... verificar con el comando: iptables -L -n"

32
1. #!/bin/sh
Si uno quiere agregar una función (crear un comando propio) descomentará esta línea, sino, por
favor NO TOCAR.

2. ## Limpiar las reglas antiguas (flush)


iptables -F
iptables -X
iptables -Z
iptables -t nat -F
Estos parámetros del comando IPTABLES se utilizan para limpiar las reglas del firewall y dejar
las que vienen en el sistema por defecto, osea, ACCEPT para INPUT, OUTPUT y FORWARD.

INPUT: Entrada del host local


OUTPUT: Salida del host local
FORWARD: Cualquier equipo o red que no sea el mismo firewall

3. # Establecer las políticas por defecto


iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
Nuestro firewall, como primera regla, denegará todas, absolutamente todas las conexiones.
-P (Policy): Política del Firewall

4. #Desde la LAN hacia Internet


iptables -A FORWARD -p tcp --dport 80 -i eth1 -o eth0 -j ACCEPT
iptables -A FORWARD -p tcp --dport 443 -i eth1 -o eth0 -j ACCEPT
iptables -A FORWARD -p udp --dport 53 -i eth1 -o eth0 -j ACCEPT
Aquí permitimos que la LAN interna navegue por internet. Lo sabemos por los puertos que
estamos permitiendo de salida (HTTP, HTTPS y DNS).
Vemos el -i (input) que es de donde viene la conexión, por lo tanto la eth1 conecta el firewall a la
LAN.
Vemos el -o (output) es el destino de la conexión, así que la eth0 es la que se conecta al
Internet.
-p (protocol): Protocolo. Puede ser TCP, UDP, ICMP, etc.

5. #Desde la LAN hacia la DMZ


iptables -A FORWARD -s 172.17.10.0/16 -d 172.17.20.0/16 -j ACCEPT
Permitimos a la red que pertenece a la LAN interna conectarse a la DMZ.
El -s (source) es el orígen de la conexión.
El -d (destiny) es el destino de la conexión.

6. #Desde Internet hacia la DMZ


iptables -A FORWARD -p tcp --dport 80 -i eth0 -o eth2 -j ACCEPT
iptables -A FORWARD -p tcp --dport 443 -i eth0 -o eth2 -j ACCEPT
Aquí estableceremos que solamente queremos que desde la red externa, se conecte al servidor
WEB ubicado en la DMZ.

7. #Firewall de ESTADO (Para agilizar las conexiones. Seguimiento de conexiones)


iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
Este comando, se usa especialmente para establecer las conexiones y seguirlas, parecido a una
caché de conexiones. Así que si se estableció alguna conexión, el firewall la revisa de manera

32
que se agilicen las conexiones y se aumente el desempeño de este firewall.

8. ## hacer un enmascaramiento de la red local y la DMZ para que puedan salir


al exterior.
iptables -t nat -A POSTROUTING -s 172.17.10.0/16 -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 172.17.20.0/16 -o eth0 -j MASQUERADE
Esto es muy importante, es lo que le permite a la red interna navegar a internet, ya que hace un
NAT (traducción de direcciones) para que salgan por la interfaz eth0 (red externa) con una
dirección IP externa. Interesante lo que puede hacer el simple IPTABLES ¿No?

9. ## También activaremos obligatoriamente el BIT de FORWARDING


echo 1 > /proc/sys/net/ipv4/ip_forward
Con este comando, escribiremos en el archivo “ip_forward” un 1, para que si por si acaso, el
firewall se reinicia, no se tenga que volver a ejecutar este comando.

NOTA: Cuando el kernel recibe un paquete de red, primero compara la direccion de destino del
paquete con sus propias direcciones IP. Cuando ip_forward esta apagado (o sea 0) y la dirección
de destino del paquete es distinta a todas las direcciones locales, ese paquete se bota, se
ignora.
En cambio, cuando ip_forward esta encendido (o sea 1) y la dirección del paquete es distinta
a la local, el kernel reenvía ese paquete utilizando su tabla de enrutamiento como guía para
saber a donde debe enviarse y a que salto.
Por lo tanto, se "comparte" la conexión de internet,porque el firewall está enrutando (y sin
modificar cabeceras), como un router común.

10. #Filtramos desde Internet hacia la DMZ


iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to-destination 172.17.20.10:80
Hacemos el mismo NAT sólo que ahora es al contrario, las direcciones que vienen de conexiones
externas, se traducen para acceder solamente al servidor WEB de la DMZ.

Este equipo tendrá 3 interfaces ethernet, 1 para la red externa, 1 para la DMZ y otra para la LAN
interna.

32
Ahora después de saber porqué se establecieron estas reglas de firewall, sólo queda ejecutar el
archivo con privilegios de administrador y con el comando: #sh firewall.sh. Y verificaremos el firewall

32
Verificamos desde la red interna la conexión a internet.

Y verificamos el estado del servicio de correo interno

III. FIREWALL CLÁSICO CON ROUTER CISCO

Este diagrama se realizo con una herramienta llamada packet tracer el cual es un simulador que

32
permite a los usuarios crear topologías de red y además la configuración de los dispositivos activos.

DIAGRAMA

Para realizar la configuración del firewall se deben seguir los siguientes pasos:
1. configuramos la interface 0/0 del Router0, la cual va tener una dirección privada de clase B

2. Configuramos la interface serial 0/0/0 del Router0 el de la LAN, el cual va tener una ip privada
de clase C

32
3. Configuramos la interface serial 0/0/0 el Router1 el de internet, debemos de tener en cuenta
que hay que configurarle el clock rate como se observa

4. configuramos la interface 0/0 del Router1

32
5. Damos clic en el Router0, ingresamos a la interface 0/0 ingresamos el siguiente comando para
decir que esa interface va hacer la inside es decir la de adentro

6. Dentro del Router0 ingresamos a la serial 0/0/0 la cual vamos a decir que es la outside es decir
la de afuera.

32
7. Creamos los grupos de acceso para crear ACL es decir 101 va hacer la de la interface 0/0 la
inside

8. Y luego el grupos de acceso para la serial 0/0/0 es decir la outside

32
9. Realizamos el enrutamiento estático el cual es IP route

10. En este paso es donde creamos las listas de acceso donde se permite el paso de tráfico desde

32
INTERNET hacia la LAN solo para 3 protocolos y 5 puertos como el FTP, HTTP, SMTP. el
enrutador permite la salida de paquetes desde la LAN, para cumplir estas regala se realiza las
siguientes listas.

11. Y por último permitimos que la LAN interna navegue hacia internet. El NAT overload permite no
solamente a uno sino a varios hosts internos que salgan a la red externa

CONCLUSIONES

32
Es muy recomendable antes de implementar cualquier tipo de Firewall, estar muy bien documentado
para poder entender que es lo que se está haciendo.

Por ejemplo, en la parte de IPTABLES... hasta no comprender bien que este software utiliza un
enmascaramiento y una traducción de direcciones (NAT), no pude hacer nada, es más, al principio ni
siquiera sabía que linux tenía una función muy buena de enrutamiento, parecida a la que hace un router
normal.

Con ISA server, aunque sea más entendible por lo gráfico, hay que tener en cuenta las reglas que uno
establecerá, desde qué dirección de red (origen de tráfico) hacia cuál dirección de red (destino de
tráfico), porque aunque no parezca, al principio nos enredamos un poquito.

Recuerden que un firewall que funciona bien tiene establecido en las políticas por defecto “denegar
todo el tráfico”, tanto con IPTABLES como con Isa Server.

WEBGRAFÍA

32
http://es.wikipedia.org
http://www.tooltorials.com
http://www.pello.info

32