Вы находитесь на странице: 1из 23

SENA 2012

Prctica ASA accesslist

Danny Stewart Garzn Rico William Andres Agudelo Villegas SENA 2012

En est ocasin, haremos una prctica interesante, donde utilizaremos un firewall ASA de Cisco, para poder permitir o denegar trfico determinado, presentamos nuestra topologa

Un poquito enredada, pero con el pasar de este tutorial iremos abordando cada uno de los puntos, simplemente, familiaricmonos con lo que es, direccionamiento, lo que es la LAN, DMZ y outside, que sern nuestros pilares para esta prctica, imprimamos un write terminal, de nuestro ASA

ciscoasa(config)# write terminal : Saved : ASA Version 8.0(2) ! hostname ciscoasa enable password 8Ry2YjIyt7RRXU24 encrypted names ! interface Ethernet0/0 no shutdown nameif inside security-level 100 ip address 192.168.1.1 255.255.255.0 ! interface Ethernet0/1 no shutdown nameif dmz security-level 50 ip address 172.16.0.1 255.255.0.0 ! interface Ethernet0/2 no shutdown nameif outside security-level 0 ip address 200.200.200.1 255.255.255.0

He omitido, demasiadas cosas, pero lo que pretendo mostrar, es como estn configuradas las interfaces en nuestro ASA, ya que con el nameif, asignamos la funcin de nuestra interfaz, para luego asignarle un security-level, para ya luego asignar permisos o denegaciones desde cada interfaz hacia cada una de las dems interfaces.

Para que sea un poco ms entendible lo anterior, como cada interfaz tiene un security-level designado, de la forma: Inside: security-level 100 dmz: security-level 50 outside: security-level 0

De esta forma, decimos, que en forma jerrquica, el nmero ms elevado, es quien tiene ms seguridad en frente de las restantes, aunque la dmz, es donde estn nuestros servicios/servidores estos, tambin son vistos algunos en la internet, como la pgina WEB de la organizacin, concluyendo, de forma predeterminada, la inside podra ver a las dems redes, pero no de forma inversa. Teniendo claro lo anterior, podramos empezar a trabajar en nuestra topologa y hacer unos ejercicios que son utilizados comnmente en produccin.

Qu haremos?
1. Permitiremos el acceso WEB al Router que est en la DMZ, desde la inside (LAN) 2. Haremos una publicacin de nuestro Router (que hace funcin de servidor WEB) de la dmz en internet. 3. Haremos un POOL de direcciones pblicas para que nuestros usuarios de nuestra inside (LAN), puedan salir a internet y haremos peticiones a un servidor en la Internet 4. Configuraremos para que desde la outside (Internet) vea solamente nuestro Router que hace funcin de servidor web por solamente HTTPS y que desde la inside (LAN) pueda verlo por HTTP y HTTPS.

Bueno empecemos en este mismo orden, pero cada vez que avancemos, no eliminaremos lo que ya hemos hecho para poder hacer una prctica slida.

1. Permitir acceso WEB al router que est en la DMZ, desde la inside (LAN)

Retomando nuestra topologa, he eliminado la outside de la imagen por el momento, ya que no la tocaremos para nada en este punto, bueno, qu necesitamos?, primero que todo, verificar, que haya un ping exitoso, entre nuestros clientes en la inside (LAN) y la puerta de enlace. Del cliente al ASA

Del ASA al cliente

Como nuestro Servidor WEB es un Router, qu necesitamos?, si, una ruta en el para poder comunicarnos entre redes diferentes.

acme(config)# ip route 0.0.0.0 0.0.0.0 172.16.0.1

Ahora, para verificar conexin desde nuestro cliente en la inside (LAN), hacia nuestro Servidor Web, tenemos que hacer una Access-list, para que nuestro ASA lo permita.

ciscoasa(config)# access-list pingc permit icmp any any echo-reply ciscoasa(config)# access-list pingc permit icmp any any unreachable ciscoasa(config)# access-list pingc deny icmp any any

Y asignamos dicha access-list a la interfaz, donde est conectada la dmz

ciscoasa(config)# interface ethernet 0/1 ciscoasa(config-if)# access-group pingc in interface dmz


Verificamos que nuestro cliente en la inside (LAN) pueda hacer ping a nuestro Servidor Web

Ahora, en nuestro Router, permitiremos la administracin por Web

acme(config)# ip http server acme(config)# ip http secure-server

#Est linea es para habilitar la conexin segura a nuestro router (HTTPS)

Ahora crearemos una access-list para permitir las conexiones desde la inside (LAN) a est, nuestro servidor WEB y asignamos dicha access-list a la interfaz inside

ciscoasa(config)# access-list web permit tcp 192.168.1.0 255.255.255.0 host 172.16.0.2 eq www ciscoasa(config)# access-list web deny ip any any ciscoasa(config)# interface ethernet 0/0 ciscoasa(config-if)# access-group web in interface inside

IMPORTANTE: Luego de permitir algo, denegar todo el trfico restante, para as, no abrir brechas de seguridad.

Ahora una prueba desde nuestro cliente

2. Haremos una publicacin de nuestro Router (que hace funcin de servidor WEB) de la dmz en internet.

Para poder hacer esto, tenemos que hacer un enrutamiento desde nuestro ASA hacia la red que comunica nuestra topologa a internet y asignar una IP pblica a nuestro servidor Web por medio de un NAT

Haremos una ruta por defecto, para que cualquier trfico entrante/saliente hacia/desde la internet sea por una ruta que nosotros definamos, que casi siempre ser una ruta que la ISP nos asigne

ciscoasa(config)# route outside 0 0 200.200.200.2

Tambin tendremos que asignar una ruta por defecto para que el trfico que viene desde internet pueda comunicarse con nuestro ASA, como en nuestra topologa el Router 2, hace de enrutar nuestro trfico desde/para internet, ac es donde tenemos que poner nuestra ruta por defecto

R2(config)#ip route 0.0.0.0 0.0.0.0 200.200.200.1

Ahora, asignaremos una IP pblica que rentaremos para poder ver el servidor Web desde internet usando NAT

ciscoasa(config)# static (dmz,outside) 7.7.7.7 172.16.0.2 netmask 255.255.255.255

Ahora cada peticin que se haga en internet a la direccin 7.7.7.7 responder nuestro servidor Web De igual forma, tambin tenemos que crear una access-list para poder permitir las peticiones http en nuestra red, desde la outside.

ciscoasa(config)# access-list public permit tcp any 7.7.7.7 255.255.255.255 eq www ciscoasa(config)# access-list public deny ip any any ciscoasa(config)# interface ethernet 0/2 ciscoasa(config-if)# access-group public in interface outside

Probemos lo anterior simulando un cliente de internet

3. Ahora haremos un POOL de direcciones pblicas para que nuestros usuarios de nuestra inside (LAN), puedan salir a internet y haremos peticiones a un servidor en la Internet

Para que nuestro usuarios de la inside (LAN), pueda hacer una peticin de nuestro servidor Web local y no tengan que recorrer internet para poder encontrarlo, hacemos un NAT 0 en el ASA y como global, asignaremos un rango de direcciones pblicas para que nuestros clientes puedan salir a internet.

ciscoasa(config)# nat (inside) 0 192.168.1.0 255.255.255.0 ciscoasa(config)# global (outside) 1 8.0.0.1-8.0.0.10


Antes de seguir, tambin tenemos que agregar una access-list para poder permitir que la LAN pueda hacer peticiones web hacia todas las redes, es decir, la internet, pero, recuerdan que ya tenemos una access-list asignada a la interface inside?, lo que haremos es editarla y agregar una nueva lnea.

Vamos a agregar una nueva regla usando la lnea 2, pero no quiere decir que eliminaremos lo que tenemos en ella, agregaremos algo en su puesto y lo que est en la lnea 2, quedara bajo est, de la siguiente forma

ciscoasa(config)# access-list web line 2 permit tcp 192.168.1.0 255.255.255.0 any eq 80 ciscoasa(config)# access-list web line 3 permit tcp 192.168.1.0 255.255.255.0 any eq 443
Por qu dos lineas?, para permitir las conexiones seguras (Puerto 443) y las no seguras (80) Ahora nuestra access-list, quedara as

Ahora configuraremos otro servidor web en la internet

En el Router 2, aprovechando que lo tenemos configurado con una IP publica, habilitaremos la administracin Web del mismo.

R2(config)#ip http server


Haremos una prueba con un cliente en nuestra LAN

Tambin, podremos hacer peticiones a nuestro servidor local como lo habamos dicho, tanto como con la IP pblica como con la privada.

4. Configuraremos para que desde la outside (Internet) vea solamente nuestro Router que hace funcin de servidor web por solamente HTTPS y que desde la inside (LAN) pueda verlo por HTTP y HTTPS.

Primero que todo, vamos a revisar que access-list tenemos y cuales podremos editar para poder hacer esto y poder adaptarlas a nuestras necesidades

Como vemos, en nuestra access-list public no se acomoda a lo que queremos, permitir solo conexiones seguras hacia nuestro servidor local, procedemos a editar dicha lnea para solo permitir conexiones seguras hacia nuestro servidor.

ciscoasa(config)# access-list public line 1 permit tcp any host 7.7.7.7 eq 443 ciscoasa(config)# no access-list public permit tcp any host 7.7.7.7 eq 80

Ahora verificamos si desde la LAN tenemos acceso tanto como seguro y como no seguro a la administracin por WEB de nuestro Router ubicado en la dmz

De este modo, podremos ya jugar con el sinfn de opciones que el mundo de las redes nos ofrece, como permitir que solamente un segmento o un host que pueda administrar un servidor o un dispositivo, como sea por Telnet o SSH, simplemente hay que agregar una regla en nuestra lista de acceso y asignrsela a una interfaz de entrada. Por ejemplo, vamos a permitir que solamente un host de nuestra LAN pueda entrar por SSH y telnet a nuestro Router en la dmz

ciscoasa(config)# access-list web permit tcp host 192.168.1.2 255.255.255.0 host 172.16.0.2 eq 22

Agregamos est regla a nuestra access-list web, ya que est es la que tenemos asignada en nuesta interfaz

Ahora, vamos a dar unos tips, por si tenemos algn problema poder revisar, por medio de comandos en nuestro ASA y as revisar nuestra configuracin en busca de errores. Primero el packet-tracer, su uso es fundamental para el reconocimiento de errores en nuestra red, ya que, este comando, realiza una serie de pasos para verificar si nuestra red est funcionando correctamente, su uso es sencillo

ciscoasa# packet-tracer input inside tcp 192.168.1.2 1234 172.16.0.2 http

input = decimos si es trfico entrante o saliente inside = nombre de la interfaz, como en nuestro caso, inside, outside, dmz tcp = protocolo a hacer el trazado 192.168.1.2 = direccin IP de origen 1234 = puerto origen 172.16.0.2 = direccin IP de destino http = protocolo de destino

Si todo sale como Allow, quiere decir que est funcinando bien, si en caso contrario tenemos resultados no deseados, el problema es de enrutamiento.

Tambin, es muy prctico, cuando hacemos una access-list y queremos verificar si est sirviendo o no, hay algo que se conoce como Match, que es un contador que nos indica cuantas veces esa regla se ha usado en nuestra red, sea denegando o permitiendo, con el comando

ciscoasa# show access-list

Los Match, los podremos ver como hitcnt, ahora, provoquemos un Match de una peticin web.

Como vemos ha incrementado en 1 y eso significa que est funcionando correctamente nuestra regla en el ASA

Otra herramienta es capturar paquetes por medio de una access-list; primero hacemos una access-list y permitimos todo el trfico IP del host o red que queremos analizar

ciscoasa(config)# access-list cap0 permit ip any host 192.168.1.2

Luego empezamos a capturar todo el trfico generado y le asignamos una interfaz de salida, que es la que queremos analizar y determinar el trfico que genera un segmento de red por dicha interfaz

ciscoasa(config)# capture cap0 access-list cap0 interface outside

Despus de generar trfico, damos un show capture ciscoasa(config)# show capture capture cap0 type raw-data access-list cap0 interface outside [Capturing - 3362 bytes]

El trfico que hice fue una peticin http

Otra ayuda tambin, es realizar un GREP para realizar una bsqueda cmoda en nuestras configuraciones, como filtrar solo las interfaces, las access-list, los access-group, nuestro direccionamiento, etc

ciscoasa(config)# show running-config | grep access-list

Вам также может понравиться